From c7bce46f22ff9c41e3598d42400368d3c733316c Mon Sep 17 00:00:00 2001 From: Kaarle Ritvanen Date: Wed, 11 Mar 2015 16:42:08 +0200 Subject: DNS zone module: origin and TTL fields --- aconf/modules/dns-zone.lua | 28 ++++++++++++++++------------ 1 file 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='' } ) -- cgit v1.2.3