From ca530bf9878d69030f4f8fffdd390e9c057b5e8e Mon Sep 17 00:00:00 2001 From: svatantrya Date: Sun, 19 Jul 2026 21:29:18 -0400 Subject: [PATCH] release: bal-server-0.3.0 --- .gitignore | 1 + Cargo.lock | 2 +- Cargo.toml | 2 +- make_release.sh | 203 ------------------------------------------------ 4 files changed, 3 insertions(+), 205 deletions(-) delete mode 100755 make_release.sh diff --git a/.gitignore b/.gitignore index 50e779f..7f96570 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,4 @@ Cargo.lock !lib/ !contrib/ !src/ +make_release.sh diff --git a/Cargo.lock b/Cargo.lock index 376405f..d699e17 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -312,7 +312,7 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "bal_server" -version = "0.3.1" +version = "0.3.0" dependencies = [ "actix-governor", "actix-rt", diff --git a/Cargo.toml b/Cargo.toml index 7772f8a..de0df41 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bal_server" -version = "0.3.1" +version = "0.3.0" edition = "2024" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/make_release.sh b/make_release.sh deleted file mode 100755 index 41a0d5c..0000000 --- a/make_release.sh +++ /dev/null @@ -1,203 +0,0 @@ -#!/bin/bash -#author: - -source lib.sh -usage() { - echo_w "./make_release " -} - -if [ -n "$1" ]; then release=$1; else usage; exit; fi - -if [ -n "$2" ]; then message=$2; else - # Create temporary file using mktemp - TEMPFILE=$(mktemp) - vi $TEMPFILE - message=$(cat $TEMPFILE) - rm $TEMPFILE -fi - -echo_i $message - -# Load secrets from .env file (not committed to git) -if [ -f .env ]; then - export $(grep -v '^#' .env | xargs) -fi - -TOKEN="${GITEA_API_TOKEN:-${TOKEN_GITEA}}" -if [ -z "$TOKEN" ]; then - echo_e "Error: GITEA_API_TOKEN (or TOKEN_GITEA) is not set in .env file." - echo_e "Please create a .env file with: GITEA_API_TOKEN=your_token_here" - exit 1 -fi - -for cmd in gpg sha256sum jq; do - if ! command -v "$cmd" >/dev/null 2>&1; then - echo_e "Error: '$cmd' is required but not installed." - exit 1 - fi -done - -OWNER="bitcoinafterlife" -basename=$(basename $(pwd)) -REPO=$basename -TAG="v$release" -binpath="target/release/$basename" -release_name="$basename-$release" -dest="releases/$release" -arch=$(uname -m) -platform="linux-gnu" -destbin="$dest/$arch" -destsrc="$dest/src" -assetname="$release_name""_$arch""_$platform" - -asset_tar_gz="$assetname.tar.gz" -ASSET_PATH="$destbin/$assetname.tar.gz" - -SIGNER_KEY="svatantrya@bitcoin-after.life" -ASSET_SHA256="$ASSET_PATH.sha256" -ASSET_SIG="$ASSET_PATH.sig" -ASSET_ASC="$ASSET_PATH.asc" - -giteahost="https://bitcoin-after.life/gitea" -url_releases="$giteahost/api/v1/repos/$OWNER/$REPO/releases" - -echo_i() { - echo -e "\033[1m==> $1\033[0m" -} - -echo_e() { - echo -e "\033[31;1m$1\033[0m" -} - -echo_s() { - echo -e "\033[32;1m$1\033[0m" -} -echo_w() { - echo -e "\033[33;1m$1\033[0m" -} - - -prepare_release(){ - mkdir -p "$destbin/$assetname" - if ! cargo build --release --no-default-features --features server --bin bal-server; then - echo_w "error building bal-server" - exit 1 - fi - if ! cargo build --release --no-default-features --features pusher --bin bal-pusher; then - echo_w "error building bal-pusher" - exit 1 - fi - ls -l target/release/bal-server target/release/bal-pusher - cp target/release/bal-server \ - target/release/bal-pusher \ - README.md \ - "$destbin/$assetname" - ( - cd "$destbin" - echo_w $ASSET_PATH - echo "ls $(pwd)" - ls - echo "ls $(pwd)/$assetname" - ls "$(pwd)/$assetname" - ls $assetname - tar -czf "$asset_tar_gz" "$assetname" - - sha256sum "$asset_tar_gz" > "$asset_tar_gz.sha256" - - if ! gpg --batch --yes --detach-sign --local-user "$SIGNER_KEY" "$asset_tar_gz"; then - echo_e "error signing release tarball (binary)" - exit 1 - fi - - if ! gpg --batch --yes --detach-sign --armor --output "$asset_tar_gz.asc" --local-user "$SIGNER_KEY" "$asset_tar_gz"; then - echo_e "error signing release tarball (ascii-armored)" - exit 1 - fi - ) -} - -push_tag() { - git commit -am"release: $release_name" - git push - #git tag -a "$TAG" -m"release: $release_name" - #git push origin --tags -} - -# Configurazioni -post_release() { - if [ -z "$1" ]; then - echo_e "no data to release" - exit 1 - else - echo "data: $1" - fi - echo "token:$TOKEN" - echo url_releases: $url_releases - RELEASE="$(curl -s -X POST \ - -H "accept: application/json" \ - -H "Authorization: token $TOKEN" \ - -H "Content-Type: application/json" \ - -d "$1" \ - $url_releases - )" - echo $RELEASE -} - -add_asset_release() { - if [ -z "$1" ]; then - echo_e "error add_asset_release" - exit 1 - fi - - local assets=("$ASSET_PATH" "$ASSET_SHA256" "$ASSET_SIG" "$ASSET_ASC") - for asset in "${assets[@]}"; do - if [ ! -f "$asset" ]; then - echo_e "missing asset: $asset" - exit 1 - fi - echo "Uploading: $asset" - ls -l "$asset" - curl -X POST \ - -H "accept: application/json" \ - -H "Authorization: token $TOKEN" \ - -H "Content-Type: multipart/form-data" \ - -F "attachment=@$asset" \ - "$url_releases/$1/assets" - done -} - -release_body=$(printf '%s' "Release: $release_name enjoy - -$message - ---- -Verification Instructions: - -SHA256 Checksum: -sha256sum -c $assetname.tar.gz.sha256 - -GPG Signature (binary): -gpg --verify $assetname.tar.gz.sig $assetname.tar.gz - -GPG Signature (ASCII-armored): -gpg --verify $assetname.tar.gz.asc $assetname.tar.gz - -Signed by Svātantrya (svatantrya@bitcoin-after.life)") - -release_data=$(jq -n -c \ - --arg tag_name "$TAG" \ - --arg name "$release_name" \ - --arg body "$release_body" \ - '{tag_name: $tag_name, name: $name, body: $body}') - -prepare_release -echo_s "prepare release done" -push_tag -echo_s "push tag done" -echo "$release_data" -post_release "$release_data" -echo_s "prepare release done" -echo $RELEASE -id_release= -add_asset_release $(echo $RELEASE | jq .id) -echo_s "done"