'Generic Commit'
All checks were successful
Build-Test-Publish / build (linux/amd64) (push) Successful in 57s
Build-Test-Publish / build (linux/arm64) (push) Successful in 1m19s
Build-Test-Publish / create-manifest (push) Successful in 13s

This commit is contained in:
Your Name
2025-06-15 15:51:41 +12:00
parent e055f92f73
commit 7aa040be98
2 changed files with 16 additions and 27 deletions

View File

@@ -7,30 +7,21 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)"
PROJECT="simple-object-server"
function die() {
echo "error: $1" && exit 1
}
# Set target directory - use ~/.local/bin by default, /usr/local/bin if root
if [ "$(id -u)" = "0" ]; then
TARGET_DIR="/usr/local/bin"
else
if [ "$(id -u)" != "0" ]; then
TARGET_DIR="${HOME}/.local/bin"
# Create ~/.local/bin if it doesn't exist
mkdir -p "${TARGET_DIR}"
fi
if ! command -v wget >/dev/null 2>&1; then
echo "wget is not installed. Please install wget and try again."
exit 1
fi
command -v wget >/dev/null 2>&1 || die "wget is not installed. Please install wget and try again."
ARCH=$(uname -m)
if [ "${ARCH}" = "x86_64" ]; then
ARCH="amd64"
elif [ "${ARCH}" = "aarch64" ]; then
ARCH="arm64"
else
echo "Unsupported architecture: ${ARCH}"
exit 1
fi
wget https://getbin.xyz/simple-object-server:${ARCH} -O "${TARGET_DIR}/simple-object-server"
wget "https://getbin.xyz/simple-object-server:latest-${ARCH}" -O "${TARGET_DIR}/simple-object-server"
chmod +x "${TARGET_DIR}/simple-object-server"

View File

@@ -3,6 +3,9 @@
set -euo pipefail
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
ARCH=$(uname -m)
TEMP_DIR="${SCRIPT_DIR}/temp"
SOS="${TEMP_DIR}/sos"
echo "Publishing simple-object-server to gitea.jde.nz/public/simple-object-server:latest"
@@ -13,10 +16,11 @@ function die() {
[[ -n $SOS_WRITE_TOKEN ]] || die "SOS_WRITE_TOKEN not specified"
# clear output dir
rm -rf "${SCRIPT_DIR}/output"
mkdir -p "${SCRIPT_DIR}/output"
# build release version
export CMAKE_BUILD_TYPE="Release"
export PROJECT="simple-object-server"
@@ -30,18 +34,12 @@ docker build \
[ -f ${SCRIPT_DIR}/output/simple-object-server ] || die "Build failed."
# uplaod to getbin.xyz
# # download the sos binary
SOS="${SCRIPT_DIR}/temp/sos"
mkdir -p "${SCRIPT_DIR}/temp"
trap 'rm -rf "${SCRIPT_DIR}/temp"' EXIT
# download the sos binary
mkdir -p "${TEMP_DIR}"
trap 'rm -rf "${TEMP_DIR}"' EXIT
curl -L -o "${SOS}" "https://getbin.xyz/sos"
chmod +x "${SOS}"
ARCH=$(uname -m)
# upload arch-specific binary
"${SOS}" upload "getbin.xyz" "${SCRIPT_DIR}/output/${PROJECT}" "${PROJECT}:latest-${ARCH}"