summaryrefslogtreecommitdiffstats
path: root/aconf/modules
diff options
context:
space:
mode:
authorKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2015-03-11 16:42:08 +0200
committerKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2015-03-12 19:06:57 +0200
commitc7bce46f22ff9c41e3598d42400368d3c733316c (patch)
tree6c98692a29b09fd1b3f6e33d73fa47e3c71ce455 /aconf/modules
parentd025a4675314047a7be82e5e0e9492ba62e01870 (diff)
downloadaconf-c7bce46f22ff9c41e3598d42400368d3c733316c.tar.bz2
aconf-c7bce46f22ff9c41e3598d42400368d3c733316c.tar.xz
DNS zone module: origin and TTL fields
Diffstat (limited to 'aconf/modules')
-rw-r--r--aconf/modules/dns-zone.lua28
1 files changed, 16 insertions, 12 deletions
diff --git a/aconf/modules/dns-zone.lua b/aconf/modules/dns-zone.lua
index 372260c..ea909fb 100644
--- a/aconf/modules/dns-zone.lua
+++ b/aconf/modules/dns-zone.lua
@@ -63,21 +63,25 @@ Record.port = M.net.Port{condition={type='SRV'}, required=true}
Record.target = RecordString{condition={type='SRV'}, required=true}
+local Zone = M.new()
+Zone.origin = M.String{addr='$ORIGIN'}
+Zone.ttl = M.String{addr='$TTL', ui_name='Time-to-live'}
+Zone.records = M.Collection{
+ key=M.String{pattern='[^$].*'},
+ type=M.List{
+ type=M.Model{model=Record, addr='*/*'},
+ be_mode='enumerate',
+ ui_member='Record'
+ },
+ addr='.',
+ ui_member=''
+}
+
+
M.register(
'dns-zone',
M.Collection{
- type=M.Collection{
- key=M.String{pattern='[^$].*'},
- type=M.List{
- type=M.Model{model=Record, addr='*/*'},
- be_mode='enumerate',
- ui_member='Record'
- },
- ui_member=''
- },
- addr='/augeas/var/bind/pri',
- ui_name='DNS zones',
- ui_member=''
+ type=Zone, addr='/augeas/var/bind/pri', ui_name='DNS zones', ui_member=''
}
)