mirror of
https://github.com/hassio-addons/addon-grocy.git
synced 2025-05-04 19:21:24 +00:00
🔨 Migrate old-style S6 scripts to s6-rc.d (#327)
This commit is contained in:
parent
46c04bf78e
commit
d4a72c5cb3
32 changed files with 70 additions and 27 deletions
|
@ -1,4 +1,5 @@
|
||||||
#!/command/with-contenv bashio
|
#!/command/with-contenv bashio
|
||||||
|
# shellcheck shell=bash
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: Grocy
|
# Home Assistant Community Add-on: Grocy
|
||||||
# Sets up Grocy before the server starts
|
# Sets up Grocy before the server starts
|
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-grocy/type
Normal file
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-grocy/type
Normal file
|
@ -0,0 +1 @@
|
||||||
|
oneshot
|
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-grocy/up
Normal file
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-grocy/up
Normal file
|
@ -0,0 +1 @@
|
||||||
|
/etc/s6-overlay/s6-rc.d/init-grocy/run
|
|
@ -1,4 +1,5 @@
|
||||||
#!/command/with-contenv bashio
|
#!/command/with-contenv bashio
|
||||||
|
# shellcheck shell=bash
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: Grocy
|
# Home Assistant Community Add-on: Grocy
|
||||||
# Configures NGINX for use with Grocy
|
# Configures NGINX for use with Grocy
|
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-nginx/type
Normal file
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-nginx/type
Normal file
|
@ -0,0 +1 @@
|
||||||
|
oneshot
|
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-nginx/up
Normal file
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-nginx/up
Normal file
|
@ -0,0 +1 @@
|
||||||
|
/etc/s6-overlay/s6-rc.d/init-nginx/run
|
|
@ -1,4 +1,5 @@
|
||||||
#!/command/with-contenv bashio
|
#!/command/with-contenv bashio
|
||||||
|
# shellcheck shell=bash
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: Grocy
|
# Home Assistant Community Add-on: Grocy
|
||||||
# Configures PHP-FPM for use with Grocy
|
# Configures PHP-FPM for use with Grocy
|
||||||
|
@ -10,8 +11,8 @@ bashio::var.json \
|
||||||
port "^9002" \
|
port "^9002" \
|
||||||
base "$(bashio::addon.ingress_entry)" \
|
base "$(bashio::addon.ingress_entry)" \
|
||||||
| tempio \
|
| tempio \
|
||||||
-template /etc/php8/templates/php-fpm.gtpl \
|
-template /etc/php81/templates/php-fpm.gtpl \
|
||||||
-out /etc/php8/php-fpm.d/ingress.conf
|
-out /etc/php81/php-fpm.d/ingress.conf
|
||||||
|
|
||||||
# Generate direct access configuration, if enabled.
|
# Generate direct access configuration, if enabled.
|
||||||
if bashio::var.has_value "$(bashio::addon.port 80)"; then
|
if bashio::var.has_value "$(bashio::addon.port 80)"; then
|
||||||
|
@ -19,6 +20,6 @@ if bashio::var.has_value "$(bashio::addon.port 80)"; then
|
||||||
name "www" \
|
name "www" \
|
||||||
port "^9001" \
|
port "^9001" \
|
||||||
| tempio \
|
| tempio \
|
||||||
-template /etc/php8/templates/php-fpm.gtpl \
|
-template /etc/php81/templates/php-fpm.gtpl \
|
||||||
-out /etc/php8/php-fpm.d/www.conf
|
-out /etc/php81/php-fpm.d/www.conf
|
||||||
fi
|
fi
|
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-php-fpm/type
Normal file
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-php-fpm/type
Normal file
|
@ -0,0 +1 @@
|
||||||
|
oneshot
|
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-php-fpm/up
Normal file
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/init-php-fpm/up
Normal file
|
@ -0,0 +1 @@
|
||||||
|
/etc/s6-overlay/s6-rc.d/init-php-fpm/run
|
26
grocy/rootfs/etc/s6-overlay/s6-rc.d/nginx/finish
Executable file
26
grocy/rootfs/etc/s6-overlay/s6-rc.d/nginx/finish
Executable file
|
@ -0,0 +1,26 @@
|
||||||
|
#!/command/with-contenv bashio
|
||||||
|
# ==============================================================================
|
||||||
|
# Home Assistant Community Add-on: Grocy
|
||||||
|
# Take down the S6 supervision tree when Nginx fails
|
||||||
|
# ==============================================================================
|
||||||
|
declare exit_code
|
||||||
|
readonly exit_code_container=$(</run/s6-linux-init-container-results/exitcode)
|
||||||
|
readonly exit_code_service="${1}"
|
||||||
|
readonly exit_code_signal="${2}"
|
||||||
|
readonly service="NGINX"
|
||||||
|
|
||||||
|
bashio::log.info \
|
||||||
|
"Service ${service} exited with code ${exit_code_service}" \
|
||||||
|
"(by signal ${exit_code_signal})"
|
||||||
|
|
||||||
|
if [[ "${exit_code_service}" -eq 256 ]]; then
|
||||||
|
if [[ "${exit_code_container}" -eq 0 ]]; then
|
||||||
|
echo $((128 + $exit_code_signal)) > /run/s6-linux-init-container-results/exitcode
|
||||||
|
fi
|
||||||
|
[[ "${exit_code_signal}" -eq 15 ]] && exec /run/s6/basedir/bin/halt
|
||||||
|
elif [[ "${exit_code_service}" -ne 0 ]]; then
|
||||||
|
if [[ "${exit_code_container}" -eq 0 ]]; then
|
||||||
|
echo "${exit_code_service}" > /run/s6-linux-init-container-results/exitcode
|
||||||
|
fi
|
||||||
|
exec /run/s6/basedir/bin/halt
|
||||||
|
fi
|
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/nginx/type
Normal file
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/nginx/type
Normal file
|
@ -0,0 +1 @@
|
||||||
|
longrun
|
27
grocy/rootfs/etc/s6-overlay/s6-rc.d/php-fpm/finish
Executable file
27
grocy/rootfs/etc/s6-overlay/s6-rc.d/php-fpm/finish
Executable file
|
@ -0,0 +1,27 @@
|
||||||
|
#!/command/with-contenv bashio
|
||||||
|
# shellcheck shell=bash
|
||||||
|
# ==============================================================================
|
||||||
|
# Home Assistant Community Add-on: Grocy
|
||||||
|
# Take down the S6 supervision tree when PHP FPM fails
|
||||||
|
# ==============================================================================
|
||||||
|
declare exit_code
|
||||||
|
readonly exit_code_container=$(</run/s6-linux-init-container-results/exitcode)
|
||||||
|
readonly exit_code_service="${1}"
|
||||||
|
readonly exit_code_signal="${2}"
|
||||||
|
readonly service="PHP-FPM"
|
||||||
|
|
||||||
|
bashio::log.info \
|
||||||
|
"Service ${service} exited with code ${exit_code_service}" \
|
||||||
|
"(by signal ${exit_code_signal})"
|
||||||
|
|
||||||
|
if [[ "${exit_code_service}" -eq 256 ]]; then
|
||||||
|
if [[ "${exit_code_container}" -eq 0 ]]; then
|
||||||
|
echo $((128 + $exit_code_signal)) > /run/s6-linux-init-container-results/exitcode
|
||||||
|
fi
|
||||||
|
[[ "${exit_code_signal}" -eq 15 ]] && exec /run/s6/basedir/bin/halt
|
||||||
|
elif [[ "${exit_code_service}" -ne 0 ]]; then
|
||||||
|
if [[ "${exit_code_container}" -eq 0 ]]; then
|
||||||
|
echo "${exit_code_service}" > /run/s6-linux-init-container-results/exitcode
|
||||||
|
fi
|
||||||
|
exec /run/s6/basedir/bin/halt
|
||||||
|
fi
|
|
@ -1,4 +1,5 @@
|
||||||
#!/command/with-contenv bashio
|
#!/command/with-contenv bashio
|
||||||
|
# shellcheck shell=bash
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: Grocy
|
# Home Assistant Community Add-on: Grocy
|
||||||
# Runs the PHP-FPM daemon
|
# Runs the PHP-FPM daemon
|
||||||
|
@ -89,4 +90,4 @@ GROCY_CULTURE=$(bashio::config "culture")
|
||||||
GROCY_CURRENCY=$(bashio::config "currency")
|
GROCY_CURRENCY=$(bashio::config "currency")
|
||||||
GROCY_ENTRY_PAGE=$(bashio::config 'entry_page')
|
GROCY_ENTRY_PAGE=$(bashio::config 'entry_page')
|
||||||
|
|
||||||
exec php-fpm8 -R --nodaemonize
|
exec php-fpm81 -R --nodaemonize
|
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/php-fpm/type
Normal file
1
grocy/rootfs/etc/s6-overlay/s6-rc.d/php-fpm/type
Normal file
|
@ -0,0 +1 @@
|
||||||
|
longrun
|
|
@ -1,11 +0,0 @@
|
||||||
#!/command/with-contenv bashio
|
|
||||||
# ==============================================================================
|
|
||||||
# Home Assistant Community Add-on: Grocy
|
|
||||||
# Take down the S6 supervision tree when Nginx fails
|
|
||||||
# ==============================================================================
|
|
||||||
if [[ "${1}" -ne 0 ]] && [[ "${1}" -ne 256 ]]; then
|
|
||||||
bashio::log.warning "NGINX crashed, halting add-on"
|
|
||||||
/run/s6/basedir/bin/halt
|
|
||||||
fi
|
|
||||||
|
|
||||||
bashio::log.info "NGINX stopped, restarting..."
|
|
|
@ -1,11 +0,0 @@
|
||||||
#!/command/with-contenv bashio
|
|
||||||
# ==============================================================================
|
|
||||||
# Home Assistant Community Add-on: Grocy
|
|
||||||
# Take down the S6 supervision tree when PHP FPM fails
|
|
||||||
# ==============================================================================
|
|
||||||
if [[ "${1}" -ne 0 ]] && [[ "${1}" -ne 256 ]]; then
|
|
||||||
bashio::log.warning "PHP-FPM crashed, halting add-on"
|
|
||||||
/run/s6/basedir/bin/halt
|
|
||||||
fi
|
|
||||||
|
|
||||||
bashio::log.info "PHP-FPM stopped, restarting..."
|
|
Loading…
Add table
Add a link
Reference in a new issue