From 384dcd2ff1dbf4b0085edb7f12e4d15f00508e2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix=20Pi=C3=A9dallu?= Date: Mon, 13 Jun 2022 19:40:14 +0200 Subject: [PATCH] Fix restore by using YNH_APP_BASEDIR. Factorize code. Cleanup temporary directory. --- scripts/_common.sh | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 37b14c1..ad67e18 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -66,22 +66,15 @@ install_jellyfin_packages() { # In case of a new version, the url change from # https://repo.jellyfin.org/releases/server/debian/versions/stable/server/X.X.X/jellyfin-server_X.X.X-1_$architecture.deb to # https://repo.jellyfin.org/archive/debian/stable/X.X.X/server/jellyfin-server_X.X.X-1_$architecture.deb - src_url=$(grep 'SOURCE_URL=' "../conf/server.$debian.$architecture.src" | cut -d= -f2-) - if ! curl --output /dev/null --silent --head --fail "$src_url"; then - ynh_replace_string \ - --match_string="releases/server/debian/versions/stable/server/$version/" \ - --replace_string="archive/debian/stable/$version/server/" \ - --target_file="../conf/server.$debian.$architecture.src" - fi - - # Same for web - src_url=$(grep 'SOURCE_URL=' "../conf/web.$debian.$architecture.src" | cut -d= -f2-) - if ! curl --output /dev/null --silent --head --fail "$src_url"; then - ynh_replace_string \ - --match_string="releases/server/debian/versions/stable/web/$version/" \ - --replace_string="archive/debian/stable/$version/web/" \ - --target_file="../conf/web.$debian.$architecture.src" - fi + for pkg in web server; do + src_url=$(grep 'SOURCE_URL=' "$YNH_APP_BASEDIR/conf/$pkg.$debian.$architecture.src" | cut -d= -f2-) + if ! curl --output /dev/null --silent --head --fail "$src_url"; then + ynh_replace_string \ + --match_string="releases/server/debian/versions/stable/$pkg/$version/" \ + --replace_string="archive/debian/stable/$version/$pkg/" \ + --target_file="$YNH_APP_BASEDIR/conf/$pkg.$debian.$architecture.src" + fi + done # Create the temporary directory tempdir="$(mktemp -d)" @@ -96,6 +89,8 @@ install_jellyfin_packages() { ynh_exec_warn_less dpkg --force-confdef --force-confnew -i $tempdir/jellyfin-server.deb ynh_exec_warn_less dpkg --force-confdef --force-confnew -i $tempdir/jellyfin-web.deb + rm -rf "$tempdir" + # The doc says it should be called only once, # but the code says multiple calls are supported. # Also, they're already installed so that should be quasi instantaneous.