build: add site check for obsolete settings (#1702)
This commit is contained in:
parent
e81d1a390f
commit
fe521db441
@ -7,4 +7,5 @@ need_table({'autoupdater', 'branches'}, function(branch)
|
|||||||
need_string_array_match(extend(branch, {'mirrors'}), '^http://')
|
need_string_array_match(extend(branch, {'mirrors'}), '^http://')
|
||||||
need_number(in_site(extend(branch, {'good_signatures'})))
|
need_number(in_site(extend(branch, {'good_signatures'})))
|
||||||
need_string_array_match(in_site(extend(branch, {'pubkeys'})), '^%x+$')
|
need_string_array_match(in_site(extend(branch, {'pubkeys'})), '^%x+$')
|
||||||
|
obsolete(in_site(extend(branch, {'probability'})), 'Use GLUON_PRIORITY in site.mk instead.')
|
||||||
end)
|
end)
|
||||||
|
@ -15,6 +15,7 @@ end
|
|||||||
need_string_match(in_domain({'domain_seed'}), '^' .. ('%x'):rep(64) .. '$')
|
need_string_match(in_domain({'domain_seed'}), '^' .. ('%x'):rep(64) .. '$')
|
||||||
|
|
||||||
need_string({'opkg', 'openwrt'}, false)
|
need_string({'opkg', 'openwrt'}, false)
|
||||||
|
obsolete({'opkg', 'lede'}, 'Use opkg.openwrt instead.')
|
||||||
need_table({'opkg', 'extra'}, function(extra_repo)
|
need_table({'opkg', 'extra'}, function(extra_repo)
|
||||||
need_alphanumeric_key(extra_repo)
|
need_alphanumeric_key(extra_repo)
|
||||||
need_string(extra_repo)
|
need_string(extra_repo)
|
||||||
|
@ -4,7 +4,6 @@ local function config_error(src, ...)
|
|||||||
error(src .. ' error: ' .. string.format(...), 0)
|
error(src .. ' error: ' .. string.format(...), 0)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
local has_domains = (os.execute('ls -d "$IPKG_INSTROOT"/lib/gluon/domains/ >/dev/null 2>&1') == 0)
|
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'
|
return 'domains/' .. domain_code .. '.conf'
|
||||||
end
|
end
|
||||||
|
|
||||||
local function var_error(path, val, msg)
|
local function conf_src(path)
|
||||||
if type(val) == 'string' then
|
|
||||||
val = string.format('%q', val)
|
|
||||||
end
|
|
||||||
|
|
||||||
local src
|
local src
|
||||||
|
|
||||||
if has_domains then
|
if has_domains then
|
||||||
@ -108,15 +103,22 @@ local function var_error(path, val, msg)
|
|||||||
src = site_src()
|
src = site_src()
|
||||||
end
|
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'
|
local found = 'unset'
|
||||||
if val ~= nil then
|
if val ~= nil then
|
||||||
found = string.format('%s (a %s value)', tostring(val), type(val))
|
found = string.format('%s (a %s value)', tostring(val), type(val))
|
||||||
end
|
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
|
end
|
||||||
|
|
||||||
|
|
||||||
function in_site(path)
|
function in_site(path)
|
||||||
if has_domains and loadpath(nil, domain, unpack(path)) ~= nil then
|
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))
|
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, nil, 'be a valid domain name')
|
||||||
end
|
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())
|
local check = assert(loadfile())
|
||||||
|
|
||||||
site = load_json(os.getenv('IPKG_INSTROOT') .. '/lib/gluon/site.json')
|
site = load_json(os.getenv('IPKG_INSTROOT') .. '/lib/gluon/site.json')
|
||||||
|
Loading…
Reference in New Issue
Block a user