ffhh-packages/gluon-upgrade-static-interface-ffhh/files/lib/gluon/upgrade/118-interface-static-IP
Bjoern Dobe eb99353a88 Introduce new package gluon-upgrade-static-interface-ffhh
Signed-off-by: Bjoern Dobe <bjoern@dobecom.de>
2025-05-25 14:42:11 +02:00

34 lines
759 B
Lua
Executable file

#!/usr/bin/lua
local uci=require('simple-uci').cursor()
local function has_static_role(section)
for _, role in ipairs(section.role or {}) do
if role == "static" then
return true
end
end
return false
end
uci:foreach('gluon', 'interface', function(s)
if has_static_role(s) then
-- io.stderr:write("+++ ")
-- io.stderr:write(s[".name"])
-- io.stderr:write("\n")
local config_section = { proto = "static" }
local mapping = { ipaddr = "ipaddr", ifname = "name", netmask = "netmask" }
for key, lookup in pairs(mapping) do
local value = uci:get('gluon', s[".name"], lookup)
if value then
config_section[key] = value
end
end
uci:section('network', 'interface', s[".name"], config_section)
end
end)
uci:save('network')