mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-05-31 13:04:43 +00:00
6181e5aad4
@aws-sdk/client-s3 has a pathologically deep pnpm virtual store symlink tree; cp -rL follows the chain into thousands of nested client-s3 dirs causing 'File name too long' errors. S3 is an optional storage backend so skip it. bcrypt, sharp, linkedom and ioredis are unaffected.
82 lines
2.7 KiB
Bash
82 lines
2.7 KiB
Bash
#!/usr/bin/env bash
|
|
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
|
# Copyright (c) 2021-2026 community-scripts ORG
|
|
# Author: vhsdream | MickLesk (CanbiZ)
|
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
|
# Source: https://rxresume.org | Github: https://github.com/amruthpillai/reactive-resume
|
|
|
|
APP="Reactive-Resume"
|
|
var_tags="${var_tags:-documents}"
|
|
var_cpu="${var_cpu:-2}"
|
|
var_ram="${var_ram:-4096}"
|
|
var_disk="${var_disk:-8}"
|
|
var_os="${var_os:-debian}"
|
|
var_version="${var_version:-13}"
|
|
var_unprivileged="${var_unprivileged:-1}"
|
|
|
|
header_info "$APP"
|
|
variables
|
|
color
|
|
catch_errors
|
|
|
|
function update_script() {
|
|
header_info
|
|
check_container_storage
|
|
check_container_resources
|
|
|
|
if [[ ! -f /etc/systemd/system/reactive-resume.service ]]; then
|
|
msg_error "No $APP Installation Found!"
|
|
exit
|
|
fi
|
|
if check_for_gh_release "reactive-resume" "amruthpillai/reactive-resume"; then
|
|
msg_info "Stopping services"
|
|
systemctl stop reactive-resume
|
|
msg_ok "Stopped services"
|
|
|
|
ensure_dependencies git
|
|
|
|
cp /opt/reactive-resume/.env /opt/reactive-resume.env.bak
|
|
NODE_VERSION="24" setup_nodejs
|
|
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "reactive-resume" "amruthpillai/reactive-resume" "tarball" "latest" "/opt/reactive-resume"
|
|
|
|
msg_info "Updating Reactive Resume (Patience)"
|
|
cd /opt/reactive-resume
|
|
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
|
|
corepack enable
|
|
corepack prepare --activate
|
|
export CI="true"
|
|
export NODE_ENV="production"
|
|
$STD pnpm install --frozen-lockfile
|
|
$STD pnpm run build
|
|
msg_info "Deploying Nitro Runtime Externals"
|
|
RT_MODS="/opt/reactive-resume/packages/runtime-externals/node_modules"
|
|
WEB_MODS="/opt/reactive-resume/apps/web/node_modules"
|
|
for pkg in bcrypt sharp linkedom ioredis; do
|
|
[ -d "${RT_MODS}/${pkg}" ] && cp -rL "${RT_MODS}/${pkg}" "${WEB_MODS}/${pkg}"
|
|
done
|
|
msg_ok "Deployed Nitro Runtime Externals"
|
|
mv /opt/reactive-resume.env.bak /opt/reactive-resume/.env
|
|
msg_ok "Updated Reactive Resume"
|
|
|
|
msg_info "Updating Service"
|
|
sed -i 's|WorkingDirectory=/opt/reactive-resume$|WorkingDirectory=/opt/reactive-resume/apps/web|' /etc/systemd/system/reactive-resume.service
|
|
systemctl daemon-reload
|
|
msg_ok "Updated Service"
|
|
|
|
msg_info "Restarting services"
|
|
systemctl start chromium-printer reactive-resume
|
|
msg_ok "Restarted services"
|
|
msg_ok "Updated successfully!"
|
|
fi
|
|
exit
|
|
}
|
|
|
|
start
|
|
build_container
|
|
description
|
|
|
|
msg_ok "Completed successfully!\n"
|
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
|