diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/dependencies.d/init-code-server b/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/dependencies.d/init-code-server new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/dependencies.d/init-user b/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/dependencies.d/init-user new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/finish b/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/finish new file mode 100755 index 0000000..fc23311 --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/finish @@ -0,0 +1,27 @@ +#!/command/with-contenv bashio +# shellcheck shell=bash +# ============================================================================== +# Home Assistant Community Add-on: Studio Code Server +# Take down the S6 supervision tree when the code server fails +# ============================================================================== +declare exit_code +readonly exit_code_container=$( /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 diff --git a/vscode/rootfs/etc/services.d/code/run b/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/run similarity index 91% rename from vscode/rootfs/etc/services.d/code/run rename to vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/run index 230d865..dbc0af2 100755 --- a/vscode/rootfs/etc/services.d/code/run +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/run @@ -1,12 +1,13 @@ #!/command/with-contenv bashio +# shellcheck shell=bash # ============================================================================== # Home Assistant Community Add-on: Studio Code Server -# Runs the code server +# Runs the code-server # ============================================================================== declare -a options declare config_path -bashio::log.info 'Starting the code server...' +bashio::log.info 'Starting code-server...' config_path="/config" if bashio::config.has_value 'config_path'; then diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/type b/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/type new file mode 100644 index 0000000..5883cff --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/code-server/type @@ -0,0 +1 @@ +longrun diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/dependencies.d/base b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/dependencies.d/base new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/cont-init.d/code-server.sh b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/run similarity index 99% rename from vscode/rootfs/etc/cont-init.d/code-server.sh rename to vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/run index 674406a..d49fc52 100755 --- a/vscode/rootfs/etc/cont-init.d/code-server.sh +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/run @@ -1,4 +1,5 @@ #!/command/with-contenv bashio +# shellcheck shell=bash # ============================================================================== # Home Assistant Community Add-on: Studio Code Server # Sets up code-server. diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/type b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/type new file mode 100644 index 0000000..bdd22a1 --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/type @@ -0,0 +1 @@ +oneshot diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/up b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/up new file mode 100644 index 0000000..3b22ac9 --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-code-server/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-code-server/run diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/dependencies.d/base b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/dependencies.d/base new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/cont-init.d/mosquitto.sh b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/run similarity index 97% rename from vscode/rootfs/etc/cont-init.d/mosquitto.sh rename to vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/run index c3aef0e..5148c3e 100755 --- a/vscode/rootfs/etc/cont-init.d/mosquitto.sh +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/run @@ -1,4 +1,5 @@ #!/command/with-contenv bashio +# shellcheck shell=bash # ============================================================================== # Home Assistant Community Add-on: Studio Code Server # Pre-configures the Mosquitto clients, if the service is available diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/type b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/type new file mode 100644 index 0000000..bdd22a1 --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/type @@ -0,0 +1 @@ +oneshot diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/up b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/up new file mode 100644 index 0000000..b662c5d --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mosquitto/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-mosquitto/run diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/dependencies.d/base b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/dependencies.d/base new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/cont-init.d/mysql.sh b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/run similarity index 97% rename from vscode/rootfs/etc/cont-init.d/mysql.sh rename to vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/run index 00a323b..0894a8a 100755 --- a/vscode/rootfs/etc/cont-init.d/mysql.sh +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/run @@ -1,4 +1,5 @@ #!/command/with-contenv bashio +# shellcheck shell=bash # ============================================================================== # Home Assistant Community Add-on: Studio Code Server # Pre-configures the MySQL clients, if the service is available diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/type b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/type new file mode 100644 index 0000000..bdd22a1 --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/type @@ -0,0 +1 @@ +oneshot diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/up b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/up new file mode 100644 index 0000000..feb7e01 --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-mysql/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-mysql/run diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/dependencies.d/base b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/dependencies.d/base new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/cont-init.d/user.sh b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/run similarity index 99% rename from vscode/rootfs/etc/cont-init.d/user.sh rename to vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/run index 5f0b883..f476a2a 100755 --- a/vscode/rootfs/etc/cont-init.d/user.sh +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/run @@ -1,4 +1,5 @@ #!/command/with-contenv bashio +# shellcheck shell=bash # ============================================================================== # Home Assistant Community Add-on: Studio Code Server # Persists user settings and installs custom user packages. diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/type b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/type new file mode 100644 index 0000000..bdd22a1 --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/type @@ -0,0 +1 @@ +oneshot diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/up b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/up new file mode 100644 index 0000000..b977248 --- /dev/null +++ b/vscode/rootfs/etc/s6-overlay/s6-rc.d/init-user/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-user/run diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/code-server b/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/code-server new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/init-code-server b/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/init-code-server new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/init-mosquitto b/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/init-mosquitto new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/init-mysql b/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/init-mysql new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/init-user b/vscode/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/init-user new file mode 100644 index 0000000..e69de29 diff --git a/vscode/rootfs/etc/services.d/code/finish b/vscode/rootfs/etc/services.d/code/finish deleted file mode 100755 index 147ff6e..0000000 --- a/vscode/rootfs/etc/services.d/code/finish +++ /dev/null @@ -1,11 +0,0 @@ -#!/command/with-contenv bashio -# ============================================================================== -# Home Assistant Community Add-on: Studio Code Server -# Take down the S6 supervision tree when the code server fails -# ============================================================================== -if [[ "${1}" -ne 0 ]] && [[ "${1}" -ne 256 ]]; then - bashio::log.warning "code-server crashed, halting add-on" - exec /run/s6/basedir/bin/halt -fi - -bashio::log.info "code-server stopped, restarting..."