# HG changeset patch # User Tero Marttila # Date 1387472153 -7200 # Node ID acb2fb235eb2c47d4c27dce30b03adcd6d88029a # Parent 5b33ccac38adcd88587f39ca568e030f62d71c82 use new var/dhcp/hosts layout with update_dhcp_conf diff -r 5b33ccac38ad -r acb2fb235eb2 bin/update --- a/bin/update Thu Dec 19 03:08:19 2013 +0200 +++ b/bin/update Thu Dec 19 18:55:53 2013 +0200 @@ -55,7 +55,7 @@ log "Updating DHCP hosts..." for hosts in $(list_files etc/hosts); do - update_hosts_dhcp "var/dhcp/$hosts.conf" \ + update_hosts_dhcp "var/dhcp/hosts/$hosts.conf" \ "etc/hosts/$hosts" done @@ -73,14 +73,19 @@ log "Updating zone serials..." for zone in $(list_files etc/zones); do - update_serial "var/serials/$zone" "etc/zones/$zone" \ - $(zone_includes var/include-cache/$zone etc/zones/$zone var/zones/) + update_serial "var/serials/$zone" \ + "etc/zones/$zone" $(zone_includes var/include-cache/$zone etc/zones/$zone var/zones/) done log "Updating zones..." for zone in $(list_files etc/zones); do update_zone "var/zones/$zone" "etc/zones/$zone" "var/serials/$zone" done + + log "Updating DHCP confs..." + for conf in $(list_files etc/dhcp); do + update_dhcp_conf "var/dhcp/$conf" "etc/dhcp/$conf" + done ## Check log "Testing zones..." @@ -88,7 +93,7 @@ check_zone "var/zones/$zone" $zone done - log "Testing dhcp hosts..." + log "Testing DHCP confs..." for conf in var/dhcp/*.conf; do check_dhcp $conf done @@ -114,11 +119,13 @@ done ## Output dirs - for dir in var var/dhcp var/zones var/serials var/include-cache; do + ensure_dir var + for dir in var/dhcp var/zones var/serials var/include-cache; do ensure_dir $dir done - - # sub-$ZONES + for dir in var/dhcp/hosts; do + ensure_dir $dir + done for dir in var/zones/includes var/zones/hosts var/zones/reverse-hosts; do ensure_dir $dir done diff -r 5b33ccac38ad -r acb2fb235eb2 lib/update.operations --- a/lib/update.operations Thu Dec 19 03:08:19 2013 +0200 +++ b/lib/update.operations Thu Dec 19 18:55:53 2013 +0200 @@ -185,6 +185,21 @@ fi } +## Generate dhcp confs from source using pvl.dhcp-conf: +function update_dhcp_conf { + local out="$1" + local src="$2" + + if check_update "$out" "$src"; then + log_update "Generating $out <- $src..." + + do_update "$out" $OPT/bin/pvl.dhcp-conf "$src" \ + --include-path=$SRV/var/dhcp + else + log_skip "Generating $out <- $src: not changed" + fi +} + ## Test hosts zone for validity using pvl.hosts-check: # # check_hosts .../hosts