Browse Source

[Minor] Load redis scripts from the prefix to simplify calls

tags/3.6
Vsevolod Stakhov 1 year ago
parent
commit
c3646183ac
No account linked to committer's email address
2 changed files with 14 additions and 1 deletions
  1. 7
    1
      lualib/lua_redis.lua
  2. 7
    0
      lualib/lua_util.lua

+ 7
- 1
lualib/lua_redis.lua View File

@@ -1286,9 +1286,15 @@ exports.add_redis_script = add_redis_script
-- @param redis_params The Redis parameters to use for this script.
-- @return The ID of the newly added Redis script.
--
local function load_redis_script_from_file(filename, redis_params)
local function load_redis_script_from_file(filename, redis_params, dir)
local lua_util = require "lua_util"
local rspamd_logger = require "rspamd_logger"

if not dir then dir = rspamd_paths.LUALIBDIR end
if filename:sub(1, 1) ~= package.config:sub(1,1) then
-- Relative path
filename = lua_util.join_path(dir, filename)
end
-- Read file contents
local file = io.open(filename, "r")
if not file then

+ 7
- 0
lualib/lua_util.lua View File

@@ -1574,6 +1574,13 @@ local function join_path(...)
end
exports.join_path = join_path

-- Short unit test for sanity
if path_sep == '/' then
assert(join_path('/path', 'to', 'file') == '/path/to/file')
else
assert(join_path('C:', 'path', 'to', 'file') == 'C:\\path\\to\\file')
end

-- Defines symbols priorities for common usage in prefilters/postfilters
exports.symbols_priorities = {
top = 10, -- Symbols must be executed first (or last), such as settings

Loading…
Cancel
Save