From 94db1a3bf5e1a290c8e081d380af12951efa5c87 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 7 Feb 2023 11:25:36 +0100 Subject: [PATCH] ingress_disabled --- radarr/rootfs/etc/services.d/nginx/run | 7 ++++--- readarr/CHANGELOG.md | 1 + readarr/Dockerfile | 2 +- readarr/config.json | 3 ++- readarr/rootfs/etc/services.d/nginx/run | 28 ++++++++++++++++++------- sonarr/CHANGELOG.md | 1 + sonarr/Dockerfile | 2 +- sonarr/config.json | 3 ++- sonarr/rootfs/etc/services.d/nginx/run | 28 +++++++++++++++++++------ sonarr/translations/en.yaml | 2 +- 10 files changed, 56 insertions(+), 21 deletions(-) diff --git a/radarr/rootfs/etc/services.d/nginx/run b/radarr/rootfs/etc/services.d/nginx/run index 73bde716c..8a20f7ca2 100644 --- a/radarr/rootfs/etc/services.d/nginx/run +++ b/radarr/rootfs/etc/services.d/nginx/run @@ -2,13 +2,14 @@ # shellcheck shell=bash # ============================================================================== -# Wait for transmission to become available -bashio::net.wait_for 7878 localhost 900 - # Set variables slug=radarr +port=7878 CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml +# Wait for transmission to become available +bashio::net.wait_for "$port" localhost 900 + if bashio::config.has_value 'CONFIG_LOCATION'; then CONFIG_LOCATION="$(bashio::config 'CONFIG_LOCATION')" # Modify if it is a base directory diff --git a/readarr/CHANGELOG.md b/readarr/CHANGELOG.md index e0efeba51..fee750ff4 100644 --- a/readarr/CHANGELOG.md +++ b/readarr/CHANGELOG.md @@ -1,3 +1,4 @@ +- Add ingress_disabled option - Ingress addition - Base url set to "readarr" diff --git a/readarr/Dockerfile b/readarr/Dockerfile index 6ec6c677c..c5efab78b 100644 --- a/readarr/Dockerfile +++ b/readarr/Dockerfile @@ -66,7 +66,7 @@ RUN if [ -d /etc/cont-init.d ]; then chmod -R 755 /etc/cont-init.d; fi && \ if [ -f /entrypoint.sh ]; then chmod 755 /entrypoint.sh; fi # Modules -ARG MODULES="00-banner.sh 01-custom_script.sh 92-local_mounts.sh 92-smb_mounts.sh" +ARG MODULES="00-banner.sh 01-custom_script.sh 90-disable_ingress.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash) >/dev/null; fi \ diff --git a/readarr/config.json b/readarr/config.json index 5047917f0..2089bd0bf 100644 --- a/readarr/config.json +++ b/readarr/config.json @@ -78,10 +78,11 @@ "TZ": "str?", "cifspassword": "str?", "cifsusername": "str?", + "ingress_disabled": "bool?", "localdisks": "str?", "networkdisks": "str?" }, "slug": "readarr_nas", "url": "https://github.com/alexbelgium/hassio-addons/tree/master/readarr", - "version": "nightly-0.1.2.1558-ls159-9" + "version": "nightly-0.1.2.1558-ls159-10" } \ No newline at end of file diff --git a/readarr/rootfs/etc/services.d/nginx/run b/readarr/rootfs/etc/services.d/nginx/run index 632d2c513..4ec9e446f 100644 --- a/readarr/rootfs/etc/services.d/nginx/run +++ b/readarr/rootfs/etc/services.d/nginx/run @@ -2,12 +2,13 @@ # shellcheck shell=bash # ============================================================================== +# Set variables +slug=readarr +port=8787 +CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml + # Wait for transmission to become available -bashio::net.wait_for 8787 localhost 900 - -# Set base url - -CONFIG_LOCATION=/config/addons_config/readarr/config.xml +bashio::net.wait_for "$port" localhost 900 if bashio::config.has_value 'CONFIG_LOCATION'; then CONFIG_LOCATION="$(bashio::config 'CONFIG_LOCATION')" @@ -16,12 +17,25 @@ if bashio::config.has_value 'CONFIG_LOCATION'; then CONFIG_LOCATION="$CONFIG_LOCATION"/config.xml fi -if ! grep -q "/readarr" "$CONFIG_LOCATION"; then +# Set UrlBase +if ! grep -q "/$slug" "$CONFIG_LOCATION" && ! bashio::config.true "ingress_disabled"; then; then bashio::log.warning "BaseUrl not set properly, restarting" sed -i "/UrlBase/d" "$CONFIG_LOCATION" - sed -i "//a \/readarr<\/UrlBase>" "$CONFIG_LOCATION" + sed -i "//a \/$slug<\/UrlBase>" "$CONFIG_LOCATION" bashio::addon.restart fi +# Disable Ingress +if bashio::config.true "ingress_disabled"; then + bashio::log.info "Ingress is disabled, removing base url" + + # Remove BaseUrl + if grep -q "$slug" "$CONFIG_LOCATION"; then + bashio::log.warning "BaseUrl removed, restarting" + sed -i "/$slug/d" "$CONFIG_LOCATION" + bashio::addon.restart + fi +fi + bashio::log.info "Starting NGinx..." exec nginx diff --git a/sonarr/CHANGELOG.md b/sonarr/CHANGELOG.md index 34e626c3f..22cd8b94d 100644 --- a/sonarr/CHANGELOG.md +++ b/sonarr/CHANGELOG.md @@ -1,3 +1,4 @@ +- Add ingress_disabled option - Ingress addition - BaseUrl definition to "sonarr" - WARNING : update to supervisor 2022.11 before installing diff --git a/sonarr/Dockerfile b/sonarr/Dockerfile index b0689efe7..405ae1d65 100644 --- a/sonarr/Dockerfile +++ b/sonarr/Dockerfile @@ -66,7 +66,7 @@ RUN if [ -d /etc/cont-init.d ]; then chmod -R 755 /etc/cont-init.d; fi && \ if [ -f /entrypoint.sh ]; then chmod 755 /entrypoint.sh; fi # Modules -ARG MODULES="00-banner.sh 01-custom_script.sh 92-local_mounts.sh 92-smb_mounts.sh" +ARG MODULES="00-banner.sh 01-custom_script.sh 90-disable_ingress.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash) >/dev/null; fi \ diff --git a/sonarr/config.json b/sonarr/config.json index e0af01f7d..20155a26c 100644 --- a/sonarr/config.json +++ b/sonarr/config.json @@ -77,11 +77,12 @@ "TZ": "str?", "cifspassword": "str?", "cifsusername": "str?", + "ingress_disabled": "bool?", "localdisks": "str?", "networkdisks": "str?", "smbv1": "bool?" }, "slug": "sonarr_nas", "url": "https://github.com/alexbelgium/hassio-addons/tree/master/sonarr", - "version": "3.0.9.1549-7" + "version": "3.0.9.1549-8" } diff --git a/sonarr/rootfs/etc/services.d/nginx/run b/sonarr/rootfs/etc/services.d/nginx/run index 0354651c0..eeb45ec1f 100644 --- a/sonarr/rootfs/etc/services.d/nginx/run +++ b/sonarr/rootfs/etc/services.d/nginx/run @@ -2,11 +2,14 @@ # shellcheck shell=bash # ============================================================================== -# Wait for transmission to become available -bashio::net.wait_for 8989 localhost 900 +# Set variables +slug=sonarr +port=8989 +CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml + +# Wait for transmission to become available +bashio::net.wait_for "$port" localhost 900 -# Set base url -CONFIG_LOCATION=/config/addons_config/sonarr/config.xml if bashio::config.has_value 'CONFIG_LOCATION'; then CONFIG_LOCATION="$(bashio::config 'CONFIG_LOCATION')" # Modify if it is a base directory @@ -14,12 +17,25 @@ if bashio::config.has_value 'CONFIG_LOCATION'; then CONFIG_LOCATION="$CONFIG_LOCATION"/config.xml fi -if ! grep -q "/sonarr" "$CONFIG_LOCATION"; then +# Set UrlBase +if ! grep -q "/$slug" "$CONFIG_LOCATION" && ! bashio::config.true "ingress_disabled"; then; then bashio::log.warning "BaseUrl not set properly, restarting" sed -i "/UrlBase/d" "$CONFIG_LOCATION" - sed -i "//a \/sonarr<\/UrlBase>" "$CONFIG_LOCATION" + sed -i "//a \/$slug<\/UrlBase>" "$CONFIG_LOCATION" bashio::addon.restart fi +# Disable Ingress +if bashio::config.true "ingress_disabled"; then + bashio::log.info "Ingress is disabled, removing base url" + + # Remove BaseUrl + if grep -q "$slug" "$CONFIG_LOCATION"; then + bashio::log.warning "BaseUrl removed, restarting" + sed -i "/$slug/d" "$CONFIG_LOCATION" + bashio::addon.restart + fi +fi + bashio::log.info "Starting NGinx..." exec nginx diff --git a/sonarr/translations/en.yaml b/sonarr/translations/en.yaml index e5b8cd982..1efab343e 100644 --- a/sonarr/translations/en.yaml +++ b/sonarr/translations/en.yaml @@ -242,7 +242,7 @@ configuration: description: See upstream app documentation ingress_disabled: name: ingress_disabled - description: See upstream app documentation + description: Remove baseurl and disable ingress ingress_user: name: ingress_user description: See upstream app documentation