changed rejects from pr review
This commit is contained in:
parent
87237346b3
commit
0befe26bed
@ -1,11 +1,10 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
source <(curl -s https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/build.func)
|
source <(curl -s raw.githubusercontent.com/GoldenSpringness/ProxmoxVED/refs/heads/feature/rustypaste/misc/build.func)
|
||||||
# Copyright (c) 2021-2025 community-scripts ORG
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
# Author: GoldenSpringness
|
# Author: GoldenSpringness
|
||||||
# License: MIT | https://github.com/GoldenSpringness/ProxmoxVED/raw/main/LICENSE
|
# License: MIT | https://github.com/GoldenSpringness/ProxmoxVED/raw/main/LICENSE
|
||||||
# Source: https://github.com/orhun/rustypaste
|
# Source: https://github.com/orhun/rustypaste
|
||||||
|
|
||||||
# App Default Values
|
|
||||||
APP="rustypaste"
|
APP="rustypaste"
|
||||||
var_tags="${var_tags:-pastebin;storage}"
|
var_tags="${var_tags:-pastebin;storage}"
|
||||||
var_cpu="${var_cpu:-1}"
|
var_cpu="${var_cpu:-1}"
|
||||||
@ -25,45 +24,37 @@ function update_script() {
|
|||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
|
|
||||||
# Check if installation is present | -f for file, -d for folder
|
if [[ ! -f "/opt/rustypaste/target/release/rustypaste" ]]; then
|
||||||
if [[ ! -f "/opt/${APP}/target/release/rustypaste" ]]; then
|
msg_error "No rustypaste Installation Found!"
|
||||||
msg_error "No ${APP} Installation Found!"
|
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Crawling the new version and checking whether an update is required
|
if check_for_gh_release "rustypaste" "orhun/rustypaste"; then
|
||||||
RELEASE=$(curl -s https://api.github.com/repos/orhun/rustypaste/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
|
||||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
msg_info "Stopping rustypaste"
|
||||||
# Stopping Services
|
systemctl stop rustypaste
|
||||||
msg_info "Stopping $APP"
|
msg_ok "Stopped rustypaste"
|
||||||
systemctl stop ${APP}
|
|
||||||
msg_ok "Stopped $APP"
|
|
||||||
|
|
||||||
# Creating Backup
|
|
||||||
msg_info "Creating Backup"
|
msg_info "Creating Backup"
|
||||||
tar -czf "/opt/${APP}_backup_$(date +%F).tar.gz" "/opt/${APP}/upload" # Backing up full project + all bins
|
tar -czf "/opt/rustypaste_backup_$(date +%F).tar.gz" "/opt/rustypaste/upload"
|
||||||
msg_ok "Backup Created"
|
msg_ok "Backup Created"
|
||||||
|
|
||||||
# Execute Update
|
msg_info "Updating rustypaste to latest"
|
||||||
msg_info "Updating $APP to ${RELEASE}"
|
|
||||||
cd /opt/rustypaste
|
cd /opt/rustypaste
|
||||||
|
|
||||||
git fetch --tags # getting newest versions
|
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "rustypaste" "orhun/rustypaste" "tarball" "latest" "/opt/rustypaste"
|
||||||
git switch --detach ${RELEASE}
|
|
||||||
|
|
||||||
cargo build --locked --release # recreating the binary
|
cargo build --locked --release
|
||||||
msg_ok "Updated $APP to ${RELEASE}"
|
|
||||||
|
|
||||||
# Starting Services
|
msg_ok "Updated rustypaste to latest"
|
||||||
msg_info "Starting $APP"
|
|
||||||
systemctl start ${APP}
|
msg_info "Starting rustypaste"
|
||||||
msg_ok "Started $APP"
|
systemctl start rustypaste
|
||||||
|
msg_ok "Started rustypaste"
|
||||||
|
|
||||||
# Last Action
|
|
||||||
echo "${RELEASE}" > /opt/${APP}_version.txt
|
|
||||||
msg_ok "Update Successful"
|
msg_ok "Update Successful"
|
||||||
else
|
else
|
||||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
msg_ok "No update required. rustypaste is already at latest"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
@ -73,6 +64,6 @@ build_container
|
|||||||
description
|
description
|
||||||
|
|
||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}rustypaste setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000${CL}"
|
||||||
|
|||||||
@ -5,7 +5,6 @@
|
|||||||
# License: MIT | https://github.com/GoldenSpringness/ProxmoxVED/raw/main/LICENSE
|
# License: MIT | https://github.com/GoldenSpringness/ProxmoxVED/raw/main/LICENSE
|
||||||
# Source: https://github.com/orhun/rustypaste
|
# Source: https://github.com/orhun/rustypaste
|
||||||
|
|
||||||
# Import Functions und Setup
|
|
||||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||||
color
|
color
|
||||||
verb_ip6
|
verb_ip6
|
||||||
@ -25,51 +24,40 @@ msg_ok "Dependencies Installed Successfully"
|
|||||||
|
|
||||||
RUST_VERSION="1.92.0" setup_rust
|
RUST_VERSION="1.92.0" setup_rust
|
||||||
|
|
||||||
msg_info "Setting up ${APPLICATION}"
|
msg_info "Setting up rustypaste"
|
||||||
# Getting the latest release version
|
|
||||||
RELEASE=$(curl -s https://api.github.com/repos/orhun/rustypaste/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
|
||||||
cd /opt
|
|
||||||
git clone https://github.com/orhun/rustypaste.git
|
|
||||||
|
|
||||||
if [[ ! -d "/opt/${APPLICATION}" ]]; then
|
fetch_and_deploy_gh_release "rustypaste" "orhun/rustypaste" "tarball" "latest" "/opt/rustypaste"
|
||||||
msg_error "Git clone has failed"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd ${APPLICATION}
|
cd /opt/rustypaste
|
||||||
git fetch --tags
|
|
||||||
git switch --detach ${RELEASE} # checking out to latest release
|
|
||||||
|
|
||||||
sed -i 's|^address = ".*"|address = "0.0.0.0:8000"|' config.toml # changing the ip and port
|
sed -i 's|^address = ".*"|address = "0.0.0.0:8000"|' config.toml
|
||||||
|
|
||||||
msg_info "Compiling ${APPLICATION}"
|
msg_info "Compiling rustypaste"
|
||||||
cargo build --locked --release # creating the binary
|
cargo build --locked --release
|
||||||
|
|
||||||
if [[ ! -f "/opt/${APPLICATION}/target/release/rustypaste" ]]; then
|
if [[ ! -f "/opt/rustypaste/target/release/rustypaste" ]]; then
|
||||||
msg_error "Cargo build failed"
|
msg_error "Cargo build failed"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt # creating version file for the update function
|
msg_ok "Setting up rustypaste is Done!"
|
||||||
msg_ok "Setting up ${APPLICATION} is Done!"
|
|
||||||
|
|
||||||
# Creating Service (if needed)
|
|
||||||
msg_info "Creating Service"
|
msg_info "Creating Service"
|
||||||
cat <<EOF >/etc/systemd/system/${APPLICATION}.service
|
cat <<EOF >/etc/systemd/system/rustypaste.service
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=${APPLICATION} Service
|
Description=rustypaste Service
|
||||||
After=network.target
|
After=network.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
WorkingDirectory=/opt/rustypaste
|
WorkingDirectory=/opt/rustypaste
|
||||||
ExecStart=/opt/${APPLICATION}/target/release/rustypaste
|
ExecStart=/opt/rustypaste/target/release/rustypaste
|
||||||
Restart=always
|
Restart=always
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
systemctl enable -q --now ${APPLICATION}.service
|
systemctl enable -q --now rustypaste.service
|
||||||
msg_ok "Created Service"
|
msg_ok "Created Service"
|
||||||
|
|
||||||
msg_ok "RustyPaste is Running!"
|
msg_ok "RustyPaste is Running!"
|
||||||
@ -77,7 +65,6 @@ msg_ok "RustyPaste is Running!"
|
|||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
|
|
||||||
# Cleanup
|
|
||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
$STD apt-get -y autoremove
|
$STD apt-get -y autoremove
|
||||||
$STD apt-get -y autoclean
|
$STD apt-get -y autoclean
|
||||||
|
|||||||
@ -184,17 +184,17 @@ variables() {
|
|||||||
# - Initialize error traps after loading
|
# - Initialize error traps after loading
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
|
|
||||||
source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/api.func)
|
source <(curl -fsSL raw.githubusercontent.com/GoldenSpringness/ProxmoxVED/refs/heads/feature/rustypaste/misc/api.func)
|
||||||
|
|
||||||
if command -v curl >/dev/null 2>&1; then
|
if command -v curl >/dev/null 2>&1; then
|
||||||
source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func)
|
source <(curl -fsSL raw.githubusercontent.com/GoldenSpringness/ProxmoxVED/refs/heads/feature/rustypaste/misc/core.func)
|
||||||
source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func)
|
source <(curl -fsSL raw.githubusercontent.com/GoldenSpringness/ProxmoxVED/refs/heads/feature/rustypaste/misc/error_handler.func)
|
||||||
load_functions
|
load_functions
|
||||||
catch_errors
|
catch_errors
|
||||||
#echo "(build.func) Loaded core.func via curl"
|
#echo "(build.func) Loaded core.func via curl"
|
||||||
elif command -v wget >/dev/null 2>&1; then
|
elif command -v wget >/dev/null 2>&1; then
|
||||||
source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/core.func)
|
source <(wget -qO- raw.githubusercontent.com/GoldenSpringness/ProxmoxVED/refs/heads/feature/rustypaste/misc/core.func)
|
||||||
source <(wget -qO- https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/error_handler.func)
|
source <(wget -qO- raw.githubusercontent.com/GoldenSpringness/ProxmoxVED/refs/heads/feature/rustypaste/misc/error_handler.func)
|
||||||
load_functions
|
load_functions
|
||||||
catch_errors
|
catch_errors
|
||||||
#echo "(build.func) Loaded core.func via wget"
|
#echo "(build.func) Loaded core.func via wget"
|
||||||
@ -2577,7 +2577,7 @@ configure_ssh_settings() {
|
|||||||
# - Otherwise: shows update/setting menu
|
# - Otherwise: shows update/setting menu
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
start() {
|
start() {
|
||||||
source <(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/tools.func)
|
source <(curl -fsSL raw.githubusercontent.com/GoldenSpringness/ProxmoxVED/refs/heads/feature/rustypaste/misc/tools.func)
|
||||||
if command -v pveversion >/dev/null 2>&1; then
|
if command -v pveversion >/dev/null 2>&1; then
|
||||||
install_script || return 0
|
install_script || return 0
|
||||||
return 0
|
return 0
|
||||||
@ -2706,7 +2706,7 @@ build_container() {
|
|||||||
pushd "$TEMP_DIR" >/dev/null
|
pushd "$TEMP_DIR" >/dev/null
|
||||||
|
|
||||||
# Unified install.func automatically detects OS type (debian, alpine, fedora, etc.)
|
# Unified install.func automatically detects OS type (debian, alpine, fedora, etc.)
|
||||||
export FUNCTIONS_FILE_PATH="$(curl -fsSL https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main/misc/install.func)"
|
export FUNCTIONS_FILE_PATH="$(curl -fsSL raw.githubusercontent.com/GoldenSpringness/ProxmoxVED/refs/heads/feature/rustypaste/misc/install.func)"
|
||||||
|
|
||||||
# Core exports for install.func
|
# Core exports for install.func
|
||||||
export DIAGNOSTICS="$DIAGNOSTICS"
|
export DIAGNOSTICS="$DIAGNOSTICS"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user