Skip to content

Commit 2636556

Browse files
authored
Refactor (#5806)
1 parent 9dc0fc8 commit 2636556

File tree

3 files changed

+17
-31
lines changed

3 files changed

+17
-31
lines changed

ct/docmost.sh

Lines changed: 8 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -27,48 +27,35 @@ function update_script() {
2727
exit
2828
fi
2929
if ! command -v node >/dev/null || [[ "$(/usr/bin/env node -v | grep -oP '^v\K[0-9]+')" != "22" ]]; then
30-
msg_info "Installing Node.js 22"
31-
$STD apt-get purge -y nodejs
32-
rm -f /etc/apt/sources.list.d/nodesource.list
33-
rm -f /etc/apt/keyrings/nodesource.gpg
34-
mkdir -p /etc/apt/keyrings
35-
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
36-
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
37-
$STD apt-get update
38-
$STD apt-get install -y nodejs
39-
$STD npm install -g [email protected]
40-
msg_ok "Node.js 22 installed"
30+
NODE_VERSION="22" NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/docmost/docmost/main/package.json | jq -r '.packageManager | split("@")[1]')" setup_nodejs
4131
fi
4232
export NODE_OPTIONS="--max_old_space_size=4096"
4333
RELEASE=$(curl -fsSL https://api.github.com/repos/docmost/docmost/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
44-
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
34+
if [[ "${RELEASE}" != "$(cat ~/.docmost 2>/dev/null)" ]] || [[ ! -f ~/.docmost ]]; then
4535
msg_info "Stopping ${APP}"
4636
systemctl stop docmost
4737
msg_ok "${APP} Stopped"
4838

49-
msg_info "Updating ${APP} to v${RELEASE}"
39+
msg_info "Backing up data"
5040
cp /opt/docmost/.env /opt/
5141
cp -r /opt/docmost/data /opt/
5242
rm -rf /opt/docmost
53-
temp_file=$(mktemp)
54-
curl -fsSL "https://github.com/docmost/docmost/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
55-
tar -xzf "$temp_file"
56-
mv docmost-${RELEASE} /opt/docmost
43+
msg_ok "Data backed up"
44+
45+
fetch_and_deploy_gh_release "docmost" "docmost/docmost"
46+
47+
msg_info "Updating ${APP} to v${RELEASE}"
5748
cd /opt/docmost
5849
mv /opt/.env /opt/docmost/.env
5950
mv /opt/data /opt/docmost/data
6051
$STD pnpm install --force
6152
$STD pnpm build
62-
echo "${RELEASE}" >/opt/${APP}_version.txt
6353
msg_ok "Updated ${APP}"
6454

6555
msg_info "Starting ${APP}"
6656
systemctl start docmost
6757
msg_ok "Started ${APP}"
6858

69-
msg_info "Cleaning Up"
70-
rm -f ${temp_file}
71-
msg_ok "Cleaned"
7259
msg_ok "Updated Successfully"
7360
else
7461
msg_ok "No update required. ${APP} is already at ${RELEASE}"

frontend/public/json/docmost.json

Lines changed: 6 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

install/docmost-install.sh

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ msg_ok "Installed Dependencies"
2222

2323
NODE_VERSION="22" NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/docmost/docmost/main/package.json | jq -r '.packageManager | split("@")[1]')" setup_nodejs
2424
PG_VERSION="16" setup_postgresql
25+
fetch_and_deploy_gh_release "docmost" "docmost/docmost"
2526

2627
msg_info "Setting up PostgreSQL"
2728
DB_NAME="docmost_db"
@@ -40,12 +41,7 @@ $STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC'"
4041
} >>~/docmost.creds
4142
msg_ok "Set up PostgreSQL"
4243

43-
msg_info "Installing Docmost (Patience)"
44-
temp_file=$(mktemp)
45-
RELEASE=$(curl -fsSL https://api.github.com/repos/docmost/docmost/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
46-
curl -fsSL "https://github.com/docmost/docmost/archive/refs/tags/v${RELEASE}.tar.gz" -o ""$temp_file""
47-
tar -xzf "$temp_file"
48-
mv docmost-${RELEASE} /opt/docmost
44+
msg_info "Configuring Docmost (Patience)"
4945
cd /opt/docmost
5046
mv .env.example .env
5147
mkdir data
@@ -56,8 +52,7 @@ sed -i -e "s|APP_SECRET=.*|APP_SECRET=$(openssl rand -base64 32 | tr -dc 'a-zA-Z
5652
export NODE_OPTIONS="--max-old-space-size=2048"
5753
$STD pnpm install
5854
$STD pnpm build
59-
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
60-
msg_ok "Installed Docmost"
55+
msg_ok "Configured Docmost"
6156

6257
msg_info "Creating Service"
6358
cat <<EOF >/etc/systemd/system/docmost.service
@@ -81,7 +76,6 @@ motd_ssh
8176
customize
8277

8378
msg_info "Cleaning up"
84-
rm -f "$temp_file"
8579
$STD apt-get -y autoremove
8680
$STD apt-get -y autoclean
8781
msg_ok "Cleaned"

0 commit comments

Comments
 (0)