Reload external subdomain on change

Signed-off-by: Blackyfff <blackyfff@noreply.git.freifunk-franken.de>
This commit is contained in:
Blackyfff 2021-02-08 21:23:15 +01:00
parent 298c353968
commit 092e2f9994
2 changed files with 12 additions and 5 deletions

View File

@ -77,7 +77,7 @@ if [ $ServeMasterZone -ne 0 ]; then
done
done
ExternFile="$ZoneFilesFolder""db.""$ExternalView"".""$CommunityDomain"
./update-extzone.sh "$MasterFile" "$ExternFile" "$CommunityDomain" "$ExternalView"
./update-extzone.sh "$MasterFile" "$ExternFile" "$CommunityDomain" "$ExternalView" "$CommunityExternDomain" "$InternalViews"
for IView in $InternalViews; do
InternViewMasterZone="$ZoneFilesFolder""db.""$IView"".""$CommunityDomain"
@ -134,8 +134,13 @@ for Hood in $Hoods; do
done
done
done
if [ -n "$CommunityExternDomain" ]; then
HoodExternDomain="${Hood%%\#*}"".""$CommunityExternDomain"
else
HoodExternDomain=""
fi
ExternFile="$ZoneFilesFolder""db.""$ExternalView"".""$HoodDomain"
./update-extzone.sh "$HoodZoneFile" "$ExternFile" "$HoodDomain" "$ExternalView"
./update-extzone.sh "$HoodZoneFile" "$ExternFile" "$HoodDomain" "$ExternalView" "$HoodExternDomain" "$InternalViews"
for IView in $InternalViews; do
InternViewMasterZone="$ZoneFilesFolder""db.""$IView"".""$HoodDomain"
@ -144,8 +149,7 @@ for Hood in $Hoods; do
done
InsertZoneToIncludeFile "$HoodDomain" "$ExternFile" "/tmp/""$ExternalView"".conf" "$DNSSECPolicy"
if [ -n "$CommunityExternDomain" ]; then
HoodExternDomain="${Hood%%\#*}"".""$CommunityExternDomain"
if [ -n "$HoodExternDomain" ]; then
for IView in $InternalViews; do
InternViewExternZone="$ZoneFilesFolder""db.""$IView"".""$HoodExternDomain"
[ -f "$InternViewExternZone" ] || ln -s "$ExternFile" "$InternViewExternZone"

View File

@ -6,6 +6,8 @@ InternalZoneFile="$1"
ExternalZoneFile="$2"
ExternalZone="$3"
ExternalView="$4"
CommunityExternal="$5"
InternalViews="$6"
SerialIntern="$(GetZoneFileSerial "$InternalZoneFile")"
SerialExtern="$(GetZoneFileSerial "$ExternalZoneFile")"
@ -20,4 +22,5 @@ if [ $((SerialIntern)) -gt $((SerialExtern)) ]; then
s/^\(@ [^;]* IN SOA\)\s\+\S\+\s\+\S\+\s/\1 '"$DNSSCRIPT_SERVER_NAME"'. '"$DNSSCRIPT_CONTACT_EMAIL"' /g')"
echo "$ZoneContent" > "$ExternalZoneFile"
ReloadZone "$ExternalZone" "$ExternalView"
fi
[ -z "$CommunityExternal" ] || ReloadZone "$CommunityExternal" "$InternalViews"
fi