From 31bd7bd491738d8653a9e181594969a3665aca22 Mon Sep 17 00:00:00 2001 From: Kaarle Ritvanen Date: Tue, 10 Mar 2015 21:11:19 +0200 Subject: persistence: move augeas back-end directives out of addresses --- aconf/modules/network.lua | 41 ++++++++++++++++++++++++++--------------- 1 file changed, 26 insertions(+), 15 deletions(-) (limited to 'aconf/modules/network.lua') diff --git a/aconf/modules/network.lua b/aconf/modules/network.lua index 17e0127..05d8576 100644 --- a/aconf/modules/network.lua +++ b/aconf/modules/network.lua @@ -13,7 +13,7 @@ Host.address = M.net.IPAddress{required=true, addr='ipaddr'} Host.canonical = M.String{required=true, ui_name='Canonical name'} Host.alias = M.Set{ type=M.String, - addr='alias/#', + be_mode=M.addr.special.enum_keys, ui_name='Aliases', ui_member='Alias', detail=false @@ -21,10 +21,16 @@ Host.alias = M.Set{ local Resolv = M.new() Resolv.servers = M.List{ - type=M.net.IPAddress, addr='nameserver/#', widget='inline' + type=M.net.IPAddress, + addr='nameserver', + be_mode=M.addr.special.enum_keys, + widget='inline' } Resolv.search_domains = M.List{ - type=M.String, addr='search/domain/#', widget='inline' + type=M.String, + addr='search/domain', + be_mode=M.addr.special.enum_keys, + widget='inline' } @@ -177,13 +183,13 @@ Interface.slaves = M.Set{ condition={type='bond'}, type=M.Reference{scope='../..', filter={status='detached'}}, required=true, - addr='@family/link/@method/none/bond-slaves' + addr='link/none/bond-slaves' } Interface.ports = M.Set{ condition={type='bridge'}, type=M.Reference{scope='../..', filter={status='detached'}}, required=true, - addr='@family/link/@method/none/bridge-ports' + addr='link/none/bridge-ports' } -- TODO do not allow VLAN creation for non-existent interfaces Interface.trunk = M.Reference{ @@ -195,7 +201,7 @@ Interface.trunk = M.Reference{ required=true, scope='..', filter={status={'detached', 'configured'}}, - addr='@family/link/@method/none/vlan-raw-device' + addr='link/none/vlan-raw-device' } -- TODO ensure that (trunk, tag) is unique Interface.vlan_tag = M.Integer{ @@ -204,7 +210,7 @@ Interface.vlan_tag = M.Integer{ required=true, min=0, max=4095, - addr='@family/link/@method/none/vlan-id', + addr='link/none/vlan-id', ui_name='VLAN tag' } @@ -212,7 +218,7 @@ Interface.ipv4 = M.Model{ model=IPv4, condition={status={'detached', 'configured'}}, create=true, - addr='@family/inet', + addr='inet', ui_name='IPv4 configuration', widget='inline' } @@ -220,7 +226,7 @@ Interface.ipv6 = M.Model{ model=IPv6, condition={status={'detached', 'configured'}}, create=true, - addr='@family/inet6', + addr='inet6', ui_name='IPv6 configuration', widget='inline' } @@ -247,15 +253,20 @@ Net.resolver = M.Model{ } Net.enabled_ifaces = M.Set{ - type=M.Reference{ - scope='../interfaces', - addr=iface_aug_addr..'/auto/#/*/*', - on_delete='set-null' - }, + type=M.Reference{scope='../interfaces', addr='*/*', on_delete='set-null'}, + addr=iface_aug_addr..'/auto', + be_mode=M.addr.special.enum_keys, visible=false } Net.interfaces = M.Collection{ - type=Interface, addr=iface_aug_addr..'/iface/@', widget='inline' + type=Interface, + addr=iface_aug_addr..'/iface', + be_mode={ + ['.']=M.addr.special.value_equals(), + ['*']=M.addr.special.value_equals('family'), + ['*/link']=M.addr.special.value_equals('method') + }, + widget='inline' } M.register('net', Net, {ui_name='Network'}) -- cgit v1.2.3