🗃️ Committing everything that changed 🗃️
All checks were successful
release-tag / release-image (push) Successful in 14m57s

rootfs/usr/local/etc/docker/init.d/02-named.sh
This commit is contained in:
casjay 2025-05-20 08:02:53 -04:00
parent 24e8a84222
commit 85a1eb7cc0
Signed by untrusted user who does not match committer: jason
GPG Key ID: 1AB309F42A764145

View File

@ -169,6 +169,7 @@ DNS_ZONE_FILE="$ETC_DIR/zones.conf"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Additional variables # Additional variables
DNS_TYPE="${DNS_TYPE:-primary}" DNS_TYPE="${DNS_TYPE:-primary}"
DNS_REMOTE_SERVER="${DNS_REMOTE_SERVER:-}"
DNS_SERVER_PRIMARY="${DNS_SERVER_PRIMARY:-127.0.0.1}" DNS_SERVER_PRIMARY="${DNS_SERVER_PRIMARY:-127.0.0.1}"
DNS_SERVER_SECONDARY="${DNS_SERVER_SECONDARY:-127.0.0.1}" DNS_SERVER_SECONDARY="${DNS_SERVER_SECONDARY:-127.0.0.1}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -289,6 +290,7 @@ __update_conf_files() {
__pre_execute() { __pre_execute() {
local exitCode=0 # default exit code local exitCode=0 # default exit code
local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
local remote_env="$(env | grep "$DNS_REMOTE_SERVER_")"
# execute if directories is empty # execute if directories is empty
# __is_dir_empty "$CONF_DIR" && true # __is_dir_empty "$CONF_DIR" && true
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -317,6 +319,7 @@ $HOSTNAME. IN A $CONTAINER_IP4_ADDRESS
EOF EOF
fi fi
# #
if [ -d "$DATA_DIR/zones" ]; then
for dns_file in "$DATA_DIR/zones"/*; do for dns_file in "$DATA_DIR/zones"/*; do
file_name="$(basename "$dns_file")" file_name="$(basename "$dns_file")"
domain_name="$(grep -Rs '\$ORIGIN' "$dns_file" | awk '{print $NF}' | sed 's|.$||g')" domain_name="$(grep -Rs '\$ORIGIN' "$dns_file" | awk '{print $NF}' | sed 's|.$||g')"
@ -354,7 +357,27 @@ EOF
fi fi
fi fi
done done
fi
if [ -d "$VAR_DIR/remote" ]; then
for dns_file in "$DATA_DIR/remote"/*; do
domain_name="${dns_name%.*}"
file_name="$(basename "$dns_file")"
main_server="$(grep -sh 'masters ' "$dns_file" | sed 's/^[ \t]*//' || echo "masters { $DNS_REMOTE_SERVER:-$DNS_SERVER_PRIMARY"); };"
cat <<EOF | sed 's|masters /d' >>"$DNS_ZONE_FILE"
# ********** begin $domain_name **********
zone "$domain_name" {
type slave;
$main_server
file "$VAR_DIR/remote/$file_name";
};
# ********** end $domain_name **********
EOF
done
fi
[ "$NAMED_CONFIG_COPY" = "yes" ] && cp -Rf "$NAMED_CONFIG_FILE" "$ETC_DIR/named.conf" || cp -Rf "$NAMED_CONFIG_FILE" "$CONF_DIR/named.conf" [ "$NAMED_CONFIG_COPY" = "yes" ] && cp -Rf "$NAMED_CONFIG_FILE" "$ETC_DIR/named.conf" || cp -Rf "$NAMED_CONFIG_FILE" "$CONF_DIR/named.conf"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# unset unneeded variables # unset unneeded variables
# unset # unset