CI / Format and clippy (push) Successful in 1m13s
CI / Dependency audit (push) Successful in 13s
CI / Tests (Linux) (push) Successful in 1m35s
Release / Create release (push) Successful in 7s
CI / Check desktop app (Linux) (push) Successful in 3m19s
Release / CLI (linux-aarch64) (push) Successful in 1m3s
Release / CLI (linux-x86_64) (push) Successful in 1m28s
Release / Desktop app (linux-aarch64) (push) Successful in 7m16s
Release / Desktop app (linux-x86_64) (push) Successful in 10m17s
Release / Desktop app (windows) (push) Successful in 4m54s
Completes the English-only standardization for code, comments, scripts and CI templates (UI/CLI-facing strings stay bilingual pt-BR/en, untouched). Covers the remaining crates/, apps/gui/ui/ and apps/gui/src-tauri/ comments, .gitea/ workflow and template comments, .githooks/ hooks, and the scripts/ source comments for the files already renamed in a prior commit (check.sh, generate-logo.py, install-hooks.sh). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VAyr8d7HuAdUGB6aA5xmDD
26 lines
985 B
Bash
Executable File
26 lines
985 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Uploads assets to a Gitea release, replacing any existing asset with the same
|
|
# filename so re-running a CI job never fails on duplicate attachments.
|
|
#
|
|
# API=https://git.example.com/api/v1/repos/owner/repo TOKEN=... \
|
|
# scripts/release-upload.sh v1.2.3 file1 file2
|
|
set -euo pipefail
|
|
|
|
: "${API:?set API (Gitea repository API URL)}"
|
|
: "${TOKEN:?set TOKEN}"
|
|
tag=${1:?usage: release-upload.sh <tag> <file>...}
|
|
shift
|
|
|
|
auth=(-H "Authorization: token $TOKEN")
|
|
id=$(curl -fsS "${auth[@]}" "$API/releases/tags/$tag" | jq -r .id)
|
|
|
|
for file in "$@"; do
|
|
name=$(basename "$file")
|
|
encoded=$(jq -rn --arg n "$name" '$n|@uri')
|
|
for old in $(curl -fsS "${auth[@]}" "$API/releases/$id/assets" | jq -r --arg n "$name" '.[] | select(.name == $n) | .id'); do
|
|
curl -fsS -X DELETE "${auth[@]}" "$API/releases/$id/assets/$old"
|
|
done
|
|
curl -fsS -X POST "${auth[@]}" -F "attachment=@$file" "$API/releases/$id/assets?name=$encoded" >/dev/null
|
|
echo "uploaded: $name"
|
|
done
|