Host [tanin] on Gitea Arch registry (9 pkgs, public)
- publish-tanin-repo.sh: upload built packages to the Gitea Arch registry - distro/tanin.pacman.conf: the [tanin] pacman.conf snippet - manifest: [tanin] is LIVE at git.openbureau.ch/api/packages/karim/arch/tanin Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Executable
+27
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
# Upload the built [tanin] packages to the Gitea Arch registry.
|
||||
# Run after build-tanin-repo.sh / finish-tanin-repo.sh produced the .pkg.tar.zst.
|
||||
# Needs a Gitea token with the `write:package` scope:
|
||||
# TANIN_PKG_TOKEN=xxxx ./publish-tanin-repo.sh (or it will prompt)
|
||||
# Gitea builds the repo DB server-side; nothing else to upload.
|
||||
set -uo pipefail
|
||||
OUT="${TANIN_REPO_DIR:-$HOME/projects/tanin-repo}"
|
||||
OWNER="${TANIN_OWNER:-karim}"
|
||||
DISTRO="${TANIN_DISTRO:-tanin}"
|
||||
BASE="https://git.openbureau.ch/api/packages/$OWNER/arch/$DISTRO"
|
||||
|
||||
TOK="${TANIN_PKG_TOKEN:-}"
|
||||
[ -z "$TOK" ] && { read -rsp "Gitea token (write:package): " TOK; echo; }
|
||||
[ -z "$TOK" ] && { echo "no token"; exit 1; }
|
||||
|
||||
shopt -s nullglob
|
||||
n=0
|
||||
for f in "$OUT"/*.pkg.tar.zst; do
|
||||
case "$f" in *-debug-*) continue;; esac # skip debug symbol packages
|
||||
code=$(curl -s -o /dev/null -w '%{http_code}' --user "$OWNER:$TOK" \
|
||||
--upload-file "$f" "$BASE")
|
||||
echo "$code $(basename "$f")"
|
||||
[ "$code" = 201 ] && n=$((n+1))
|
||||
done
|
||||
echo "uploaded $n package(s) to $BASE"
|
||||
echo "verify: curl -s $BASE/x86_64/tanin.db | gzip -dc | tar tf - | sed -n 's#/desc\$##p'"
|
||||
Reference in New Issue
Block a user