mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-06-21 06:51:19 +02:00
refactor(ct): migrate manual update backups to create_backup (batch 1)
Replace ad-hoc mv/cp .bak patterns with create_backup/restore_backup across 58 update scripts so failed updates can roll back via the shared ERR trap. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+2
-12
@@ -35,21 +35,11 @@ function update_script() {
|
||||
systemctl stop ezbookkeeping
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up configuration"
|
||||
mkdir -p /opt/ezbookkeeping-backup
|
||||
cp /opt/ezbookkeeping/conf/ezbookkeeping.ini /opt/ezbookkeeping-backup/
|
||||
cp -r /opt/ezbookkeeping/data /opt/ezbookkeeping-backup/data/
|
||||
cp -r /opt/ezbookkeeping/storage /opt/ezbookkeeping-backup/storage/
|
||||
msg_ok "Backed up configuration"
|
||||
create_backup /opt/ezbookkeeping/data /opt/ezbookkeeping/storage
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "ezbookkeeping" "mayswind/ezbookkeeping" "prebuild" "latest" "/opt/ezbookkeeping" "ezbookkeeping-*-linux-$(arch_resolve).tar.gz"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring configuration"
|
||||
cp -rf /opt/ezbookkeeping-backup/ezbookkeeping.ini /opt/ezbookkeeping/conf/
|
||||
cp -rf /opt/ezbookkeeping-backup/data/. /opt/ezbookkeeping/data/
|
||||
cp -rf /opt/ezbookkeeping-backup/storage/. /opt/ezbookkeeping/storage/
|
||||
rm -rf /opt/ezbookkeeping-backup
|
||||
msg_ok "Restored configuration"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start ezbookkeeping
|
||||
|
||||
+3
-2
@@ -35,9 +35,10 @@ function update_script() {
|
||||
systemctl stop fireshare
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
mv /opt/fireshare/fireshare.env /opt
|
||||
create_backup /opt/fireshare/fireshare.env
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "fireshare" "ShaneIsrael/fireshare" "tarball"
|
||||
mv /opt/fireshare.env /opt/fireshare
|
||||
restore_backup
|
||||
rm -f /usr/local/bin/fireshare
|
||||
|
||||
msg_info "Updating Fireshare"
|
||||
|
||||
+2
-10
@@ -34,12 +34,10 @@ function update_script() {
|
||||
systemctl stop flatnotes
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Configuration and Data"
|
||||
cp /opt/flatnotes/.env /opt/flatnotes.env
|
||||
cp -r /opt/flatnotes/data /opt/flatnotes_data_backup
|
||||
msg_ok "Backed up Configuration and Data"
|
||||
create_backup /opt/flatnotes/data
|
||||
|
||||
fetch_and_deploy_gh_release "flatnotes" "dullage/flatnotes" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Flatnotes"
|
||||
cd /opt/flatnotes/client
|
||||
@@ -52,12 +50,6 @@ function update_script() {
|
||||
$STD /usr/local/bin/uv sync
|
||||
msg_ok "Updated Flatnotes"
|
||||
|
||||
msg_info "Restoring Configuration and Data"
|
||||
cp /opt/flatnotes.env /opt/flatnotes/.env
|
||||
cp -r /opt/flatnotes_data_backup/. /opt/flatnotes/data
|
||||
rm -f /opt/flatnotes.env
|
||||
rm -r /opt/flatnotes_data_backup
|
||||
msg_ok "Restored Configuration and Data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start flatnotes
|
||||
|
||||
+2
-14
@@ -41,20 +41,11 @@ function update_script() {
|
||||
systemctl stop apache2
|
||||
msg_ok "Stopped Apache2"
|
||||
|
||||
msg_info "Backing up FreshRSS"
|
||||
mv /opt/freshrss /opt/freshrss-backup
|
||||
msg_ok "Backup Created"
|
||||
create_backup /opt/freshrss /opt/freshrss/data /opt/freshrss/extensions
|
||||
|
||||
fetch_and_deploy_gh_release "freshrss" "FreshRSS/FreshRSS" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring data and configuration"
|
||||
if [[ -d /opt/freshrss-backup/data ]]; then
|
||||
cp -a /opt/freshrss-backup/data/. /opt/freshrss/data/
|
||||
fi
|
||||
if [[ -d /opt/freshrss-backup/extensions ]]; then
|
||||
cp -a /opt/freshrss-backup/extensions/. /opt/freshrss/extensions/
|
||||
fi
|
||||
msg_ok "Data Restored"
|
||||
|
||||
msg_info "Setting permissions"
|
||||
chown -R www-data:www-data /opt/freshrss
|
||||
@@ -66,9 +57,6 @@ function update_script() {
|
||||
systemctl start apache2
|
||||
msg_ok "Started Apache2"
|
||||
|
||||
msg_info "Cleaning up backup"
|
||||
rm -rf /opt/freshrss-backup
|
||||
msg_ok "Cleaned up backup"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
+2
-9
@@ -35,19 +35,12 @@ function update_script() {
|
||||
systemctl stop ghostfolio
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
tar -czf "/opt/ghostfolio_backup_$(date +%F).tar.gz" \
|
||||
-C /opt \
|
||||
--exclude="ghostfolio/node_modules" \
|
||||
--exclude="ghostfolio/dist" \
|
||||
ghostfolio
|
||||
mv /opt/ghostfolio/.env /opt/env.backup
|
||||
msg_ok "Backup Created"
|
||||
create_backup /opt/ghostfolio/.env
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "ghostfolio" "ghostfolio/ghostfolio" "tarball" "latest" "/opt/ghostfolio"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Ghostfolio"
|
||||
mv /opt/env.backup /opt/ghostfolio/.env
|
||||
sed -i -E '/^DATABASE_URL=/ s/[?&]sslmode=prefer//g' /opt/ghostfolio/.env
|
||||
cd /opt/ghostfolio
|
||||
$STD npm ci
|
||||
|
||||
+2
-13
@@ -38,22 +38,11 @@ function update_script() {
|
||||
systemctl stop actions-runner
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up runner configuration"
|
||||
BACKUP_DIR="/opt/actions-runner.backup"
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
for f in .runner .credentials .credentials_rsaparams .env .path; do
|
||||
[[ -f /opt/actions-runner/$f ]] && cp -a /opt/actions-runner/$f "$BACKUP_DIR/"
|
||||
done
|
||||
msg_ok "Backed up configuration"
|
||||
create_backup /opt/actions-runner/$f
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "actions-runner" "actions/runner" "prebuild" "latest" "/opt/actions-runner" "actions-runner-linux-x64-*.tar.gz"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring runner configuration"
|
||||
for f in .runner .credentials .credentials_rsaparams .env .path; do
|
||||
[[ -f "$BACKUP_DIR/$f" ]] && cp -a "$BACKUP_DIR/$f" /opt/actions-runner/
|
||||
done
|
||||
rm -rf "$BACKUP_DIR"
|
||||
msg_ok "Restored configuration"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start actions-runner
|
||||
|
||||
+2
-9
@@ -35,18 +35,11 @@ function update_script() {
|
||||
systemctl stop gogs
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/gogs/custom /opt/gogs_custom_backup
|
||||
cp -r /opt/gogs/data /opt/gogs_data_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/gogs/custom /opt/gogs/data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gogs" "gogs/gogs" "prebuild" "latest" "/opt/gogs" "gogs_*_linux_amd64.tar.gz"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/gogs_custom_backup/. /opt/gogs/custom
|
||||
cp -r /opt/gogs_data_backup/. /opt/gogs/data
|
||||
rm -rf /opt/gogs_custom_backup /opt/gogs_data_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start gogs
|
||||
|
||||
+2
-4
@@ -35,12 +35,10 @@ function update_script() {
|
||||
systemctl stop healthchecks
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up existing installation"
|
||||
BACKUP="/opt/healthchecks-backup-$(date +%F-%H%M)"
|
||||
cp -a /opt/healthchecks "$BACKUP"
|
||||
msg_ok "Backup created at $BACKUP"
|
||||
create_backup /opt/healthchecks
|
||||
|
||||
fetch_and_deploy_gh_release "healthchecks" "healthchecks/healthchecks" "tarball"
|
||||
restore_backup
|
||||
|
||||
cd /opt/healthchecks
|
||||
if [[ -d venv ]]; then
|
||||
|
||||
+3
-16
@@ -35,15 +35,10 @@ function update_script() {
|
||||
systemctl stop homelable
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Configuration and Data"
|
||||
cp /opt/homelable/backend/.env /opt/homelable.env.bak
|
||||
cp -r /opt/homelable/data /opt/homelable_data_bak
|
||||
if [[ -f /opt/homelable/mcp/.env ]]; then
|
||||
cp -a /opt/homelable/mcp/.env /opt/homelable-mcp.env.bak
|
||||
fi
|
||||
msg_ok "Backed up Configuration and Data"
|
||||
create_backup /opt/homelable/backend/.env /opt/homelable/data /opt/homelable/mcp/.env
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homelable" "Pouzor/homelable" "tarball" "latest" "/opt/homelable"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Python Dependencies"
|
||||
cd /opt/homelable/backend
|
||||
@@ -57,17 +52,9 @@ function update_script() {
|
||||
$STD npm run build
|
||||
msg_ok "Rebuilt Frontend"
|
||||
|
||||
msg_info "Restoring Configuration and Data"
|
||||
cp /opt/homelable.env.bak /opt/homelable/backend/.env
|
||||
cp -r /opt/homelable_data_bak/. /opt/homelable/data/
|
||||
rm -f /opt/homelable.env.bak
|
||||
rm -rf /opt/homelable_data_bak
|
||||
msg_ok "Restored Configuration and Data"
|
||||
|
||||
if [[ -f /opt/homelable-mcp.env.bak ]]; then
|
||||
if [[ -f /opt/homelable/mcp/.env ]]; then
|
||||
msg_info "Restoring MCP Server"
|
||||
cp -a /opt/homelable-mcp.env.bak /opt/homelable/mcp/.env
|
||||
rm -f /opt/homelable-mcp.env.bak
|
||||
MCP_OWNER=$(stat -c '%U' /opt/homelable/mcp/.env)
|
||||
cd /opt/homelable/mcp
|
||||
$STD uv venv --clear /opt/homelable/mcp/.venv
|
||||
|
||||
+3
-15
@@ -37,20 +37,10 @@ function update_script() {
|
||||
systemctl stop homepage
|
||||
msg_ok "Stopped service"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
cp /opt/homepage/.env /opt/homepage.env
|
||||
cp -r /opt/homepage/config /opt/homepage_config_backup
|
||||
[[ -d /opt/homepage/public/images ]] && cp -r /opt/homepage/public/images /opt/homepage_images_backup
|
||||
[[ -d /opt/homepage/public/icons ]] && cp -r /opt/homepage/public/icons /opt/homepage_icons_backup
|
||||
msg_ok "Created Backup"
|
||||
|
||||
create_backup /opt/homepage/.env /opt/homepage/config /opt/homepage/public/images /opt/homepage/public/icons
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homepage" "gethomepage/homepage" "tarball"
|
||||
|
||||
msg_info "Restoring Backup"
|
||||
mv /opt/homepage.env /opt/homepage
|
||||
rm -rf /opt/homepage/config
|
||||
mv /opt/homepage_config_backup /opt/homepage/config
|
||||
msg_ok "Restored Backup"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Homepage (Patience)"
|
||||
RELEASE=$(get_latest_github_release "gethomepage/homepage")
|
||||
@@ -63,8 +53,6 @@ function update_script() {
|
||||
export NEXT_PUBLIC_BUILDTIME=$(curl -fsSL https://api.github.com/repos/gethomepage/homepage/releases/latest | jq -r '.published_at')
|
||||
export NEXT_TELEMETRY_DISABLED=1
|
||||
$STD pnpm build
|
||||
[[ -d /opt/homepage_images_backup ]] && mv /opt/homepage_images_backup /opt/homepage/public/images
|
||||
[[ -d /opt/homepage_icons_backup ]] && mv /opt/homepage_icons_backup /opt/homepage/public/icons
|
||||
msg_ok "Updated Homepage"
|
||||
|
||||
msg_info "Starting service"
|
||||
|
||||
+2
-7
@@ -34,24 +34,19 @@ function update_script() {
|
||||
systemctl stop apache2
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up current HortusFox installation"
|
||||
cd /opt
|
||||
mv /opt/hortusfox/ /opt/hortusfox-backup
|
||||
msg_ok "Backed up current HortusFox installation"
|
||||
create_backup /opt/hortusfox/.env /opt/hortusfox/public/img
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "hortusfox" "danielbrendel/hortusfox-web" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating HortusFox"
|
||||
cd /opt/hortusfox
|
||||
cp /opt/hortusfox-backup/.env /opt/hortusfox/.env
|
||||
cp -a /opt/hortusfox-backup/public/img/. /opt/hortusfox/public/img/
|
||||
export COMPOSER_ALLOW_SUPERUSER=1
|
||||
$STD composer install --no-dev --optimize-autoloader
|
||||
$STD php asatru migrate:upgrade
|
||||
$STD php asatru plants:attributes
|
||||
$STD php asatru calendar:classes
|
||||
chown -R www-data:www-data /opt/hortusfox
|
||||
rm -r /opt/hortusfox-backup
|
||||
msg_ok "Updated HortusFox"
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
+2
-8
@@ -35,11 +35,10 @@ function update_script() {
|
||||
systemctl stop immichframe
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Configuration"
|
||||
cp -r /opt/immichframe/Config /tmp/immichframe_config.bak
|
||||
msg_ok "Backed up Configuration"
|
||||
create_backup /opt/immichframe/Config
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "immichframe" "immichFrame/ImmichFrame" "tarball" "latest" "/tmp/immichframe"
|
||||
restore_backup
|
||||
|
||||
msg_info "Setting up ImmichFrame"
|
||||
cd /tmp/immichframe
|
||||
@@ -57,11 +56,6 @@ function update_script() {
|
||||
rm -rf /tmp/immichframe
|
||||
msg_ok "Setup ImmichFrame"
|
||||
|
||||
msg_info "Restoring Configuration"
|
||||
cp -r /tmp/immichframe_config.bak/* /opt/immichframe/Config/
|
||||
rm -rf /tmp/immichframe_config.bak
|
||||
chown -R immichframe:immichframe /opt/immichframe
|
||||
msg_ok "Restored Configuration"
|
||||
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
+2
-9
@@ -35,21 +35,14 @@ function update_script() {
|
||||
systemctl stop supervisor nginx php8.4-fpm
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
mkdir -p /tmp/invoiceninja_backup
|
||||
cp /opt/invoiceninja/.env /tmp/invoiceninja_backup/
|
||||
create_backup /opt/invoiceninja/storage /opt/invoiceninja/public/storage
|
||||
cp -r /opt/invoiceninja/storage /tmp/invoiceninja_backup/ 2>/dev/null || true
|
||||
cp -r /opt/invoiceninja/public/storage /tmp/invoiceninja_backup/public_storage 2>/dev/null || true
|
||||
msg_ok "Created Backup"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "invoiceninja" "invoiceninja/invoiceninja" "prebuild" "latest" "/opt/invoiceninja" "invoiceninja.tar.gz"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /tmp/invoiceninja_backup/.env /opt/invoiceninja/
|
||||
cp -r /tmp/invoiceninja_backup/storage/* /opt/invoiceninja/storage/ 2>/dev/null || true
|
||||
cp -r /tmp/invoiceninja_backup/public_storage/* /opt/invoiceninja/public/storage/ 2>/dev/null || true
|
||||
rm -rf /tmp/invoiceninja_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Running Migrations"
|
||||
cd /opt/invoiceninja
|
||||
|
||||
+2
-10
@@ -35,19 +35,11 @@ function update_script() {
|
||||
systemctl stop caddy
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp /opt/invoiceshelf/.env /opt/invoiceshelf.env.bak
|
||||
cp -r /opt/invoiceshelf/storage /opt/invoiceshelf_storage_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/invoiceshelf/storage
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "invoiceshelf" "InvoiceShelf/InvoiceShelf" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /opt/invoiceshelf.env.bak /opt/invoiceshelf/.env
|
||||
rm -f /opt/invoiceshelf.env.bak
|
||||
cp -r /opt/invoiceshelf_storage_backup/. /opt/invoiceshelf/storage
|
||||
rm -rf /opt/invoiceshelf_storage_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating Application"
|
||||
cd /opt/invoiceshelf
|
||||
|
||||
+2
-10
@@ -35,20 +35,12 @@ function update_script() {
|
||||
systemctl stop jotty
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up configuration & data"
|
||||
cp /opt/jotty/.env /opt/app.env
|
||||
[[ -d /opt/jotty/data ]] && mv /opt/jotty/data /opt/data
|
||||
[[ -d /opt/jotty/config ]] && mv /opt/jotty/config /opt/config
|
||||
msg_ok "Backed up configuration & data"
|
||||
create_backup /opt/jotty/data /opt/jotty/config
|
||||
|
||||
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jotty" "fccview/jotty" "prebuild" "latest" "/opt/jotty" "jotty_*_prebuild.tar.gz"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring configuration & data"
|
||||
mv /opt/app.env /opt/jotty/.env
|
||||
[[ -d /opt/data ]] && mv /opt/data /opt/jotty/data
|
||||
[[ -d /opt/config ]] && cp -a /opt/config/* /opt/jotty/config && rm -rf /opt/config
|
||||
msg_ok "Restored configuration & data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start jotty
|
||||
|
||||
+2
-9
@@ -35,21 +35,14 @@ function update_script() {
|
||||
systemctl stop nginx php8.4-fpm
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
mkdir -p /tmp/koel_backup
|
||||
cp /opt/koel/.env /tmp/koel_backup/
|
||||
create_backup /opt/koel/storage /opt/koel/public/img
|
||||
cp -r /opt/koel/storage /tmp/koel_backup/ 2>/dev/null || true
|
||||
cp -r /opt/koel/public/img /tmp/koel_backup/ 2>/dev/null || true
|
||||
msg_ok "Created Backup"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "koel" "koel/koel" "prebuild" "latest" "/opt/koel" "koel-*.tar.gz"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /tmp/koel_backup/.env /opt/koel/
|
||||
cp -r /tmp/koel_backup/storage/* /opt/koel/storage/ 2>/dev/null || true
|
||||
cp -r /tmp/koel_backup/img/* /opt/koel/public/img/ 2>/dev/null || true
|
||||
rm -rf /tmp/koel_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Running Migrations"
|
||||
cd /opt/koel
|
||||
|
||||
+2
-11
@@ -31,22 +31,13 @@ function update_script() {
|
||||
fi
|
||||
setup_mariadb
|
||||
if check_for_gh_release "leantime" "Leantime/leantime"; then
|
||||
msg_info "Creating Backup"
|
||||
mariadb-dump leantime >"/opt/leantime_db_backup_$(date +%F).sql"
|
||||
tar -czf "/opt/leantime_backup_$(date +%F).tar.gz" "/opt/leantime"
|
||||
mv /opt/leantime /opt/leantime_bak
|
||||
msg_ok "Backup Created"
|
||||
create_backup /opt/leantime
|
||||
|
||||
fetch_and_deploy_gh_release "leantime" "Leantime/leantime" "prebuild" "latest" "/opt/leantime" Leantime*.tar.gz
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Config & Permissions"
|
||||
mv /opt/leantime_bak/config/.env /opt/leantime/config/.env
|
||||
chown -R www-data:www-data "/opt/leantime"
|
||||
chmod -R 750 "/opt/leantime"
|
||||
msg_ok "Restored Config & Permissions"
|
||||
|
||||
msg_info "Removing Backup"
|
||||
rm -rf /opt/leantime_bak
|
||||
msg_ok "Removed Backup"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
|
||||
+2
-10
@@ -35,19 +35,11 @@ function update_script() {
|
||||
systemctl stop nginx linkding linkding-tasks
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/linkding/data /opt/linkding_data_backup
|
||||
cp /opt/linkding/.env /opt/linkding_env_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/linkding/data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "linkding" "sissbruecker/linkding" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/linkding_data_backup/. /opt/linkding/data
|
||||
cp /opt/linkding_env_backup /opt/linkding/.env
|
||||
rm -rf /opt/linkding_data_backup /opt/linkding_env_backup
|
||||
ln -sf /usr/lib/x86_64-linux-gnu/mod_icu.so /opt/linkding/libicu.so
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating LinkDing"
|
||||
cd /opt/linkding
|
||||
|
||||
+2
-7
@@ -35,13 +35,10 @@ function update_script() {
|
||||
|
||||
RUST_CRATES="monolith" setup_rust
|
||||
|
||||
msg_info "Backing up data"
|
||||
mv /opt/linkwarden/.env /opt/.env
|
||||
[ -d /opt/linkwarden/data ] && mv /opt/linkwarden/data /opt/data.bak
|
||||
rm -rf /opt/linkwarden
|
||||
msg_ok "Backed up data"
|
||||
create_backup /opt/linkwarden/.env /opt/linkwarden/data
|
||||
|
||||
fetch_and_deploy_gh_release "linkwarden" "linkwarden/linkwarden" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Linkwarden"
|
||||
cd /opt/linkwarden
|
||||
@@ -60,11 +57,9 @@ function update_script() {
|
||||
$STD yarn
|
||||
$STD npx playwright install-deps
|
||||
$STD npx playwright install
|
||||
mv /opt/.env /opt/linkwarden/.env
|
||||
$STD yarn prisma:generate
|
||||
$STD yarn web:build
|
||||
$STD yarn prisma:deploy
|
||||
[ -d /opt/data.bak ] && mv /opt/data.bak /opt/linkwarden/data
|
||||
rm -rf ~/.cargo/registry ~/.cargo/git ~/.cargo/.package-cache
|
||||
rm -rf /root/.cache/yarn
|
||||
rm -rf /opt/linkwarden/.next/cache
|
||||
|
||||
+2
-6
@@ -33,17 +33,13 @@ function update_script() {
|
||||
systemctl stop listmonk
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up data"
|
||||
mv /opt/listmonk/ /opt/listmonk-backup
|
||||
msg_ok "Backed up data"
|
||||
create_backup /opt/listmonk/config.toml /opt/listmonk/uploads
|
||||
|
||||
fetch_and_deploy_gh_release "listmonk" "knadh/listmonk" "prebuild" "latest" "/opt/listmonk" "listmonk*linux_amd64.tar.gz"
|
||||
restore_backup
|
||||
|
||||
msg_info "Configuring listmonk"
|
||||
mv /opt/listmonk-backup/config.toml /opt/listmonk/config.toml
|
||||
mv /opt/listmonk-backup/uploads /opt/listmonk/uploads
|
||||
$STD /opt/listmonk/listmonk --upgrade --yes --config /opt/listmonk/config.toml
|
||||
rm -rf /opt/listmonk-backup/
|
||||
msg_ok "Configured listmonk"
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
+2
-15
@@ -33,23 +33,10 @@ function update_script() {
|
||||
systemctl stop lubelogger
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up data"
|
||||
mkdir -p /tmp/lubeloggerData/data
|
||||
cp /opt/lubelogger/appsettings.json /tmp/lubeloggerData/appsettings.json
|
||||
cp -r /opt/lubelogger/data/ /tmp/lubeloggerData/
|
||||
|
||||
# Lubelogger has moved multiples folders to the 'data' folder, and we need to move them before the update to keep the user data
|
||||
# Github Discussion: https://github.com/hargata/lubelog/discussions/787
|
||||
[[ -e /opt/lubelogger/config ]] && cp -r /opt/lubelogger/config /tmp/lubeloggerData/data/
|
||||
[[ -e /opt/lubelogger/wwwroot/translations ]] && cp -r /opt/lubelogger/wwwroot/translations /tmp/lubeloggerData/data/
|
||||
[[ -e /opt/lubelogger/wwwroot/documents ]] && cp -r /opt/lubelogger/wwwroot/documents /tmp/lubeloggerData/data/
|
||||
[[ -e /opt/lubelogger/wwwroot/images ]] && cp -r /opt/lubelogger/wwwroot/images /tmp/lubeloggerData/data/
|
||||
[[ -e /opt/lubelogger/wwwroot/temp ]] && cp -r /opt/lubelogger/wwwroot/temp /tmp/lubeloggerData/data/
|
||||
[[ -e /opt/lubelogger/log ]] && cp -r /opt/lubelogger/log /tmp/lubeloggerData/
|
||||
rm -rf /opt/lubelogger
|
||||
msg_ok "Backed up data"
|
||||
create_backup /opt/lubelogger/data/
|
||||
|
||||
fetch_and_deploy_gh_release "lubelogger" "hargata/lubelog" "prebuild" "latest" "/opt/lubelogger" "LubeLogger*linux_x64.zip"
|
||||
restore_backup
|
||||
|
||||
msg_info "Configuring LubeLogger"
|
||||
chmod 700 /opt/lubelogger/CarCareTracker
|
||||
|
||||
+2
-10
@@ -35,19 +35,11 @@ function update_script() {
|
||||
systemctl stop caddy
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp /opt/lychee/.env /opt/lychee.env.bak
|
||||
cp -r /opt/lychee/storage /opt/lychee_storage_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/lychee/storage
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "lychee" "LycheeOrg/Lychee" "prebuild" "latest" "/opt/lychee" "Lychee.zip"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /opt/lychee.env.bak /opt/lychee/.env
|
||||
rm -f /opt/lychee.env.bak
|
||||
cp -r /opt/lychee_storage_backup/. /opt/lychee/storage
|
||||
rm -rf /opt/lychee_storage_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating Application"
|
||||
cd /opt/lychee
|
||||
|
||||
+3
-7
@@ -33,19 +33,15 @@ function update_script() {
|
||||
systemctl stop mafl
|
||||
msg_ok "Service stopped"
|
||||
|
||||
msg_info "Backing up data"
|
||||
mkdir -p /opt/mafl-backup/data
|
||||
mv /opt/mafl/data /opt/mafl-backup/data
|
||||
rm -rf /opt/mafl
|
||||
msg_ok "Backup complete"
|
||||
create_backup /opt/mafl/data
|
||||
|
||||
fetch_and_deploy_gh_release "mafl" "hywax/mafl" "tarball"
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "mafl" "hywax/mafl" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Mafl"
|
||||
cd /opt/mafl
|
||||
$STD yarn install
|
||||
$STD yarn build
|
||||
mv /opt/mafl-backup/data /opt/mafl/data
|
||||
msg_ok "Mafl updated"
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
+2
-13
@@ -35,26 +35,15 @@ function update_script() {
|
||||
|
||||
NODE_VERSION="24" setup_nodejs
|
||||
|
||||
msg_info "Backing up data"
|
||||
rm -rf /opt/magicmirror-backup
|
||||
mkdir /opt/magicmirror-backup
|
||||
cp /opt/magicmirror/config/config.js /opt/magicmirror-backup
|
||||
if [[ -f /opt/magicmirror/css/custom.css ]]; then
|
||||
cp /opt/magicmirror/css/custom.css /opt/magicmirror-backup
|
||||
fi
|
||||
cp -r /opt/magicmirror/modules /opt/magicmirror-backup
|
||||
msg_ok "Backed up data"
|
||||
create_backup /opt/magicmirror/config/config.js /opt/magicmirror/css/custom.css /opt/magicmirror/modules
|
||||
|
||||
fetch_and_deploy_gh_release "magicmirror" "MagicMirrorOrg/MagicMirror" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Configuring MagicMirror"
|
||||
cd /opt/magicmirror
|
||||
sed -i -E 's/("postinstall": )".*"/\1""/; s/("prepare": )".*"/\1""/' package.json
|
||||
$STD npm run install-mm
|
||||
cp /opt/magicmirror-backup/config.js /opt/magicmirror/config/
|
||||
if [[ -f /opt/magicmirror-backup/custom.css ]]; then
|
||||
cp /opt/magicmirror-backup/custom.css /opt/magicmirror/css/
|
||||
fi
|
||||
msg_ok "Configured MagicMirror"
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
+2
-7
@@ -36,12 +36,11 @@ function update_script() {
|
||||
systemctl stop mail-archiver
|
||||
msg_ok "Stopped Mail-Archiver"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
cp /opt/mail-archiver/appsettings.json /opt/mail-archiver/.env /opt/
|
||||
[[ -d /opt/mail-archiver/DataProtection-Keys ]] && cp -r /opt/mail-archiver/DataProtection-Keys /opt
|
||||
create_backup /opt/mail-archiver/DataProtection-Keys
|
||||
msg_ok "Created Backup"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "mail-archiver" "s1t5/mail-archiver" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Mail-Archiver"
|
||||
mv /opt/mail-archiver /opt/mail-archiver-build
|
||||
@@ -51,10 +50,6 @@ function update_script() {
|
||||
rm -rf /opt/mail-archiver-build
|
||||
msg_ok "Updated Mail-Archiver"
|
||||
|
||||
msg_info "Restoring Backup"
|
||||
cp /opt/appsettings.json /opt/.env /opt/mail-archiver
|
||||
[[ -d /opt/DataProtection-Keys ]] && cp -r /opt/DataProtection-Keys /opt/mail-archiver/
|
||||
msg_ok "Restored Backup"
|
||||
|
||||
msg_info "Starting Mail-Archiver"
|
||||
systemctl start mail-archiver
|
||||
|
||||
+2
-14
@@ -37,14 +37,10 @@ function update_script() {
|
||||
systemctl stop manyfold.target manyfold-rails.1 manyfold-default_worker.1 manyfold-performance_worker.1
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
CURRENT_VERSION=$(grep -oP 'APP_VERSION=\K[^ ]+' /opt/manyfold/.env || echo "unknown")
|
||||
cp -r /opt/manyfold/app/storage /opt/manyfold_storage_backup 2>/dev/null || true
|
||||
cp -r /opt/manyfold/app/tmp /opt/manyfold_tmp_backup 2>/dev/null || true
|
||||
$STD tar -czf "/opt/manyfold_${CURRENT_VERSION}_backup.tar.gz" -C /opt/manyfold app
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/manyfold/app/storage /opt/manyfold/app/tmp
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "manyfold" "manyfold3d/manyfold" "tarball" "latest" "/opt/manyfold/app"
|
||||
restore_backup
|
||||
|
||||
msg_info "Configuring Manyfold"
|
||||
RUBY_INSTALL_VERSION=$(cat /opt/manyfold/app/.ruby-version)
|
||||
@@ -55,14 +51,6 @@ function update_script() {
|
||||
|
||||
RUBY_VERSION=${RUBY_INSTALL_VERSION} RUBY_INSTALL_RAILS="true" HOME=/home/manyfold setup_ruby
|
||||
|
||||
msg_info "Restoring Data"
|
||||
rm -rf /opt/manyfold/app/{storage,tmp}
|
||||
cp -r /opt/manyfold_storage_backup /opt/manyfold/app/storage 2>/dev/null || true
|
||||
cp -r /opt/manyfold_tmp_backup /opt/manyfold/app/tmp 2>/dev/null || true
|
||||
chown -R manyfold:manyfold {/home/manyfold,/opt/manyfold}
|
||||
chown -R manyfold:manyfold /opt/manyfold/app/storage /opt/manyfold/app/tmp /opt/manyfold/app/config
|
||||
rm -rf /opt/manyfold_storage_backup /opt/manyfold_tmp_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Installing Manyfold"
|
||||
$STD npm install --global corepack
|
||||
|
||||
+2
-19
@@ -35,28 +35,11 @@ function update_script() {
|
||||
systemctl stop caddy
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
[[ -f /opt/matomo/config/config.ini.php ]] && cp /opt/matomo/config/config.ini.php /opt/matomo_config.bak
|
||||
[[ -d /opt/matomo/misc/user ]] && cp -r /opt/matomo/misc/user /opt/matomo_user_backup
|
||||
[[ -f /root/matomo.creds ]] && cp /root/matomo.creds /opt/matomo_db_creds.bak
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/matomo/misc/user
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "matomo" "matomo-org/matomo" "prebuild" "latest" "/opt/matomo" "matomo-*.zip"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
if [[ -f /opt/matomo_config.bak ]]; then
|
||||
mkdir -p /opt/matomo/config
|
||||
cp /opt/matomo_config.bak /opt/matomo/config/config.ini.php
|
||||
fi
|
||||
if [[ -d /opt/matomo_user_backup ]]; then
|
||||
mkdir -p /opt/matomo/misc/user
|
||||
cp -r /opt/matomo_user_backup/. /opt/matomo/misc/user
|
||||
fi
|
||||
[[ -f /opt/matomo_db_creds.bak ]] && cp /opt/matomo_db_creds.bak /root/matomo.creds
|
||||
rm -f /opt/matomo_config.bak /opt/matomo_db_creds.bak
|
||||
rm -rf /opt/matomo_user_backup
|
||||
chown -R www-data:www-data /opt/matomo
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Starting Services"
|
||||
systemctl start caddy
|
||||
|
||||
+2
-3
@@ -37,12 +37,11 @@ function update_script() {
|
||||
systemctl stop mealie
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Configuration"
|
||||
cp -f /opt/mealie/mealie.env /opt/mealie.env
|
||||
[[ -f /opt/mealie/start.sh ]] && cp -f /opt/mealie/start.sh /opt/mealie.start.sh
|
||||
create_backup /opt/mealie/mealie.env /opt/mealie/start.sh
|
||||
msg_ok "Backup completed"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "mealie" "mealie-recipes/mealie" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Configuration"
|
||||
mv -f /opt/mealie.env /opt/mealie/mealie.env
|
||||
|
||||
+2
-12
@@ -48,14 +48,10 @@ function update_script() {
|
||||
systemctl stop metube
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Old Installation"
|
||||
if [[ -d /opt/metube_bak ]]; then
|
||||
rm -rf /opt/metube_bak
|
||||
fi
|
||||
mv /opt/metube /opt/metube_bak
|
||||
msg_ok "Backup created"
|
||||
create_backup /opt/metube
|
||||
|
||||
fetch_and_deploy_gh_release "metube" "alexta69/metube" "tarball" "latest"
|
||||
restore_backup
|
||||
|
||||
msg_info "Building Frontend"
|
||||
cd /opt/metube/ui
|
||||
@@ -75,12 +71,6 @@ function update_script() {
|
||||
$STD uv sync
|
||||
msg_ok "Installed Backend"
|
||||
|
||||
msg_info "Restoring .env"
|
||||
if [[ -f /opt/metube_bak/.env ]]; then
|
||||
cp /opt/metube_bak/.env /opt/metube/.env
|
||||
fi
|
||||
rm -rf /opt/metube_bak
|
||||
msg_ok "Restored .env"
|
||||
|
||||
if grep -q 'pipenv' /etc/systemd/system/metube.service; then
|
||||
msg_info "Patching systemd Service"
|
||||
|
||||
+2
-10
@@ -35,13 +35,11 @@ function update_script() {
|
||||
systemctl stop musicseerr
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -a /opt/musicseerr/backend/config /opt/musicseerr_config_backup
|
||||
cp -a /opt/musicseerr/backend/cache /opt/musicseerr_cache_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/musicseerr/backend/config /opt/musicseerr/backend/cache
|
||||
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "musicseerr" "HabiRabbu/Musicseerr" "tarball"
|
||||
restore_backup
|
||||
NODE_VERSION="25" NODE_MODULE="pnpm@10.33.0" setup_nodejs
|
||||
|
||||
msg_info "Building Frontend"
|
||||
@@ -60,12 +58,6 @@ function update_script() {
|
||||
cp -r /opt/musicseerr/frontend/build /opt/musicseerr/backend/static
|
||||
msg_ok "Updated Application"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
rm -rf /opt/musicseerr/backend/config /opt/musicseerr/backend/cache
|
||||
cp -a /opt/musicseerr_config_backup/. /opt/musicseerr/backend/config/
|
||||
cp -a /opt/musicseerr_cache_backup/. /opt/musicseerr/backend/cache/
|
||||
rm -rf /opt/musicseerr_config_backup /opt/musicseerr_cache_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start musicseerr
|
||||
|
||||
+2
-8
@@ -30,9 +30,7 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
|
||||
msg_info "Backing up Configuration"
|
||||
cp -a /usr/local/nagios/etc /opt/nagios-etc-backup
|
||||
msg_ok "Backed up Configuration"
|
||||
create_backup /usr/local/nagios/etc
|
||||
|
||||
if check_for_gh_release "nagios" "NagiosEnterprises/nagioscore"; then
|
||||
msg_info "Stopping Nagios"
|
||||
@@ -40,6 +38,7 @@ function update_script() {
|
||||
msg_ok "Stopped Nagios"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "nagios" "NagiosEnterprises/nagioscore" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Building Nagios Core"
|
||||
cd /opt/nagios
|
||||
@@ -73,11 +72,6 @@ function update_script() {
|
||||
msg_ok "Built Nagios Plugins"
|
||||
fi
|
||||
|
||||
msg_info "Restoring Configuration"
|
||||
rm -rf /usr/local/nagios/etc
|
||||
cp -a /opt/nagios-etc-backup /usr/local/nagios/etc
|
||||
rm -rf /opt/nagios-etc-backup
|
||||
msg_ok "Restored Configuration"
|
||||
msg_ok "Updated successfully!"
|
||||
exit
|
||||
}
|
||||
|
||||
+2
-10
@@ -35,12 +35,10 @@ function update_script() {
|
||||
systemctl stop nametag
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp /opt/nametag/.env /opt/nametag.env.bak
|
||||
cp -r /opt/nametag/data /opt/nametag_data_bak
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/nametag/data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "nametag" "mattogodoy/nametag" "tarball" "latest" "/opt/nametag"
|
||||
restore_backup
|
||||
|
||||
msg_info "Rebuilding Application"
|
||||
cd /opt/nametag
|
||||
@@ -54,12 +52,6 @@ function update_script() {
|
||||
cp -r /opt/nametag/public /opt/nametag/.next/standalone/public
|
||||
msg_ok "Rebuilt Application"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /opt/nametag.env.bak /opt/nametag/.env
|
||||
cp -r /opt/nametag_data_bak/. /opt/nametag/data/
|
||||
rm -f /opt/nametag.env.bak
|
||||
rm -rf /opt/nametag_data_bak
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Running Migrations"
|
||||
cd /opt/nametag
|
||||
|
||||
+5
-10
@@ -34,20 +34,15 @@ function update_script() {
|
||||
systemctl stop netbox netbox-rq
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up NetBox configurations"
|
||||
mv /opt/netbox/ /opt/netbox-backup
|
||||
msg_ok "Backed up NetBox configurations"
|
||||
create_backup /opt/netbox/netbox/netbox/configuration.py \
|
||||
/opt/netbox/netbox/media /opt/netbox/netbox/scripts /opt/netbox/netbox/reports \
|
||||
/opt/netbox/gunicorn.py /opt/netbox/local_requirements.txt \
|
||||
/opt/netbox/netbox/netbox/ldap_config.py
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "netbox" "netbox-community/netbox" "tarball"
|
||||
|
||||
cp -r /opt/netbox-backup/netbox/netbox/configuration.py /opt/netbox/netbox/netbox/
|
||||
cp -r /opt/netbox-backup/netbox/{media,scripts,reports}/ /opt/netbox/netbox/
|
||||
cp -r /opt/netbox-backup/gunicorn.py /opt/netbox/
|
||||
[[ -f /opt/netbox-backup/local_requirements.txt ]] && cp -r /opt/netbox-backup/local_requirements.txt /opt/netbox/
|
||||
[[ -f /opt/netbox-backup/netbox/netbox/ldap_config.py ]] && cp -r /opt/netbox-backup/netbox/netbox/ldap_config.py /opt/netbox/netbox/netbox/
|
||||
restore_backup
|
||||
|
||||
$STD /opt/netbox/upgrade.sh
|
||||
rm -r /opt/netbox-backup
|
||||
|
||||
msg_info "Starting Services"
|
||||
systemctl start netbox netbox-rq
|
||||
|
||||
+2
-7
@@ -35,11 +35,10 @@ function update_script() {
|
||||
systemctl stop ownfoil
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/ownfoil/app/config /opt/ownfoil_data_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/ownfoil/app/config
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "ownfoil" "a1ex4/ownfoil" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
cd /opt/ownfoil
|
||||
@@ -47,10 +46,6 @@ function update_script() {
|
||||
$STD uv pip install -r requirements.txt
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/ownfoil_data_backup /opt/ownfoil/app/config
|
||||
rm -rf /opt/ownfoil_data_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start ownfoil
|
||||
|
||||
+2
-11
@@ -41,15 +41,10 @@ function update_script() {
|
||||
systemctl stop gerbil
|
||||
msg_info "Service stopped"
|
||||
|
||||
msg_info "Creating backup"
|
||||
tar -czf /opt/pangolin_config_backup.tar.gz -C /opt/pangolin config
|
||||
if [[ -f /opt/pangolin/config/db/db.sqlite ]]; then
|
||||
cp -a /opt/pangolin/config/db/db.sqlite \
|
||||
"/opt/pangolin/config/db/db.sqlite.pre-${PANGOLIN_VERSION}-$(date +%Y%m%d-%H%M%S).bak"
|
||||
fi
|
||||
msg_ok "Created backup"
|
||||
create_backup /opt/pangolin/config
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "pangolin" "fosrl/pangolin" "tarball" "$PANGOLIN_VERSION"
|
||||
restore_backup
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gerbil" "fosrl/gerbil" "singlefile" "latest" "/usr/bin" "gerbil_linux_amd64"
|
||||
|
||||
msg_info "Updating Pangolin"
|
||||
@@ -68,10 +63,6 @@ function update_script() {
|
||||
cp server/db/mac_models.json ./dist/mac_models.json
|
||||
msg_ok "Updated Pangolin"
|
||||
|
||||
msg_info "Restoring config"
|
||||
tar -xzf /opt/pangolin_config_backup.tar.gz -C /opt/pangolin --overwrite
|
||||
rm -f /opt/pangolin_config_backup.tar.gz
|
||||
msg_ok "Restored config"
|
||||
|
||||
if ! grep -q '^ExecStartPre=/usr/bin/node dist/migrations.mjs' /etc/systemd/system/pangolin.service 2>/dev/null; then
|
||||
msg_info "Adding migration step to pangolin.service"
|
||||
|
||||
+2
-7
@@ -34,16 +34,11 @@ function update_script() {
|
||||
systemctl stop paperless-ai paperless-rag
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up data"
|
||||
cp -r /opt/paperless-ai/data /opt/paperless-ai-data-backup
|
||||
msg_ok "Backed up data"
|
||||
create_backup /opt/paperless-ai/data
|
||||
|
||||
fetch_and_deploy_gh_release "paperless-ai" "clusterzx/paperless-ai" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring data"
|
||||
cp -r /opt/paperless-ai-data-backup/* /opt/paperless-ai/data/
|
||||
rm -rf /opt/paperless-ai-data-backup
|
||||
msg_ok "Restored data"
|
||||
|
||||
msg_info "Updating Paperless-AI"
|
||||
cd /opt/paperless-ai
|
||||
|
||||
+3
-2
@@ -68,11 +68,12 @@ function update_script() {
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop pocketid
|
||||
msg_ok "Stopped Service"
|
||||
cp /opt/pocket-id/.env /opt/env
|
||||
fi
|
||||
|
||||
create_backup /opt/pocket-id/.env
|
||||
|
||||
fetch_and_deploy_gh_release "pocket-id" "pocket-id/pocket-id" "singlefile" "latest" "/opt/pocket-id/" "pocket-id-linux-amd64"
|
||||
mv /opt/env /opt/pocket-id/.env
|
||||
restore_backup
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start pocketid
|
||||
|
||||
+2
-4
@@ -29,16 +29,14 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
if check_for_gh_release "privatebin" "PrivateBin/PrivateBin"; then
|
||||
msg_info "Creating backup"
|
||||
cp -f /opt/privatebin/cfg/conf.php /tmp/privatebin_conf.bak
|
||||
msg_ok "Backup created"
|
||||
create_backup /opt/privatebin/cfg/conf.php
|
||||
|
||||
rm -rf /opt/privatebin/*
|
||||
fetch_and_deploy_gh_release "privatebin" "PrivateBin/PrivateBin" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Configuring ${APP}"
|
||||
mkdir -p /opt/privatebin/data
|
||||
mv /tmp/privatebin_conf.bak /opt/privatebin/cfg/conf.php
|
||||
chown -R www-data:www-data /opt/privatebin
|
||||
chmod -R 0755 /opt/privatebin/data
|
||||
systemctl reload nginx php8.2-fpm
|
||||
|
||||
+2
-10
@@ -35,19 +35,11 @@ function update_script() {
|
||||
systemctl stop shlink
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp /opt/shlink/.env /opt/shlink.env.bak
|
||||
cp -r /opt/shlink/data /opt/shlink_data_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/shlink/data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "shlink" "shlinkio/shlink" "prebuild" "latest" "/opt/shlink" "shlink*_php8.5_dist.zip"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /opt/shlink.env.bak /opt/shlink/.env
|
||||
rm -f /opt/shlink.env.bak
|
||||
cp -r /opt/shlink_data_backup/. /opt/shlink/data
|
||||
rm -rf /opt/shlink_data_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating Application"
|
||||
cd /opt/shlink
|
||||
|
||||
+2
-7
@@ -38,11 +38,10 @@ function update_script() {
|
||||
systemctl stop nginx
|
||||
msg_ok "Services Stopped"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
mv /opt/snipe-it /opt/snipe-it-backup
|
||||
msg_ok "Created Backup"
|
||||
create_backup /opt/snipe-it/.env /opt/snipe-it/public/uploads /opt/snipe-it/storage/private_uploads
|
||||
|
||||
fetch_and_deploy_gh_release "snipe-it" "grokability/snipe-it" "tarball"
|
||||
restore_backup
|
||||
[[ "$(php -v 2>/dev/null)" == PHP\ 8.2* ]] && PHP_VERSION="8.3" PHP_FPM="YES" PHP_MODULE="ldap,soap,xsl" setup_php
|
||||
sed -i 's/php8.2/php8.3/g' /etc/nginx/conf.d/snipeit.conf
|
||||
setup_composer
|
||||
@@ -50,9 +49,6 @@ function update_script() {
|
||||
msg_info "Updating Snipe-IT"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
cp /opt/snipe-it-backup/.env /opt/snipe-it/.env
|
||||
cp -r /opt/snipe-it-backup/public/uploads/. /opt/snipe-it/public/uploads/
|
||||
cp -r /opt/snipe-it-backup/storage/private_uploads/. /opt/snipe-it/storage/private_uploads/
|
||||
cd /opt/snipe-it/
|
||||
export COMPOSER_ALLOW_SUPERUSER=1
|
||||
$STD composer install --no-dev --optimize-autoloader --no-interaction
|
||||
@@ -64,7 +60,6 @@ function update_script() {
|
||||
$STD php artisan view:clear
|
||||
chown -R www-data: /opt/snipe-it
|
||||
chmod -R 755 /opt/snipe-it
|
||||
rm -rf /opt/snipe-it-backup
|
||||
msg_ok "Updated Snipe-IT"
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
+2
-10
@@ -35,19 +35,11 @@ function update_script() {
|
||||
systemctl stop caddy
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp /opt/solidtime/.env /opt/solidtime.env.bak
|
||||
cp -r /opt/solidtime/storage /opt/solidtime_storage_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/solidtime/storage
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "solidtime" "solidtime-io/solidtime" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /opt/solidtime.env.bak /opt/solidtime/.env
|
||||
rm -f /opt/solidtime.env.bak
|
||||
cp -r /opt/solidtime_storage_backup/. /opt/solidtime/storage
|
||||
rm -rf /opt/solidtime_storage_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating Application"
|
||||
cd /opt/solidtime
|
||||
|
||||
+2
-7
@@ -37,12 +37,10 @@ function update_script() {
|
||||
systemctl stop soulsync
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
mv /opt/soulsync/config /opt/soulsync-config.bak
|
||||
mv /opt/soulsync/data /opt/soulsync-data.bak
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/soulsync/config /opt/soulsync/data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "soulsync" "Nezreka/SoulSync" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Python Dependencies"
|
||||
cd /opt/soulsync
|
||||
@@ -56,9 +54,6 @@ function update_script() {
|
||||
$STD npm run build
|
||||
msg_ok "Built WebUI"
|
||||
|
||||
mv /opt/soulsync-config.bak /opt/soulsync/config
|
||||
mv /opt/soulsync-data.bak /opt/soulsync/data
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start soulsync
|
||||
msg_ok "Started Service"
|
||||
|
||||
+2
-13
@@ -35,17 +35,10 @@ function update_script() {
|
||||
systemctl stop sparkyfitness-server nginx
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backing up data"
|
||||
mkdir -p /opt/sparkyfitness_backup
|
||||
if [[ -d /opt/sparkyfitness/SparkyFitnessServer/uploads ]]; then
|
||||
cp -r /opt/sparkyfitness/SparkyFitnessServer/uploads /opt/sparkyfitness_backup/
|
||||
fi
|
||||
if [[ -d /opt/sparkyfitness/SparkyFitnessServer/backup ]]; then
|
||||
cp -r /opt/sparkyfitness/SparkyFitnessServer/backup /opt/sparkyfitness_backup/
|
||||
fi
|
||||
msg_ok "Backed up data"
|
||||
create_backup /opt/sparkyfitness/SparkyFitnessServer/uploads
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "sparkyfitness" "CodeWithCJ/SparkyFitness" "tarball"
|
||||
restore_backup
|
||||
|
||||
PNPM_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/sparkyfitness/package.json)"
|
||||
NODE_VERSION="25" NODE_MODULE="pnpm@${PNPM_VERSION}" setup_nodejs
|
||||
@@ -96,10 +89,6 @@ EOF
|
||||
systemctl daemon-reload
|
||||
msg_ok "Refreshed SparkyFitness Service"
|
||||
|
||||
msg_info "Restoring data"
|
||||
cp -r /opt/sparkyfitness_backup/. /opt/sparkyfitness/SparkyFitnessServer/
|
||||
rm -rf /opt/sparkyfitness_backup
|
||||
msg_ok "Restored data"
|
||||
|
||||
msg_info "Starting Services"
|
||||
$STD systemctl start sparkyfitness-server nginx
|
||||
|
||||
+2
-3
@@ -36,12 +36,11 @@ function update_script() {
|
||||
systemctl stop spoolman
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
[ -d /opt/spoolman_bak ] && rm -rf /opt/spoolman_bak
|
||||
mv /opt/spoolman /opt/spoolman_bak
|
||||
create_backup /opt/spoolman
|
||||
msg_ok "Created Backup"
|
||||
|
||||
fetch_and_deploy_gh_release "spoolman" "Donkie/Spoolman" "prebuild" "latest" "/opt/spoolman" "spoolman.zip"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Spoolman"
|
||||
cd /opt/spoolman
|
||||
|
||||
+2
-6
@@ -43,17 +43,14 @@ function update_script() {
|
||||
systemctl stop tandoor
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
mv /opt/tandoor /opt/tandoor.bak
|
||||
msg_ok "Backup Created"
|
||||
create_backup /opt/tandoor/config /opt/tandoor/api /opt/tandoor/mediafiles /opt/tandoor/staticfiles /opt/tandoor/.env
|
||||
|
||||
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
fetch_and_deploy_gh_release "tandoor" "TandoorRecipes/recipes" "tarball" "latest" "/opt/tandoor"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Tandoor"
|
||||
cp -r /opt/tandoor.bak/{config,api,mediafiles,staticfiles} /opt/tandoor/
|
||||
mv /opt/tandoor.bak/.env /opt/tandoor/.env
|
||||
cd /opt/tandoor
|
||||
$STD uv venv --clear .venv --python=python3
|
||||
$STD uv pip install -r requirements.txt --python .venv/bin/python
|
||||
@@ -69,7 +66,6 @@ EOF
|
||||
cd /opt/tandoor
|
||||
$STD /opt/tandoor/.venv/bin/python manage.py migrate
|
||||
$STD /opt/tandoor/.venv/bin/python manage.py collectstatic --no-input
|
||||
rm -rf /opt/tandoor.bak
|
||||
msg_ok "Updated Tandoor"
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
+2
-9
@@ -143,12 +143,10 @@ EOF
|
||||
fi
|
||||
msg_ok "Migrated Configuration"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/termix/data /opt/termix_data_backup
|
||||
cp -r /opt/termix/uploads /opt/termix_uploads_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/termix/data /opt/termix/uploads
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "termix" "Termix-SSH/Termix" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Recreating Directories"
|
||||
mkdir -p /opt/termix/html \
|
||||
@@ -177,11 +175,6 @@ EOF
|
||||
$STD npm cache clean --force
|
||||
msg_ok "Set up Production Dependencies"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/termix_data_backup /opt/termix/data
|
||||
cp -r /opt/termix_uploads_backup /opt/termix/uploads
|
||||
rm -rf /opt/termix_data_backup /opt/termix_uploads_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating Frontend Files"
|
||||
rm -rf /opt/termix/html/*
|
||||
|
||||
+2
-6
@@ -36,12 +36,10 @@ function update_script() {
|
||||
systemctl stop tianji
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up data"
|
||||
cp /opt/tianji/src/server/.env /opt/.env
|
||||
mv /opt/tianji /opt/tianji_bak
|
||||
msg_ok "Backed up data"
|
||||
create_backup /opt/tianji
|
||||
|
||||
fetch_and_deploy_gh_release "tianji" "msgbyte/tianji" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Tianji"
|
||||
cd /opt/tianji
|
||||
@@ -52,10 +50,8 @@ function update_script() {
|
||||
mkdir -p ./src/server/public
|
||||
cp -r ./geo ./src/server/public
|
||||
$STD pnpm build:server
|
||||
mv /opt/.env /opt/tianji/src/server/.env
|
||||
cd src/server
|
||||
$STD pnpm db:migrate:apply
|
||||
rm -rf /opt/tianji_bak
|
||||
rm -rf /opt/tianji/src/client
|
||||
rm -rf /opt/tianji/website
|
||||
rm -rf /opt/tianji/reporter
|
||||
|
||||
+2
-10
@@ -31,6 +31,7 @@ function update_script() {
|
||||
fi
|
||||
|
||||
fetch_and_deploy_gh_release "calibre" "kovidgoyal/calibre" "prebuild" "latest" "/opt/calibre" "calibre-*-x86_64.txz"
|
||||
restore_backup
|
||||
ln -sf /opt/calibre/ebook-convert /usr/bin/ebook-convert
|
||||
fetch_and_deploy_gh_release "drawio" "jgraph/drawio-desktop" "binary" "latest" "" "drawio-amd64-*.deb"
|
||||
fetch_and_deploy_gh_release "pandoc" "jgm/pandoc" "binary" "latest" "" "pandoc-*-amd64.deb"
|
||||
@@ -40,10 +41,7 @@ function update_script() {
|
||||
systemctl stop transmute
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp /opt/transmute/backend/.env /opt/transmute.env.bak
|
||||
cp -r /opt/transmute/data /opt/transmute_data_bak
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/transmute/data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "transmute" "transmute-app/transmute" "tarball"
|
||||
|
||||
@@ -59,12 +57,6 @@ function update_script() {
|
||||
$STD npm run build
|
||||
msg_ok "Rebuilt Frontend"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /opt/transmute.env.bak /opt/transmute/backend/.env
|
||||
cp -r /opt/transmute_data_bak/. /opt/transmute/data/
|
||||
rm -f /opt/transmute.env.bak
|
||||
rm -rf /opt/transmute_data_bak
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start transmute
|
||||
|
||||
+2
-10
@@ -45,19 +45,11 @@ function update_script() {
|
||||
sleep 1
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Database"
|
||||
mkdir -p /opt/trilium_backup
|
||||
cp -r "${DB_PATH}" /opt/trilium_backup/
|
||||
rm -rf /opt/trilium
|
||||
msg_ok "Backed up Database"
|
||||
create_backup ${DB_PATH}
|
||||
|
||||
fetch_and_deploy_gh_release "Trilium" "TriliumNext/Trilium" "prebuild" "latest" "/opt/trilium" "TriliumNotes-Server-*linux-x64.tar.xz"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Database"
|
||||
mkdir -p "$(dirname "${DB_RESTORE_PATH}")"
|
||||
cp -r /opt/trilium_backup/$(basename "${DB_PATH}") "${DB_RESTORE_PATH}"
|
||||
rm -rf /opt/trilium_backup
|
||||
msg_ok "Restored Database"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start trilium
|
||||
|
||||
+1
-6
@@ -39,10 +39,7 @@ function update_script() {
|
||||
create_backup /opt/twenty/.env \
|
||||
/opt/twenty/packages/twenty-server/.local-storage
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "twenty" "twentyhq/twenty" "tarball"
|
||||
|
||||
msg_info "Restoring Configuration"
|
||||
cp /opt/twenty.env.bak /opt/twenty/.env
|
||||
msg_ok "Restored Configuration"
|
||||
restore_backup
|
||||
|
||||
msg_info "Building Application"
|
||||
cd /opt/twenty
|
||||
@@ -64,8 +61,6 @@ function update_script() {
|
||||
$STD npx -y typeorm migration:run -d dist/database/typeorm/core/core.datasource
|
||||
msg_ok "Ran Database Migrations"
|
||||
|
||||
restore_backup
|
||||
|
||||
msg_info "Starting Services"
|
||||
systemctl start twenty-server twenty-worker
|
||||
msg_ok "Started Services"
|
||||
|
||||
+3
-2
@@ -34,9 +34,10 @@ function update_script() {
|
||||
systemctl stop umami
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
mv /opt/umami/.env /opt/.env.bak
|
||||
create_backup /opt/umami/.env
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "umami" "umami-software/umami" "tarball"
|
||||
mv /opt/.env.bak /opt/umami/.env
|
||||
restore_backup
|
||||
|
||||
msg_info "Updating Umami"
|
||||
cd /opt/umami
|
||||
|
||||
+2
-9
@@ -39,19 +39,12 @@ function update_script() {
|
||||
systemctl stop wealthfolio
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/wealthfolio_data /opt/wealthfolio_data_backup
|
||||
cp /opt/wealthfolio/.env /opt/wealthfolio_env_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/wealthfolio_data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "wealthfolio" "wealthfolio/wealthfolio" "prebuild" "latest" "/opt/wealthfolio" "wealthfolio-server-*-linux-amd64.tar.gz"
|
||||
restore_backup
|
||||
install -m 755 /opt/wealthfolio/wealthfolio-server /usr/local/bin/wealthfolio-server
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/wealthfolio_data_backup/. /opt/wealthfolio_data
|
||||
cp /opt/wealthfolio_env_backup /opt/wealthfolio/.env
|
||||
rm -rf /opt/wealthfolio_data_backup /opt/wealthfolio_env_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start wealthfolio
|
||||
|
||||
+2
-6
@@ -34,16 +34,12 @@ function update_script() {
|
||||
systemctl stop web-check
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Creating backup"
|
||||
mv /opt/web-check/.env /opt
|
||||
msg_ok "Created backup"
|
||||
create_backup /opt/web-check/.env
|
||||
|
||||
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "web-check" "Lissy93/web-check" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring backup"
|
||||
mv /opt/.env /opt/web-check
|
||||
msg_ok "Restored backup"
|
||||
|
||||
msg_info "Building Web-Check"
|
||||
cd /opt/web-check
|
||||
|
||||
+2
-8
@@ -36,17 +36,11 @@ function update_script() {
|
||||
systemctl stop caddy php${PHP_VER}-fpm
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/webtrees/data /opt/webtrees_data_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/webtrees/data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "webtrees" "fisharebest/webtrees" "prebuild" "latest" "/opt/webtrees" "webtrees-*.zip"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/webtrees_data_backup/. /opt/webtrees/data
|
||||
rm -rf /opt/webtrees_data_backup
|
||||
chown -R www-data:www-data /opt/webtrees
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start caddy php${PHP_VER}-fpm
|
||||
|
||||
+2
-10
@@ -35,19 +35,11 @@ function update_script() {
|
||||
systemctl stop redis-server nginx celery celery-beat wger
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/wger/media /opt/wger_media_backup
|
||||
cp /opt/wger/.env /opt/wger_env_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/wger/media
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "wger" "wger-project/wger" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/wger_media_backup/. /opt/wger/media
|
||||
cp /opt/wger_env_backup /opt/wger/.env
|
||||
rm -rf /opt/wger_media_backup /opt/wger_env_backup
|
||||
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating wger"
|
||||
cd /opt/wger
|
||||
|
||||
+2
-12
@@ -35,14 +35,10 @@ function update_script() {
|
||||
systemctl stop wishlist
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
mkdir -p /opt/wishlist-backup
|
||||
cp /opt/wishlist/.env /opt/wishlist-backup/.env
|
||||
cp -a /opt/wishlist/uploads /opt/wishlist-backup
|
||||
cp -a /opt/wishlist/data /opt/wishlist-backup
|
||||
msg_ok "Created Backup"
|
||||
create_backup /opt/wishlist/uploads /opt/wishlist/data
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "wishlist" "cmintey/wishlist" "tarball"
|
||||
restore_backup
|
||||
LATEST_APP_VERSION=$(get_latest_github_release "cmintey/wishlist")
|
||||
|
||||
msg_info "Updating Wishlist"
|
||||
@@ -57,12 +53,6 @@ function update_script() {
|
||||
$STD pnpm prune --prod
|
||||
chmod +x /opt/wishlist/entrypoint.sh
|
||||
|
||||
msg_info "Restoring Backup"
|
||||
cp /opt/wishlist-backup/.env /opt/wishlist/.env
|
||||
cp -a /opt/wishlist-backup/uploads /opt/wishlist
|
||||
cp -a /opt/wishlist-backup/data /opt/wishlist
|
||||
rm -rf /opt/wishlist-backup
|
||||
msg_ok "Restored Backup"
|
||||
|
||||
msg_ok "Updated Wishlist"
|
||||
msg_info "Starting Service"
|
||||
|
||||
+2
-9
@@ -35,12 +35,10 @@ function update_script() {
|
||||
systemctl stop xyops
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -r /opt/xyops/data /opt/xyops_data_backup
|
||||
cp -r /opt/xyops/conf /opt/xyops_conf_backup
|
||||
msg_ok "Backed up Data"
|
||||
create_backup /opt/xyops/data /opt/xyops/conf
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "xyops" "pixlcore/xyops" "tarball"
|
||||
restore_backup
|
||||
|
||||
msg_info "Rebuilding Application"
|
||||
cd /opt/xyops
|
||||
@@ -49,11 +47,6 @@ function update_script() {
|
||||
chmod 644 /opt/xyops/node_modules/useragent-ng/lib/regexps.js
|
||||
msg_ok "Rebuilt Application"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -r /opt/xyops_data_backup/. /opt/xyops/data
|
||||
cp -r /opt/xyops_conf_backup/. /opt/xyops/conf
|
||||
rm -rf /opt/xyops_data_backup /opt/xyops_conf_backup
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start xyops
|
||||
|
||||
+2
-7
@@ -35,17 +35,12 @@ function update_script() {
|
||||
systemctl stop nginx
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up Configuration"
|
||||
cp -r /opt/yourls/user /opt/yourls_user.bak
|
||||
msg_ok "Backed up Configuration"
|
||||
create_backup /opt/yourls/user
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "yourls" "YOURLS/YOURLS" "tarball"
|
||||
restore_backup
|
||||
chown -R www-data:www-data /opt/yourls
|
||||
|
||||
msg_info "Restoring Configuration"
|
||||
cp -r /opt/yourls_user.bak/. /opt/yourls/user/
|
||||
rm -rf /opt/yourls_user.bak
|
||||
msg_ok "Restored Configuration"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start nginx
|
||||
|
||||
Reference in New Issue
Block a user