--- a/bin/update Mon Mar 19 12:48:00 2012 +0200
+++ b/bin/update Mon Mar 19 13:11:30 2012 +0200
@@ -419,6 +419,24 @@
fi
}
+function link_zone_view {
+ local zone=$1
+ local view=$2
+ local base=$3
+
+ local lnk=$ZONES/$view/$zone.zone
+ local tgt=$ZONES/$view/$base.zone
+
+ if [ -e $ROOT/$lnk ] && [ $(readlink $ROOT/$lnk) == $ROOT/$tgt ]; then
+ log_info "Linking $lnk -> $tgt: not changed"
+
+ else
+ log_info "Linking $lnk -> $tgt..."
+
+ cmd ln -sf $ROOT/$tgt $ROOT/$lnk
+ fi
+}
+
function update_hosts {
local dst=$1; shift
local src=$1; shift
@@ -558,6 +576,19 @@
check_zone paivola.fi $ZONES/internal/paivola.zone
check_zone 235.197.194.in-addr.arpa $ZONES/paivola-reverse.zone
+ # extra zones...
+ local views=(internal external)
+ local base_zone=paivola
+ local link_zones=(paivola.fi paivola.net paivola.org paivola.info paivola.mobi xn--pivl-load8j.fi)
+
+ log "Linking extra zones..."
+ for view in "${views[@]}"; do
+ for zone in "${link_zones[@]}"; do
+ link_zone_view $zone $view $base_zone
+ check_zone $zone $ZONES/$view/$zone.zone
+ done
+ done
+
## deploy
if [ $DEPLOY_SKIP ]; then
log "Deploy zones: skipped"