#!/usr/bin/with-contenv bash # shellcheck shell=bash # detect nginx configs with dates not matching the provided sample files active_confs=$(find /config/nginx/ -name "*.conf" -type f 2>/dev/null) for i in ${active_confs}; do if [ -f "${i}.sample" ]; then if [ "$(sed -nE 's|^## Version ([0-9]{4}\/[0-9]{2}\/[0-9]{2}).*|\1|p' "${i}")" != "$(sed -nE 's|^## Version ([0-9]{4}\/[0-9]{2}\/[0-9]{2}).*|\1|p' "${i}.sample")" ]; then active_confs_changed="│ $(printf '%10s' "$(sed -nE 's|^## Version ([0-9]{4}\/[0-9]{2}\/[0-9]{2}).*|\1|p' "${i}" | tr / -)") │ $(printf '%10s' "$(sed -nE 's|^## Version ([0-9]{4}\/[0-9]{2}\/[0-9]{2}).*|\1|p' "${i}.sample" | tr / -)") │ $(printf '%-70s' "${i}") │\n${active_confs_changed}" fi fi done # detect site-confs with wrong extension site_confs_wrong_ext=$(find /config/nginx/site-confs/ -type f -not -name "*.conf" -not -name "*.conf.sample" 2>/dev/null) if [ -n "${site_confs_wrong_ext}" ]; then echo "**** The following site-confs have extensions other than .conf ****" echo "**** This may be due to user customization. ****" echo "**** You should review the files and rename them to use the .conf extension or remove them. ****" echo "**** nginx.conf will only include site-confs with the .conf extension. ****" echo -e "${site_confs_wrong_ext}" fi