diff --git a/ct/tandoor.sh b/ct/tandoor.sh index 248df63d..8b7b874d 100644 --- a/ct/tandoor.sh +++ b/ct/tandoor.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func) -# Copyright (c) 2021-2025 tteck +# Copyright (c) 2021-2025 community-scripts ORG # Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://tandoor.dev/ @@ -20,68 +20,66 @@ color catch_errors function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -d /opt/tandoor ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/tandoor ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi - if [[ ! -f ~/.tandoor ]]; then - msg_error "v1 Installation found, please create an new LXC!" - exit - fi + if [[ ! -f ~/.tandoor ]]; then + msg_error "v1 Installation found, please export your data and create an new LXC." + exit + fi - RELEASE=$(curl -fsSL https://api.github.com/repos/TandoorRecipes/recipes/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') - if [[ "${RELEASE}" != "$(cat ~/.tandoor 2>/dev/null)" ]] || [[ ! -f ~/.tandoor ]]; then - msg_info "Stopping $APP" - systemctl stop tandoor - msg_ok "Stopped $APP" + RELEASE=$(curl -fsSL https://api.github.com/repos/TandoorRecipes/recipes/releases/latest | jq -r '.tag_name' | sed 's/^v//') + if [[ "${RELEASE}" != "$(cat ~/.tandoor 2>/dev/null)" ]] || [[ ! -f ~/.tandoor ]]; then + msg_info "Stopping $APP" + systemctl stop tandoor + msg_ok "Stopped $APP" - msg_info "Creating Backup" - BACKUP_FILE="/opt/tandoor_backup_$(date +%F).tar.gz" - $STD tar -czf "$BACKUP_FILE" /opt/tandoor/{.env,start.sh} /opt/tandoor/database/ &>/dev/null - mv /opt/tandoor/.env /opt/.env - msg_ok "Backup Created" + msg_info "Creating Backup" + mv /opt/tandoor /opt/tandoor.bak + msg_ok "Backup Created" - NODE_VERSION="20" NODE_MODULE="yarn@latest" setup_nodejs - fetch_and_deploy_gh_release "tandoor" "TandoorRecipes/recipes" "tarball" "latest" "/opt/tandoor" - PYTHON_VERSION="3.13" setup_uv + NODE_VERSION="20" NODE_MODULE="yarn" setup_nodejs + PYTHON_VERSION="3.13" setup_uv + fetch_and_deploy_gh_release "tandoor" "TandoorRecipes/recipes" "tarball" "latest" "/opt/tandoor" - msg_info "Updating $APP to ${RELEASE}" - mkdir -p /opt/tandoor/{config,api,mediafiles,staticfiles} - mv /opt/.env /opt/tandoor/.env - cd /opt/tandoor - $STD uv venv .venv --python=python3 - $STD uv pip install -r requirements.txt --python .venv/bin/python - cd /opt/tandoor/vue3 - $STD yarn install - $STD yarn build - TANDOOR_VERSION="$(curl -fsSL https://api.github.com/repos/TandoorRecipes/recipes/releases/latest | jq -r .tag_name)" - cat </opt/tandoor/cookbook/version_info.py + msg_info "Updating $APP to ${RELEASE}" + cp -r /opt/tandoor.bak/{config,api,mediafiles,staticfiles} /opt/tandoor/ + mv /opt/.env /opt/tandoor/.env + cd /opt/tandoor + $STD uv venv .venv --python=python3 + $STD uv pip install -r requirements.txt --python .venv/bin/python + cd /opt/tandoor/vue3 + $STD yarn install + $STD yarn build + TANDOOR_VERSION="$(curl -fsSL https://api.github.com/repos/TandoorRecipes/recipes/releases/latest | jq -r .tag_name)" + cat </opt/tandoor/cookbook/version_info.py TANDOOR_VERSION = "$TANDOOR_VERSION" TANDOOR_REF = "bare-metal" VERSION_INFO = [] EOF - cd /opt/tandoor - $STD /opt/tandoor/.venv/bin/python manage.py migrate - $STD /opt/tandoor/.venv/bin/python manage.py collectstatic --no-input - msg_ok "Updated $APP to ${RELEASE}" + cd /opt/tandoor + $STD /opt/tandoor/.venv/bin/python manage.py migrate + $STD /opt/tandoor/.venv/bin/python manage.py collectstatic --no-input + msg_ok "Updated $APP to ${RELEASE}" - msg_info "Starting $APP" - systemctl start tandoor - systemctl reload nginx - msg_ok "Started $APP" + msg_info "Starting $APP" + systemctl start tandoor + systemctl reload nginx + msg_ok "Started $APP" - msg_info "Cleaning Up" - rm -rf "$BACKUP_FILE" - msg_ok "Cleanup Completed" - msg_ok "Update Successful" - else - msg_ok "No update required. ${APP} is already at v${RELEASE}" - fi - exit + msg_info "Cleaning Up" + rm -rf /opt/tandoor.bak + msg_ok "Cleanup Completed" + msg_ok "Update Successful" + else + msg_ok "No update required. ${APP} is already at v${RELEASE}" + fi + exit } start diff --git a/install/tandoor-install.sh b/install/tandoor-install.sh index 823a60d1..a70621a8 100644 --- a/install/tandoor-install.sh +++ b/install/tandoor-install.sh @@ -1,8 +1,7 @@ #!/usr/bin/env bash -# Copyright (c) 2021-2025 tteck -# Author: tteck -# Co-Author: MickLesk (Canbiz) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: MickLesk (Canbiz) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://tandoor.dev/ @@ -31,7 +30,7 @@ $STD apt-get install -y --no-install-recommends \ libxmlsec1-openssl msg_ok "Installed Dependencies" -NODE_VERSION="20" NODE_MODULE="yarn@latest" setup_nodejs +NODE_VERSION="20" NODE_MODULE="yarn" setup_nodejs fetch_and_deploy_gh_release "tandoor" "TandoorRecipes/recipes" "tarball" "latest" "/opt/tandoor" PG_VERSION="16" setup_postgresql PYTHON_VERSION="3.13" setup_uv