From 0b4f6da25e772dda35661e7c8e7536b557884240 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Sat, 20 Apr 2019 21:21:15 +0200 Subject: [PATCH] :hammer: Refactor of init scripts --- .../rootfs/etc/cont-init.d/10-requirements.sh | 6 ------ tasmoadmin/rootfs/etc/cont-init.d/12-migrate.sh | 16 ---------------- .../etc/cont-init.d/{11-nginx.sh => nginx.sh} | 2 ++ .../{13-persistent-data.sh => tasmoadmin.sh} | 17 ++++++++++++++++- 4 files changed, 18 insertions(+), 23 deletions(-) delete mode 100755 tasmoadmin/rootfs/etc/cont-init.d/10-requirements.sh delete mode 100644 tasmoadmin/rootfs/etc/cont-init.d/12-migrate.sh rename tasmoadmin/rootfs/etc/cont-init.d/{11-nginx.sh => nginx.sh} (95%) rename tasmoadmin/rootfs/etc/cont-init.d/{13-persistent-data.sh => tasmoadmin.sh} (63%) diff --git a/tasmoadmin/rootfs/etc/cont-init.d/10-requirements.sh b/tasmoadmin/rootfs/etc/cont-init.d/10-requirements.sh deleted file mode 100755 index cc67f7e..0000000 --- a/tasmoadmin/rootfs/etc/cont-init.d/10-requirements.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Community Hass.io Add-ons: TasmoAdmin -# This files check if all user configuration requirements are met -# ============================================================================== -bashio::config.require.ssl diff --git a/tasmoadmin/rootfs/etc/cont-init.d/12-migrate.sh b/tasmoadmin/rootfs/etc/cont-init.d/12-migrate.sh deleted file mode 100644 index 4023d3b..0000000 --- a/tasmoadmin/rootfs/etc/cont-init.d/12-migrate.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Community Hass.io Add-ons: TasmoAdmin -# Migrates data from sonweb to TasmoAdmin -# ============================================================================== -if bashio::fs.directory_exists "/data/sonweb"; then - bashio::log.info 'Migrating data from sonweb to tasmoadmin...' - - # Rename data folder - mv /data/sonweb /data/tasmoadmin - - # Ensure file permissions - chown -R nginx:nginx /data/tasmoadmin - find /data/tasmoadmin -not -perm 0644 -type f -exec chmod 0644 {} \; - find /data/tasmoadmin -not -perm 0755 -type d -exec chmod 0755 {} \; -fi diff --git a/tasmoadmin/rootfs/etc/cont-init.d/11-nginx.sh b/tasmoadmin/rootfs/etc/cont-init.d/nginx.sh similarity index 95% rename from tasmoadmin/rootfs/etc/cont-init.d/11-nginx.sh rename to tasmoadmin/rootfs/etc/cont-init.d/nginx.sh index e0f0652..0bd9140 100755 --- a/tasmoadmin/rootfs/etc/cont-init.d/11-nginx.sh +++ b/tasmoadmin/rootfs/etc/cont-init.d/nginx.sh @@ -6,6 +6,8 @@ declare certfile declare keyfile +bashio::config.require.ssl + if bashio::config.true 'ssl'; then rm /etc/nginx/nginx.conf mv /etc/nginx/nginx-ssl.conf /etc/nginx/nginx.conf diff --git a/tasmoadmin/rootfs/etc/cont-init.d/13-persistent-data.sh b/tasmoadmin/rootfs/etc/cont-init.d/tasmoadmin.sh similarity index 63% rename from tasmoadmin/rootfs/etc/cont-init.d/13-persistent-data.sh rename to tasmoadmin/rootfs/etc/cont-init.d/tasmoadmin.sh index ed2a028..527d11c 100644 --- a/tasmoadmin/rootfs/etc/cont-init.d/13-persistent-data.sh +++ b/tasmoadmin/rootfs/etc/cont-init.d/tasmoadmin.sh @@ -1,8 +1,23 @@ #!/usr/bin/with-contenv bashio # ============================================================================== # Community Hass.io Add-ons: TasmoAdmin -# Ensures data is store in a persistent location +# Configures TasmoAdmin # ============================================================================== + +# Migrate from older installations +if bashio::fs.directory_exists "/data/sonweb"; then + bashio::log.info 'Migrating data from sonweb to tasmoadmin...' + + # Rename data folder + mv /data/sonweb /data/tasmoadmin + + # Ensure file permissions + chown -R nginx:nginx /data/tasmoadmin + find /data/tasmoadmin -not -perm 0644 -type f -exec chmod 0644 {} \; + find /data/tasmoadmin -not -perm 0755 -type d -exec chmod 0755 {} \; +fi + +# Ensure persistant storage exists if ! bashio::fs.directory_exists "/data/tasmoadmin"; then bashio::log.debug 'Data directory not initialized, doing that now...'