aboutsummaryrefslogtreecommitdiffstats
path: root/tools/migration
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2017-02-04 01:08:27 +0100
committerKim Alvefur <zash@zash.se>2017-02-04 01:08:27 +0100
commit314ce335b9a3f23224237f829c9b166eeb345187 (patch)
tree300927642fc0f857d9ea96ab4b1e2bc2d4c20950 /tools/migration
parentc534c1414eec471209c54a917152593da3198c90 (diff)
parent0f6de0b8f9c41090298ca0b3f998832971ff51b2 (diff)
downloadprosody-314ce335b9a3f23224237f829c9b166eeb345187.tar.gz
prosody-314ce335b9a3f23224237f829c9b166eeb345187.zip
Merge 0.10->trunk
Diffstat (limited to 'tools/migration')
-rw-r--r--tools/migration/migrator/jabberd14.lua7
-rw-r--r--tools/migration/migrator/mtools.lua10
-rw-r--r--tools/migration/migrator/prosody_files.lua10
-rw-r--r--tools/migration/migrator/prosody_sql.lua10
-rw-r--r--tools/migration/prosody-migrator.lua11
5 files changed, 23 insertions, 25 deletions
diff --git a/tools/migration/migrator/jabberd14.lua b/tools/migration/migrator/jabberd14.lua
index 2f0b0b78..a4eef3f7 100644
--- a/tools/migration/migrator/jabberd14.lua
+++ b/tools/migration/migrator/jabberd14.lua
@@ -9,7 +9,6 @@ local ipairs = ipairs;
local coroutine = coroutine;
local print = print;
-module "jabberd14"
local function is_dir(path) return lfs.attributes(path, "mode") == "directory"; end
local function is_file(path) return lfs.attributes(path, "mode") == "file"; end
@@ -128,7 +127,7 @@ local function loop_over_hosts(path, cb)
end
end
-function reader(input)
+local function reader(input)
local path = clean_path(assert(input.path, "no input.path specified"));
assert(is_dir(path), "input.path is not a directory");
@@ -139,4 +138,6 @@ function reader(input)
end
end
-return _M;
+return {
+ reader = reader;
+};
diff --git a/tools/migration/migrator/mtools.lua b/tools/migration/migrator/mtools.lua
index e7b774bb..cfbfcce8 100644
--- a/tools/migration/migrator/mtools.lua
+++ b/tools/migration/migrator/mtools.lua
@@ -4,9 +4,8 @@ local print = print;
local t_insert = table.insert;
local t_sort = table.sort;
-module "mtools"
-function sorted(params)
+local function sorted(params)
local reader = params.reader; -- iterator to get items from
local sorter = params.sorter; -- sorting function
@@ -28,7 +27,7 @@ function sorted(params)
end
-function merged(reader, merger)
+local function merged(reader, merger)
local item1 = reader();
local merged = { item1 };
@@ -53,4 +52,7 @@ function merged(reader, merger)
end
-return _M;
+return {
+ sorted = sorted;
+ merged = merged;
+}
diff --git a/tools/migration/migrator/prosody_files.lua b/tools/migration/migrator/prosody_files.lua
index c9367d9c..4de09273 100644
--- a/tools/migration/migrator/prosody_files.lua
+++ b/tools/migration/migrator/prosody_files.lua
@@ -18,7 +18,6 @@ local error = error;
prosody = {};
local dm = require "util.datamanager"
-module "prosody_files"
local function is_dir(path) return lfs.attributes(path, "mode") == "directory"; end
local function is_file(path) return lfs.attributes(path, "mode") == "file"; end
@@ -88,7 +87,7 @@ local function decode_user(item)
return userdata;
end
-function reader(input)
+local function reader(input)
local path = clean_path(assert(input.path, "no input.path specified"));
assert(is_dir(path), "input.path is not a directory");
local iter = coroutine.wrap(function()handle_root_dir(path);end);
@@ -127,7 +126,7 @@ function reader(input)
end
end
-function writer(output)
+local function writer(output)
local path = clean_path(assert(output.path, "no output.path specified"));
assert(is_dir(path), "output.path is not a directory");
return function(item)
@@ -139,4 +138,7 @@ function writer(output)
end
end
-return _M;
+return {
+ reader = reader;
+ writer = writer;
+}
diff --git a/tools/migration/migrator/prosody_sql.lua b/tools/migration/migrator/prosody_sql.lua
index 1872a85d..b8876af0 100644
--- a/tools/migration/migrator/prosody_sql.lua
+++ b/tools/migration/migrator/prosody_sql.lua
@@ -15,7 +15,6 @@ if not have_DBI then
error("LuaDBI (required for SQL support) was not found, please see https://prosody.im/doc/depends#luadbi", 0);
end
-module "prosody_sql"
local function create_table(connection, params)
local create_sql = "CREATE TABLE `prosody` (`host` TEXT, `user` TEXT, `store` TEXT, `key` TEXT, `type` TEXT, `value` TEXT);";
@@ -110,7 +109,7 @@ local function decode_user(item)
return userdata;
end
-function reader(input)
+local function reader(input)
local dbh = assert(DBI.Connect(
assert(input.driver, "no input.driver specified"),
assert(input.database, "no input.database specified"),
@@ -154,7 +153,7 @@ function reader(input)
end;
end
-function writer(output, iter)
+local function writer(output, iter)
local dbh = assert(DBI.Connect(
assert(output.driver, "no output.driver specified"),
assert(output.database, "no output.database specified"),
@@ -197,4 +196,7 @@ function writer(output, iter)
end
-return _M;
+return {
+ reader = reader;
+ writer = writer;
+}
diff --git a/tools/migration/prosody-migrator.lua b/tools/migration/prosody-migrator.lua
index b86e9892..8560ddb5 100644
--- a/tools/migration/prosody-migrator.lua
+++ b/tools/migration/prosody-migrator.lua
@@ -40,22 +40,13 @@ end
local envloadfile = require "util.envload".envloadfile;
--- Load config file
-local function loadfilein(file, env)
- if loadin then
- return loadin(env, io.open(file):read("*a"));
- else
- return envloadfile(file, env);
- end
-end
-
local config_file = options.config or default_config;
local from_store = arg[1] or "input";
local to_store = arg[2] or "output";
config = {};
local config_env = setmetatable({}, { __index = function(t, k) return function(tbl) config[k] = tbl; end; end });
-local config_chunk, err = loadfilein(config_file, config_env);
+local config_chunk, err = envloadfile(config_file, config_env);
if not config_chunk then
print("There was an error loading the config file, check the file exists");
print("and that the syntax is correct:");