Build / Desktop, server and tools (push) Successful in 1m7s
The first screen (online or not, a Check button, every language with a draft notice), the desktop and Android heads, the server's /api/info and /api/ip, a release tool that builds deb, rpm, a Windows exe, macOS zips, a signed APK and the server, and the Gitea workflows that run it. Rules adapted from passolo; AGPL-3.0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012CzABvBkbcFqoHdmi8b9WB
27 lines
1.1 KiB
Bash
Executable File
27 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
GITEA=${GITEA_URL:-https://git.thepra.dev}
|
|
ORG=${GITEA_ORG:-Arasaka}
|
|
NAME=${1:-MeWeb}
|
|
ROOT=$(cd "$(dirname "$0")/../.." && pwd)
|
|
|
|
cred=$(printf 'protocol=https\nhost=%s\n\n' "${GITEA#https://}" | git credential fill)
|
|
user=$(printf '%s\n' "$cred" | sed -n 's/^username=//p')
|
|
pass=$(printf '%s\n' "$cred" | sed -n 's/^password=//p')
|
|
[ -n "$user" ] && [ -n "$pass" ] || { echo "no stored git credential for $GITEA"; exit 1; }
|
|
|
|
out=$(mktemp)
|
|
trap 'rm -f "$out"' EXIT
|
|
body=$(printf '{"name":"%s","private":false,"default_branch":"master","description":"me-web? Can you run your own server from here? Checks your connection and device and explains what stands in the way."}' "$NAME")
|
|
code=$(curl -s -o "$out" -w '%{http_code}' -u "$user:$pass" -H 'Content-Type: application/json' \
|
|
-X POST "$GITEA/api/v1/orgs/$ORG/repos" -d "$body")
|
|
case "$code" in
|
|
201) echo "created $GITEA/$ORG/$NAME" ;;
|
|
409) echo "already exists: $GITEA/$ORG/$NAME" ;;
|
|
*) echo "Gitea answered $code:"; cat "$out"; echo; exit 1 ;;
|
|
esac
|
|
|
|
cd "$ROOT"
|
|
git remote get-url origin >/dev/null 2>&1 || git remote add origin "$GITEA/$ORG/$NAME.git"
|
|
git push -u origin master
|