From e8cd68c72233e3b46b92ca9dabc4cb4929185d27 Mon Sep 17 00:00:00 2001 From: Benoit Date: Thu, 24 Oct 2024 18:20:15 +0900 Subject: [PATCH 1/5] Add helper script wait_network --- cfg/jobs/forgejo.run | 3 +-- cfg/jobs/mastodon.run | 3 +-- cfg/jobs/navidrome.run | 3 +-- cfg/scripts/wait_network | 6 ++++++ 4 files changed, 9 insertions(+), 6 deletions(-) create mode 100644 cfg/scripts/wait_network diff --git a/cfg/jobs/forgejo.run b/cfg/jobs/forgejo.run index 8d28030..f04ab42 100755 --- a/cfg/jobs/forgejo.run +++ b/cfg/jobs/forgejo.run @@ -17,8 +17,7 @@ ALIAS="$UPSTREAM_NAME-$UPSTREAM_VER-$SERIAL" cd $WORKSPACE incus launch images:$IMAGE $CNAME --quiet -# Wait for network -timeout 30 bash -c "until incus exec $CNAME -- ping -c1 google.com &>/dev/null; do sleep 1; done" +wait_network $CNAME # Forgejo incus exec $CNAME -- mkdir /etc/esh diff --git a/cfg/jobs/mastodon.run b/cfg/jobs/mastodon.run index 913689f..00c5253 100755 --- a/cfg/jobs/mastodon.run +++ b/cfg/jobs/mastodon.run @@ -17,8 +17,7 @@ ALIAS="$UPSTREAM_NAME-$UPSTREAM_VER-$SERIAL" cd "$WORKSPACE" incus launch images:$IMAGE "$CNAME" --quiet -# Wait for network -timeout 30 bash -c "until incus exec $CNAME -- ping -c1 google.com &>/dev/null; do sleep 1; done" +wait_network $CNAME # Mastodon incus exec "$CNAME" -- bash -c ' diff --git a/cfg/jobs/navidrome.run b/cfg/jobs/navidrome.run index 8b25b1b..7258d28 100755 --- a/cfg/jobs/navidrome.run +++ b/cfg/jobs/navidrome.run @@ -17,8 +17,7 @@ ALIAS="$UPSTREAM_NAME-$UPSTREAM_VER-$SERIAL" cd $WORKSPACE incus launch images:$IMAGE $CNAME --quiet -# Wait network -sleep 5 +wait_network $CNAME # Navidrome incus exec $CNAME -- mkdir /etc/esh diff --git a/cfg/scripts/wait_network b/cfg/scripts/wait_network new file mode 100644 index 0000000..a31f043 --- /dev/null +++ b/cfg/scripts/wait_network @@ -0,0 +1,6 @@ +#!/bin/env bash +# Upstream doc: https://www.navidrome.org/docs/installation/linux/ +set -euxo pipefail + +CNAME="$1" +timeout 30 bash -c "until incus exec $CNAME -- ping -c1 google.com &>/dev/null; do sleep 1; done" From ce9b4790c73676f828974c7d8d053edd5d72e179 Mon Sep 17 00:00:00 2001 From: Benoit Date: Thu, 24 Oct 2024 18:22:09 +0900 Subject: [PATCH 2/5] Chmod 755 helper script wait_network --- cfg/scripts/wait_network | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 cfg/scripts/wait_network diff --git a/cfg/scripts/wait_network b/cfg/scripts/wait_network old mode 100644 new mode 100755 From 28ca298189e5641ecd01c24f2c67ce789fd12e24 Mon Sep 17 00:00:00 2001 From: Benoit Date: Thu, 24 Oct 2024 18:28:01 +0900 Subject: [PATCH 3/5] Navidrome: Wrap wget long line --- cfg/jobs/navidrome.run | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cfg/jobs/navidrome.run b/cfg/jobs/navidrome.run index 7258d28..50dc5db 100755 --- a/cfg/jobs/navidrome.run +++ b/cfg/jobs/navidrome.run @@ -26,7 +26,9 @@ incus exec $CNAME -- apt upgrade -y incus exec $CNAME -- apt install -y --no-install-recommends ffmpeg wget incus exec $CNAME -- useradd -m -s /sbin/nologin -d /var/lib/navidrome navidrome incus exec $CNAME -- install -d -o navidrome -g navidrome /opt/navidrome -incus exec $CNAME -- wget "https://github.com/navidrome/navidrome/releases/download/v${UPSTREAM_VER}/navidrome_${UPSTREAM_VER}_linux_amd64.tar.gz" -O /tmp/Navidrome.tar.gz +incus exec $CNAME -- wget -q \ + "https://github.com/navidrome/navidrome/releases/download/v${UPSTREAM_VER}/navidrome_${UPSTREAM_VER}_linux_amd64.tar.gz" \ + -O /tmp/Navidrome.tar.gz incus exec $CNAME -- tar -xvzf /tmp/Navidrome.tar.gz -C /opt/navidrome/ incus exec $CNAME -- chown -R navidrome:navidrome /opt/navidrome incus file push navidrome.toml $CNAME/etc/esh/ From ebebfcd4ed72860848ceb7a3d78cf6eadd8e6c7c Mon Sep 17 00:00:00 2001 From: Benoit Date: Thu, 24 Oct 2024 18:28:24 +0900 Subject: [PATCH 4/5] Navidrome: Remove depracted files --- cfg/jobs/navidrome.run | 2 -- 1 file changed, 2 deletions(-) diff --git a/cfg/jobs/navidrome.run b/cfg/jobs/navidrome.run index 50dc5db..5e81782 100755 --- a/cfg/jobs/navidrome.run +++ b/cfg/jobs/navidrome.run @@ -31,8 +31,6 @@ incus exec $CNAME -- wget -q \ -O /tmp/Navidrome.tar.gz incus exec $CNAME -- tar -xvzf /tmp/Navidrome.tar.gz -C /opt/navidrome/ incus exec $CNAME -- chown -R navidrome:navidrome /opt/navidrome -incus file push navidrome.toml $CNAME/etc/esh/ -incus file push setup.sh $CNAME/usr/local/bin/ incus file push navidrome.service $CNAME/etc/systemd/system/ # Syncthing From dc8a80cea4f5fd67c63a6e03bed658aabfbf321d Mon Sep 17 00:00:00 2001 From: Benoit Date: Thu, 24 Oct 2024 18:32:39 +0900 Subject: [PATCH 5/5] Navidrome: Add comment to manual steps --- cfg/jobs/navidrome.run | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cfg/jobs/navidrome.run b/cfg/jobs/navidrome.run index 5e81782..f54540b 100755 --- a/cfg/jobs/navidrome.run +++ b/cfg/jobs/navidrome.run @@ -40,6 +40,8 @@ incus exec $CNAME -- sed -i \ 's/\(ExecStart=\/usr\/bin\/syncthing serve --no-browser --no-restart --logflags=0\)/\1 --gui-address=0.0.0.0:8384/' \ /etc/systemd/system/syncthing\@.service +# Next manual steps https://www.navidrome.org/docs/installation/linux/#create-configuration-file + # Clean incus exec $CNAME -- \ rm -rf \