|
|
|
@ -61,12 +61,29 @@ if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then |
|
|
|
|
fi |
|
|
|
|
RELEASE=$(curl -s https://api.github.com/repos/msgbyte/tianji/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') |
|
|
|
|
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then |
|
|
|
|
msg_info "Setting Container to Higher Resources" |
|
|
|
|
pct set $CTID -memory 4096 |
|
|
|
|
pct set $CTID -cores 4 |
|
|
|
|
msg_ok "Set Container to Higher Resources" |
|
|
|
|
msg_info "Stopping ${APP} Service" |
|
|
|
|
systemctl stop tianji |
|
|
|
|
msg_ok "Stopped ${APP} Service" |
|
|
|
|
msg_info "Updating ${APP} to ${RELEASE}" |
|
|
|
|
cd /opt/tianji |
|
|
|
|
git checkout -f -q v${RELEASE} |
|
|
|
|
cd /opt |
|
|
|
|
cp /opt/tianji/src/server/.env /opt/.env |
|
|
|
|
mv /opt/tianji /opt/tianji_bak |
|
|
|
|
wget -q "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" |
|
|
|
|
unzip -q v${RELEASE}.zip |
|
|
|
|
rm -R |
|
|
|
|
mv tianji-${RELEASE} /opt/tianji |
|
|
|
|
cd tianji |
|
|
|
|
pnpm install --filter @tianji/client... --config.dedupe-peer-dependents=false --frozen-lockfile >/dev/null 2>&1 |
|
|
|
|
pnpm build:static >/dev/null 2>&1 |
|
|
|
|
pnpm install --filter @tianji/server... --config.dedupe-peer-dependents=false >/dev/null 2>&1 |
|
|
|
|
mkdir -p ./src/server/public >/dev/null 2>&1 |
|
|
|
|
cp -r ./geo ./src/server/public >/dev/null 2>&1 |
|
|
|
|
pnpm build:server >/dev/null 2>&1 |
|
|
|
|
mv /opt/.env /opt/tianji/src/server/.env |
|
|
|
|
cd src/server |
|
|
|
|
pnpm db:migrate:apply >/dev/null 2>&1 |
|
|
|
|
echo "${RELEASE}" >/opt/${APP}_version.txt |
|
|
|
@ -74,6 +91,13 @@ if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_v |
|
|
|
|
msg_info "Starting ${APP}" |
|
|
|
|
systemctl start tianji |
|
|
|
|
msg_ok "Started ${APP}" |
|
|
|
|
msg_info "Cleaning up" |
|
|
|
|
rm -R /opt/v${RELEASE}.zip |
|
|
|
|
rm -rf /opt/tianji_bak |
|
|
|
|
rm -rf /opt/tianji/src/client |
|
|
|
|
rm -rf /opt/tianji/website |
|
|
|
|
rm -rf /opt/tianji/reporter |
|
|
|
|
msg_ok "Cleaned" |
|
|
|
|
msg_ok "Updated Successfully" |
|
|
|
|
else |
|
|
|
|
msg_ok "No update required. ${APP} is already at ${RELEASE}." |
|
|
|
|