mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-05-03 15:23:08 +00:00
GoMFT: Fix build dependencies (#3313)
* Fix dependency * Fix dependency * Update install * Formatting
This commit is contained in:
parent
f7762da69c
commit
79e9fd911c
83
ct/gomft.sh
83
ct/gomft.sh
@ -20,48 +20,51 @@ color
|
|||||||
catch_errors
|
catch_errors
|
||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
|
|
||||||
if [[ ! -d "/opt/gomft" ]]; then
|
if [[ ! -d "/opt/gomft" ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
|
||||||
fi
|
|
||||||
RELEASE=$(curl -s https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
|
||||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
|
||||||
msg_info "Stopping $APP"
|
|
||||||
systemctl stop gomft
|
|
||||||
msg_ok "Stopped $APP"
|
|
||||||
|
|
||||||
msg_info "Updating $APP to ${RELEASE}"
|
|
||||||
rm -f /opt/gomft/gomft
|
|
||||||
temp_file=$(mktemp)
|
|
||||||
wget -q "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file
|
|
||||||
tar -xzf $temp_file
|
|
||||||
cp -rf GoMFT-${RELEASE}/* /opt/gomft
|
|
||||||
cd /opt/gomft
|
|
||||||
$STD go mod download
|
|
||||||
$STD go build -o gomft
|
|
||||||
$STD $HOME/go/bin/templ generate
|
|
||||||
chmod +x /opt/gomft/gomft
|
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
|
||||||
msg_ok "Updated $APP to ${RELEASE}"
|
|
||||||
|
|
||||||
msg_info "Cleaning Up"
|
|
||||||
rm -f $temp_file
|
|
||||||
rm -rf GoMFT-${RELEASE}
|
|
||||||
msg_ok "Cleanup Complete"
|
|
||||||
|
|
||||||
msg_info "Starting $APP"
|
|
||||||
systemctl start gomft
|
|
||||||
msg_ok "Started $APP"
|
|
||||||
|
|
||||||
msg_ok "Update Successful"
|
|
||||||
else
|
|
||||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
|
||||||
fi
|
|
||||||
exit
|
exit
|
||||||
|
fi
|
||||||
|
RELEASE=$(curl -s https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
|
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||||
|
msg_info "Stopping $APP"
|
||||||
|
systemctl stop gomft
|
||||||
|
msg_ok "Stopped $APP"
|
||||||
|
|
||||||
|
msg_info "Updating $APP to ${RELEASE}"
|
||||||
|
rm -f /opt/gomft/gomft
|
||||||
|
temp_file=$(mktemp)
|
||||||
|
wget -q "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file
|
||||||
|
tar -xzf $temp_file
|
||||||
|
cp -rf GoMFT-${RELEASE}/* /opt/gomft
|
||||||
|
cd /opt/gomft
|
||||||
|
$STD go mod download
|
||||||
|
$STD go install github.com/a-h/templ/cmd/templ@latest
|
||||||
|
$STD $HOME/go/bin/templ generate
|
||||||
|
export CGO_ENABLED=1
|
||||||
|
export GOOS=linux
|
||||||
|
$STD go build -o gomft
|
||||||
|
chmod +x /opt/gomft/gomft
|
||||||
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
msg_ok "Updated $APP to ${RELEASE}"
|
||||||
|
|
||||||
|
msg_info "Cleaning Up"
|
||||||
|
rm -f $temp_file
|
||||||
|
rm -rf GoMFT-${RELEASE}
|
||||||
|
msg_ok "Cleanup Complete"
|
||||||
|
|
||||||
|
msg_info "Starting $APP"
|
||||||
|
systemctl start gomft
|
||||||
|
msg_ok "Started $APP"
|
||||||
|
|
||||||
|
msg_ok "Update Successful"
|
||||||
|
else
|
||||||
|
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||||
|
fi
|
||||||
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
|
@ -15,13 +15,14 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
curl \
|
curl \
|
||||||
sudo \
|
sudo \
|
||||||
mc \
|
mc \
|
||||||
sqlite3 \
|
sqlite3 \
|
||||||
rclone \
|
rclone \
|
||||||
tzdata \
|
tzdata \
|
||||||
ca-certificates
|
ca-certificates \
|
||||||
|
build-essential
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Setting up Golang"
|
msg_info "Setting up Golang"
|
||||||
@ -34,7 +35,7 @@ ln -sf /usr/local/go/bin/go /usr/local/bin/go
|
|||||||
set -o pipefail
|
set -o pipefail
|
||||||
msg_ok "Setup Golang"
|
msg_ok "Setup Golang"
|
||||||
|
|
||||||
msg_info "Setup ${APPLICATION}"
|
msg_info "Setup ${APPLICATION} (Patience)"
|
||||||
temp_file=$(mktemp)
|
temp_file=$(mktemp)
|
||||||
RELEASE=$(curl -s https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
RELEASE=$(curl -s https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
wget -q "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file
|
wget -q "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file
|
||||||
@ -42,10 +43,12 @@ tar -xzf $temp_file
|
|||||||
mv GoMFT-${RELEASE}/ /opt/gomft
|
mv GoMFT-${RELEASE}/ /opt/gomft
|
||||||
cd /opt/gomft
|
cd /opt/gomft
|
||||||
$STD go mod download
|
$STD go mod download
|
||||||
$STD go build -o gomft
|
|
||||||
chmod +x gomft
|
|
||||||
$STD go install github.com/a-h/templ/cmd/templ@latest
|
$STD go install github.com/a-h/templ/cmd/templ@latest
|
||||||
$STD $HOME/go/bin/templ generate
|
$STD $HOME/go/bin/templ generate
|
||||||
|
export CGO_ENABLED=1
|
||||||
|
export GOOS=linux
|
||||||
|
$STD go build -o gomft
|
||||||
|
chmod +x /opt/gomft/gomft
|
||||||
JWT_SECRET_KEY=$(openssl rand -base64 24 | tr -d '/+=')
|
JWT_SECRET_KEY=$(openssl rand -base64 24 | tr -d '/+=')
|
||||||
|
|
||||||
cat <<EOF >/opt/gomft/.env
|
cat <<EOF >/opt/gomft/.env
|
||||||
|
Loading…
x
Reference in New Issue
Block a user