|
Last change
on this file since 8622 was 8615, checked in by rick, 15 years ago |
|
Bezempje door alle files. Rommel weg. Tooljes op de juiste locatie.
|
-
Property svn:executable
set to
*
|
|
File size:
978 bytes
|
| Line | |
|---|
| 1 | #!/bin/sh
|
|---|
| 2 | #
|
|---|
| 3 | # Deploy fresh/changed WL autogenerated DNS zones
|
|---|
| 4 | #
|
|---|
| 5 | CONFIGROOT='/usr/home/rvdzwet/genesis/nodes'
|
|---|
| 6 | DEPLOYROOT='/etc/namedb/master'
|
|---|
| 7 |
|
|---|
| 8 | TFILE=`mktemp /tmp/$(basename $0).XXXXX`
|
|---|
| 9 | trap "rm $TFILE; exit 1" 1 2 3 15
|
|---|
| 10 |
|
|---|
| 11 | # Generate new DNS and only complain/die on errors
|
|---|
| 12 | (
|
|---|
| 13 | svn up $CONFIGROOT $CONFIGROOT/../dns || exit 1
|
|---|
| 14 | $CONFIGROOT/genesis-to-yaml.pl $CONFIGROOT/*/wleiden.conf || exit 1
|
|---|
| 15 | $CONFIGROOT/gformat.py dns || exit 1
|
|---|
| 16 | ) 2>&1 > $TFILE || { cat $TFILE; exit 1; }
|
|---|
| 17 |
|
|---|
| 18 |
|
|---|
| 19 | UPDATE_ZONES=""
|
|---|
| 20 | # Check all zone files for updates
|
|---|
| 21 | for NEW in $CONFIGROOT/dns/*; do
|
|---|
| 22 | ZONE=`basename $NEW | cut -c 4-`
|
|---|
| 23 | OLD=$DEPLOYROOT/`basename $NEW`
|
|---|
| 24 |
|
|---|
| 25 | # Contains new data?
|
|---|
| 26 | diff -I 'SOA' $OLD $NEW
|
|---|
| 27 | if [ $? -eq 0 ]; then
|
|---|
| 28 | continue
|
|---|
| 29 | fi
|
|---|
| 30 |
|
|---|
| 31 | # Syntax valid?
|
|---|
| 32 | named-checkzone $ZONE $NEW
|
|---|
| 33 | if [ $? -ne 0 ] ; then
|
|---|
| 34 | continue
|
|---|
| 35 | fi
|
|---|
| 36 |
|
|---|
| 37 | # Deploy
|
|---|
| 38 | cp $NEW $OLD
|
|---|
| 39 | UPDATE_ZONES="$UPDATE_ZONES $ZONE"
|
|---|
| 40 | done
|
|---|
| 41 |
|
|---|
| 42 | # Make sure to reload if updates are executed
|
|---|
| 43 | if [ -n "$UPDATE_ZONES" ]; then
|
|---|
| 44 | rndc reload
|
|---|
| 45 | fi
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.