bin/update
branchdns-new
changeset 612 51270237a6ff
parent 610 cb4607af8663
child 613 5b33ccac38ad
equal deleted inserted replaced
611:52d058780506 612:51270237a6ff
    38 ## Site settings, used as arguments to scripts
    38 ## Site settings, used as arguments to scripts
    39 # Origin domain to generate reverse records for in --reverse-zone
    39 # Origin domain to generate reverse records for in --reverse-zone
    40 REVERSE_DOMAIN=paivola.fi
    40 REVERSE_DOMAIN=paivola.fi
    41 
    41 
    42 ## Do things
    42 ## Do things
    43 function run_hosts {
    43 function update {
    44     # test
       
    45     log "Testing hosts..."
    44     log "Testing hosts..."
    46     for hosts in $(list_files etc/hosts); do
    45     for hosts in $(list_files etc/hosts); do
    47         log_warn "TODO: check_hosts $hosts"
    46         log_warn "TODO: check_hosts $hosts"
    48     done
    47     done
    49 
    48 
       
    49     ## Hosts
    50     log "Updating forward host zones..."
    50     log "Updating forward host zones..."
    51     for hosts in $(list_files etc/hosts); do
    51     for hosts in $(list_files etc/hosts); do
    52         update_hosts_forward    "var/zones/hosts/$hosts"            "$hosts" \
    52         update_hosts_forward    "var/zones/hosts/$hosts"            "$hosts" \
    53             "etc/hosts/$hosts"
    53             "etc/hosts/$hosts"
    54     done
    54     done
    62     log "Updating reverse host zones..."
    62     log "Updating reverse host zones..."
    63     for zone in $(list_dirs etc/reverse-zones-hosts); do
    63     for zone in $(list_dirs etc/reverse-zones-hosts); do
    64         update_hosts_reverse    "var/zones/hosts/$zone"             "$zone" \
    64         update_hosts_reverse    "var/zones/hosts/$zone"             "$zone" \
    65             etc/reverse-zones-hosts/$zone/*
    65             etc/reverse-zones-hosts/$zone/*
    66     done
    66     done
    67 #    for zone in $(list_files etc/zones); do
       
    68 #        for reverse_hosts in $(zone_includes_grep var/include-cache/$zone etc/zones/$zone reverse-hosts/); do
       
    69 #            prefix="${reverse_hosts%_*}"
       
    70 #            hosts="${reverse_hosts#*_}"
       
    71 #
       
    72 #            update_hosts_reverse    "var/zones/reverse-hosts/${prefix}_${hosts}"    "$prefix" \
       
    73 #                "etc/hosts/$hosts"
       
    74 #        done
       
    75 #    done
       
    76 }
       
    77 
    67 
    78 function run_zones {
    68     ## Zones
    79     log "Copying zone includes..."
    69     log "Copying zone includes..."
    80     for zone in $(list_files etc/zones/includes); do
    70     for zone in $(list_files etc/zones/includes); do
    81         copy                "var/zones/includes/$zone"      "etc/zones/includes/$zone"
    71         copy                "var/zones/includes/$zone"      "etc/zones/includes/$zone"
    82     done
    72     done
    83 
    73 
    84     log "Updating zone serials..."
    74     log "Updating zone serials..."
    85     for zone in $(list_files etc/zones); do
    75     for zone in $(list_files etc/zones); do
    86         update_serial       "var/serials/$zone"             "etc/zones/$zone" \
    76         update_serial       "var/serials/$zone"             "etc/zones/$zone" \
    87             $(zone_includes var/include-cache/$zone etc/zones/$zone var/zones/)
    77             $(zone_includes var/include-cache/$zone etc/zones/$zone var/zones/)
    88 
       
    89     done
    78     done
    90 
    79 
    91     log "Updating zones..."
    80     log "Updating zones..."
    92     for zone in $(list_files etc/zones); do
    81     for zone in $(list_files etc/zones); do
    93         update_zone         "var/zones/$zone"               "etc/zones/$zone"       "var/serials/$zone"
    82         update_zone         "var/zones/$zone"               "etc/zones/$zone"       "var/serials/$zone"
    96     log "Testing zones..."
    85     log "Testing zones..."
    97     for zone in $(list_files etc/zones); do
    86     for zone in $(list_files etc/zones); do
    98         # check_zone          var/zones/$zone     $zone
    87         # check_zone          var/zones/$zone     $zone
    99         log_warn "TODO: check_zone $zone"
    88         log_warn "TODO: check_zone $zone"
   100     done
    89     done
   101 }
       
   102 
    90 
   103 function run_deploy {
    91     ## Deploy
   104     log "Reload zones..."
    92     log "Reload zones..."
   105         reload_zones
    93         reload_zones
   106 
    94 
   107     log "Reload dhcp..."
    95     log "Reload dhcp..."
   108         reload_dhcp
    96         reload_dhcp
   109 
    97 
   110     log "Commit etc..."
    98     log "Commit..."
   111         commit_data     etc
    99         commit      etc
   112 }
   100 }
   113 
   101 
   114 ## Main entry point
   102 ## Main entry point
   115 function main {
   103 function main {
   116     parse_args "$@"
   104     parse_args "$@"
   129     for dir in var/zones/includes var/zones/hosts var/zones/reverse-hosts; do
   117     for dir in var/zones/includes var/zones/hosts var/zones/reverse-hosts; do
   130         ensure_dir  $dir
   118         ensure_dir  $dir
   131     done
   119     done
   132 
   120 
   133     ## Go
   121     ## Go
   134     run_hosts
   122     update
   135     run_zones
       
   136     run_deploy
       
   137 }
   123 }
   138 
   124 
   139 main "$@"
   125 main "$@"