mirror of
https://github.com/hassio-addons/addon-glances.git
synced 2025-05-05 11:31:31 +00:00
⬆️ Upgrades add-on base image to 12.0.0 (#264)
* ⬆️ Upgrades add-on base image to 12.0.0
* Shellcheck actually caught a bug! :D
* Init true is the default
This commit is contained in:
parent
f0ea3acca7
commit
da9bd0032e
13 changed files with 92 additions and 60 deletions
|
@ -1,4 +1,4 @@
|
||||||
ARG BUILD_FROM=ghcr.io/hassio-addons/base/amd64:11.1.0
|
ARG BUILD_FROM=ghcr.io/hassio-addons/base/amd64:12.0.0
|
||||||
# hadolint ignore=DL3006
|
# hadolint ignore=DL3006
|
||||||
FROM ${BUILD_FROM}
|
FROM ${BUILD_FROM}
|
||||||
|
|
||||||
|
@ -12,20 +12,20 @@ COPY requirements.txt /tmp/
|
||||||
ARG BUILD_ARCH=amd64
|
ARG BUILD_ARCH=amd64
|
||||||
RUN \
|
RUN \
|
||||||
apk add --no-cache --virtual .build-dependencies \
|
apk add --no-cache --virtual .build-dependencies \
|
||||||
automake=1.16.4-r1 \
|
automake=1.16.5-r0 \
|
||||||
build-base=0.5-r2 \
|
build-base=0.5-r2 \
|
||||||
linux-headers=5.10.41-r0 \
|
linux-headers=5.16.7-r1 \
|
||||||
python3-dev=3.9.7-r4 \
|
python3-dev=3.10.4-r0 \
|
||||||
\
|
\
|
||||||
&& apk add --no-cache \
|
&& apk add --no-cache \
|
||||||
nginx=1.20.2-r0 \
|
nginx=1.22.0-r0 \
|
||||||
py3-pip=20.3.4-r1 \
|
py3-pip=22.1.1-r0 \
|
||||||
python3=3.9.7-r4 \
|
python3=3.10.4-r0 \
|
||||||
\
|
\
|
||||||
&& pip3 install \
|
&& pip3 install \
|
||||||
--no-cache-dir \
|
--no-cache-dir \
|
||||||
--prefer-binary \
|
--prefer-binary \
|
||||||
--find-links "https://wheels.home-assistant.io/alpine-3.15/${BUILD_ARCH}/" \
|
--find-links "https://wheels.home-assistant.io/alpine-3.16/${BUILD_ARCH}/" \
|
||||||
-r /tmp/requirements.txt \
|
-r /tmp/requirements.txt \
|
||||||
\
|
\
|
||||||
&& find /usr/local \
|
&& find /usr/local \
|
||||||
|
@ -39,6 +39,11 @@ RUN \
|
||||||
# Copy root filesystem
|
# Copy root filesystem
|
||||||
COPY rootfs /
|
COPY rootfs /
|
||||||
|
|
||||||
|
# This add-on runs on the host pid namespace, making it impossible
|
||||||
|
# to use S6-Overlay. Therefore the init system is disabled at this point.
|
||||||
|
ENTRYPOINT []
|
||||||
|
CMD ["/run.sh"]
|
||||||
|
|
||||||
# Build arguments
|
# Build arguments
|
||||||
ARG BUILD_ARCH
|
ARG BUILD_ARCH
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
---
|
---
|
||||||
build_from:
|
build_from:
|
||||||
aarch64: ghcr.io/hassio-addons/base/aarch64:11.1.0
|
aarch64: ghcr.io/hassio-addons/base/aarch64:12.0.0
|
||||||
amd64: ghcr.io/hassio-addons/base/amd64:11.1.0
|
amd64: ghcr.io/hassio-addons/base/amd64:12.0.0
|
||||||
armhf: ghcr.io/hassio-addons/base/armhf:11.1.0
|
armhf: ghcr.io/hassio-addons/base/armhf:12.0.0
|
||||||
armv7: ghcr.io/hassio-addons/base/armv7:11.1.0
|
armv7: ghcr.io/hassio-addons/base/armv7:12.0.0
|
||||||
i386: ghcr.io/hassio-addons/base/i386:11.1.0
|
i386: ghcr.io/hassio-addons/base/i386:12.0.0
|
||||||
codenotary:
|
codenotary:
|
||||||
base_image: codenotary@frenck.dev
|
base_image: codenotary@frenck.dev
|
||||||
signer: codenotary@frenck.dev
|
signer: codenotary@frenck.dev
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
# ==============================================================================
|
|
||||||
# Home Assistant Community Add-on: Glances
|
|
||||||
# This file turns s6-nuke into a NOOP to prevent total termination
|
|
||||||
# of the host system since the add-on runs in the same PID namespace.
|
|
||||||
# ==============================================================================
|
|
||||||
echo "S6-NUKE: NOOP"
|
|
||||||
exit 0
|
|
37
glances/rootfs/etc/cont-init.d/banner.sh
Executable file
37
glances/rootfs/etc/cont-init.d/banner.sh
Executable file
|
@ -0,0 +1,37 @@
|
||||||
|
#!/usr/bin/env bashio
|
||||||
|
# ==============================================================================
|
||||||
|
# Home Assistant Community Add-on: Base Images
|
||||||
|
# Displays a simple add-on banner on startup
|
||||||
|
# ==============================================================================
|
||||||
|
if bashio::supervisor.ping; then
|
||||||
|
bashio::log.blue \
|
||||||
|
'-----------------------------------------------------------'
|
||||||
|
bashio::log.blue " Add-on: $(bashio::addon.name)"
|
||||||
|
bashio::log.blue " $(bashio::addon.description)"
|
||||||
|
bashio::log.blue \
|
||||||
|
'-----------------------------------------------------------'
|
||||||
|
|
||||||
|
bashio::log.blue " Add-on version: $(bashio::addon.version)"
|
||||||
|
if bashio::var.true "$(bashio::addon.update_available)"; then
|
||||||
|
bashio::log.magenta ' There is an update available for this add-on!'
|
||||||
|
bashio::log.magenta \
|
||||||
|
" Latest add-on version: $(bashio::addon.version_latest)"
|
||||||
|
bashio::log.magenta ' Please consider upgrading as soon as possible.'
|
||||||
|
else
|
||||||
|
bashio::log.green ' You are running the latest version of this add-on.'
|
||||||
|
fi
|
||||||
|
|
||||||
|
bashio::log.blue " System: $(bashio::info.operating_system)" \
|
||||||
|
" ($(bashio::info.arch) / $(bashio::info.machine))"
|
||||||
|
bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)"
|
||||||
|
bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)"
|
||||||
|
|
||||||
|
bashio::log.blue \
|
||||||
|
'-----------------------------------------------------------'
|
||||||
|
bashio::log.blue \
|
||||||
|
' Please, share the above information when looking for help'
|
||||||
|
bashio::log.blue \
|
||||||
|
' or support in, e.g., GitHub, forums or the Discord chat.'
|
||||||
|
bashio::log.blue \
|
||||||
|
'-----------------------------------------------------------'
|
||||||
|
fi
|
2
glances/rootfs/etc/cont-init.d/glances.sh
Normal file → Executable file
2
glances/rootfs/etc/cont-init.d/glances.sh
Normal file → Executable file
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/with-contenv bashio
|
#!/usr/bin/env bashio
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: Glances
|
# Home Assistant Community Add-on: Glances
|
||||||
# Configures Glances
|
# Configures Glances
|
||||||
|
|
2
glances/rootfs/etc/cont-init.d/nginx.sh
Normal file → Executable file
2
glances/rootfs/etc/cont-init.d/nginx.sh
Normal file → Executable file
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/with-contenv bashio
|
#!/usr/bin/env bashio
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: SSH & Web Terminal
|
# Home Assistant Community Add-on: SSH & Web Terminal
|
||||||
# Configures NGINX for use with ttyd
|
# Configures NGINX for use with ttyd
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
#!/usr/bin/execlineb -S0
|
|
||||||
# ==============================================================================
|
|
||||||
# Home Assistant Community Add-on: Glances
|
|
||||||
# Take down the S6 supervision tree when Glances fails
|
|
||||||
# ==============================================================================
|
|
||||||
if -n { s6-test $# -ne 0 }
|
|
||||||
if -n { s6-test ${1} -eq 256 }
|
|
||||||
|
|
||||||
s6-svscanctl -t /var/run/s6/services
|
|
2
glances/rootfs/etc/services.d/glances/run
Normal file → Executable file
2
glances/rootfs/etc/services.d/glances/run
Normal file → Executable file
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/with-contenv bashio
|
#!/usr/bin/env bashio
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: Glances
|
# Home Assistant Community Add-on: Glances
|
||||||
# Runs Glances
|
# Runs Glances
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
#!/usr/bin/execlineb -S0
|
|
||||||
# ==============================================================================
|
|
||||||
# Home Assistant Community Add-on: Glances
|
|
||||||
# Take down the S6 supervision tree when Glances fails
|
|
||||||
# ==============================================================================
|
|
||||||
if -n { s6-test $# -ne 0 }
|
|
||||||
if -n { s6-test ${1} -eq 256 }
|
|
||||||
|
|
||||||
s6-svscanctl -t /var/run/s6/services
|
|
16
glances/rootfs/etc/services.d/influxdb/run
Normal file → Executable file
16
glances/rootfs/etc/services.d/influxdb/run
Normal file → Executable file
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/with-contenv bashio
|
#!/usr/bin/env bashio
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: Glances
|
# Home Assistant Community Add-on: Glances
|
||||||
# Runs Glances InfluxDB Export
|
# Runs Glances InfluxDB Export
|
||||||
|
@ -6,7 +6,7 @@
|
||||||
declare -a options
|
declare -a options
|
||||||
|
|
||||||
if bashio::config.false 'influxdb.enabled'; then
|
if bashio::config.false 'influxdb.enabled'; then
|
||||||
exec sleep 86400
|
bashio::exit.ok
|
||||||
fi
|
fi
|
||||||
|
|
||||||
options+=(-C /etc/glances.conf)
|
options+=(-C /etc/glances.conf)
|
||||||
|
@ -23,9 +23,11 @@ if bashio::debug; then
|
||||||
options+=(--debug)
|
options+=(--debug)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Interval
|
while true
|
||||||
sleep "$(bashio::config 'influxdb.interval')"
|
do
|
||||||
|
# Interval
|
||||||
# Run Glances
|
sleep "$(bashio::config 'influxdb.interval')"
|
||||||
exec glances "${options[@]}"
|
|
||||||
|
|
||||||
|
# Run Glances
|
||||||
|
glances "${options[@]}"
|
||||||
|
done
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
#!/usr/bin/execlineb -S0
|
|
||||||
# ==============================================================================
|
|
||||||
# Home Assistant Community Add-on: Glances
|
|
||||||
# Take down the S6 supervision tree when the nginx daemon fails
|
|
||||||
# ==============================================================================
|
|
||||||
# Disabled to allow for some testing
|
|
||||||
if -n { s6-test $# -ne 0 }
|
|
||||||
if -n { s6-test ${1} -eq 256 }
|
|
||||||
|
|
||||||
s6-svscanctl -t /var/run/s6/services
|
|
2
glances/rootfs/etc/services.d/nginx/run
Normal file → Executable file
2
glances/rootfs/etc/services.d/nginx/run
Normal file → Executable file
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/with-contenv bashio
|
#!/usr/bin/env bashio
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Home Assistant Community Add-on: Glances
|
# Home Assistant Community Add-on: Glances
|
||||||
# Runs the nginx daemon
|
# Runs the nginx daemon
|
||||||
|
|
24
glances/rootfs/run.sh
Executable file
24
glances/rootfs/run.sh
Executable file
|
@ -0,0 +1,24 @@
|
||||||
|
#!/usr/bin/env bashio
|
||||||
|
# ==============================================================================
|
||||||
|
# Home Assistant Community Add-on: Glances
|
||||||
|
# Run the Glances add-on
|
||||||
|
# ==============================================================================
|
||||||
|
#
|
||||||
|
# WHAT IS THIS FILE?!
|
||||||
|
#
|
||||||
|
# The Glances add-on runs in the host PID namespace, therefore it cannot
|
||||||
|
# use the regular S6-Overlay; hence this add-on uses a "old school" script
|
||||||
|
# to run; with a couple of "hacks" to make it work.
|
||||||
|
# ==============================================================================
|
||||||
|
/etc/cont-init.d/banner.sh
|
||||||
|
/etc/cont-init.d/glances.sh
|
||||||
|
/etc/cont-init.d/nginx.sh
|
||||||
|
|
||||||
|
# Start NGiNX
|
||||||
|
/etc/services.d/nginx/run &
|
||||||
|
|
||||||
|
# InfluxDB export
|
||||||
|
/etc/services.d/influxdb/run &
|
||||||
|
|
||||||
|
# Start Glances
|
||||||
|
exec /etc/services.d/glances/run
|
Loading…
Add table
Add a link
Reference in a new issue