From eff3ab4c3bf4f0b2076be753ff4a2ee6a368d10d Mon Sep 17 00:00:00 2001 From: bobcanthelpyou Date: Sat, 13 Apr 2019 13:08:38 +0200 Subject: [PATCH] build: add site check for obsolete settings gluon-autoupdater: add site check for obsolete setting probability gluon-core: add site check for obsolete setting lede --- package/gluon-autoupdater/check_site.lua | 1 + package/gluon-core/check_site.lua | 1 + scripts/check_site.lua | 32 ++++++++++++++++++------ 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/package/gluon-autoupdater/check_site.lua b/package/gluon-autoupdater/check_site.lua index de9beef01b..e247cc5db9 100644 --- a/package/gluon-autoupdater/check_site.lua +++ b/package/gluon-autoupdater/check_site.lua @@ -7,4 +7,5 @@ need_table({'autoupdater', 'branches'}, function(branch) need_string_array_match(extend(branch, {'mirrors'}), '^http://') need_number(in_site(extend(branch, {'good_signatures'}))) need_string_array_match(in_site(extend(branch, {'pubkeys'})), '^%x+$') + obsolete(in_site(extend(branch, {'probability'})), 'Use GLUON_PRIORITY in site.mk instead.') end) diff --git a/package/gluon-core/check_site.lua b/package/gluon-core/check_site.lua index ede64cd02a..975ed6001c 100644 --- a/package/gluon-core/check_site.lua +++ b/package/gluon-core/check_site.lua @@ -15,6 +15,7 @@ end need_string_match(in_domain({'domain_seed'}), '^' .. ('%x'):rep(64) .. '$') need_string({'opkg', 'openwrt'}, false) +obsolete({'opkg', 'lede'}, 'Use opkg.openwrt instead.') need_table({'opkg', 'extra'}, function(extra_repo) need_alphanumeric_key(extra_repo) need_string(extra_repo) diff --git a/scripts/check_site.lua b/scripts/check_site.lua index 6db3b1c0c7..9d65bb697e 100644 --- a/scripts/check_site.lua +++ b/scripts/check_site.lua @@ -4,7 +4,6 @@ local function config_error(src, ...) error(src .. ' error: ' .. string.format(...), 0) end - local has_domains = (os.execute('ls -d "$IPKG_INSTROOT"/lib/gluon/domains/ >/dev/null 2>&1') == 0) @@ -89,11 +88,7 @@ local function domain_src() return 'domains/' .. domain_code .. '.conf' end -local function var_error(path, val, msg) - if type(val) == 'string' then - val = string.format('%q', val) - end - +local function conf_src(path) local src if has_domains then @@ -108,15 +103,22 @@ local function var_error(path, val, msg) src = site_src() end + return src +end + +local function var_error(path, val, msg) + if type(val) == 'string' then + val = string.format('%q', val) + end + local found = 'unset' if val ~= nil then found = string.format('%s (a %s value)', tostring(val), type(val)) end - config_error(src, 'expected %s to %s, but it is %s', path_to_string(path), msg, found) + config_error(conf_src(path), 'expected %s to %s, but it is %s', path_to_string(path), msg, found) end - function in_site(path) if has_domains and loadpath(nil, domain, unpack(path)) ~= nil then config_error(domain_src(), '%s is allowed in site configuration only', path_to_string(path)) @@ -315,6 +317,20 @@ function need_domain_name(path) end, nil, 'be a valid domain name') end +function obsolete(path, msg) + local val = loadvar(path) + if val == nil then + return nil + end + + if not msg then + msg = 'Check the release notes and documentation for details.' + + end + + config_error(conf_src(path), '%s is obsolete. %s', path_to_string(path), msg) +end + local check = assert(loadfile()) site = load_json(os.getenv('IPKG_INSTROOT') .. '/lib/gluon/site.json')