Skip to content

Commit 92c6662

Browse files
authored
GoMFT: Add frontend build procedure (#3499)
1 parent 4532109 commit 92c6662

File tree

2 files changed

+28
-4
lines changed

2 files changed

+28
-4
lines changed

ct/gomft.sh

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,13 @@ function update_script() {
3232
if ! dpkg -l | grep -q "^ii.*build-essential"; then
3333
$STD apt-get install -y build-essential
3434
fi
35-
35+
if [[ ! -f "/usr/bin/node" ]]; then
36+
mkdir -p /etc/apt/keyrings
37+
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
38+
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
39+
$STD apt-get update
40+
$STD apt-get install -y nodejs
41+
fi
3642
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
3743
msg_info "Stopping $APP"
3844
systemctl stop gomft
@@ -45,8 +51,11 @@ function update_script() {
4551
tar -xzf $temp_file
4652
cp -rf GoMFT-v.${RELEASE}/* /opt/gomft
4753
cd /opt/gomft
54+
rm -f /opt/gomft/node_modules
55+
$STD npm ci
56+
$STD node build.js
4857
$STD go mod download
49-
$STD go install github.com/a-h/templ/cmd/templ@latest
58+
$STD go get -u github.com/a-h/templ
5059
$STD $HOME/go/bin/templ generate
5160
export CGO_ENABLED=1
5261
export GOOS=linux
@@ -57,7 +66,7 @@ function update_script() {
5766

5867
msg_info "Cleaning Up"
5968
rm -f $temp_file
60-
rm -rf GoMFT-${RELEASE}
69+
rm -rf $HOME/GoMFT-v.${RELEASE}
6170
msg_ok "Cleanup Complete"
6271

6372
msg_info "Starting $APP"

install/gomft-install.sh

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ $STD apt-get install -y \
1919
rclone \
2020
tzdata \
2121
ca-certificates \
22-
build-essential
22+
build-essential \
23+
gnupg
2324
msg_ok "Installed Dependencies"
2425

2526
msg_info "Setting up Golang"
@@ -32,15 +33,29 @@ ln -sf /usr/local/go/bin/go /usr/local/bin/go
3233
set -o pipefail
3334
msg_ok "Setup Golang"
3435

36+
msg_info "Setting up Node.js Repository"
37+
mkdir -p /etc/apt/keyrings
38+
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
39+
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
40+
msg_ok "Set up Node.js Repository"
41+
42+
msg_info "Installing Node.js"
43+
$STD apt-get update
44+
$STD apt-get install -y nodejs
45+
msg_ok "Installed Node.js"
46+
3547
msg_info "Setup ${APPLICATION} (Patience)"
3648
temp_file=$(mktemp)
3749
RELEASE=$(curl -fsSL https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
3850
curl -fsSL "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v.${RELEASE}.tar.gz" -o $temp_file
3951
tar -xzf $temp_file
4052
mv GoMFT-v.${RELEASE}/ /opt/gomft
4153
cd /opt/gomft
54+
$STD npm ci
55+
$STD node build.js
4256
$STD go mod download
4357
$STD go install github.com/a-h/templ/cmd/templ@latest
58+
$STD go get -u github.com/a-h/templ
4459
$STD $HOME/go/bin/templ generate
4560
export CGO_ENABLED=1
4661
export GOOS=linux

0 commit comments

Comments
 (0)