Files
tri 07026e2c7a ci: run the bump workflow on Gitea Actions
The tap moved to git.trivk.dev. Gitea Runner has no parallel steps, so
the two bumps run one after the other. The scripts ask api.github.com
with curl instead of gh, which needs a GitHub token the Gitea job does
not have; two unauthenticated requests per run stay far under the limit.
The README now taps with the git.trivk.dev URL.
2026-11-10 15:53:28 +07:00

42 lines
1.6 KiB
Bash
Executable File

#!/usr/bin/env bash
# Updates Casks/netbird-ui.rb and Formula/netbird.rb to the latest NetBird release.
# On a new version it writes "$BUMP_DIR/netbird": the commit message, then the changed files.
set -euo pipefail
cask=Casks/netbird-ui.rb
formula=Formula/netbird.rb
latest=$(curl -fsSL https://api.github.com/repos/netbirdio/netbird/releases/latest | jq -r .tag_name)
latest=${latest#v}
current=$(sed -nE 's/^ version "([^"]+)"$/\1/p' "$cask")
if [ "$latest" = "$current" ]; then
echo "Already at $current"
exit 0
fi
base="https://github.com/netbirdio/netbird/releases/download/v$latest"
declare -A sha
tmp=$(mktemp)
for asset in netbird-ui_${latest}_darwin_{arm64,amd64}_signed.zip netbird_${latest}_darwin_{arm64,amd64}.tar.gz; do
# Release assets can show up a while after the tag. Try again on the next run.
if ! curl -fsSL -o "$tmp" "$base/$asset"; then
echo "$asset is not published yet"
exit 0
fi
sha[$asset]=$(sha256sum "$tmp" | cut -d' ' -f1)
done
rm -f "$tmp"
sed -i -E \
-e "s/^ version \"[^\"]+\"$/ version \"$latest\"/" \
-e "s/(arm: +\")[0-9a-f]{64}/\1${sha[netbird-ui_${latest}_darwin_arm64_signed.zip]}/" \
-e "s/(intel: \")[0-9a-f]{64}/\1${sha[netbird-ui_${latest}_darwin_amd64_signed.zip]}/" \
"$cask"
# The formula has literal URLs, each followed by its sha256 line.
sed -i -E "s/${current//./\\.}/$latest/g" "$formula"
for arch in arm64 amd64; do
asset="netbird_${latest}_darwin_${arch}.tar.gz"
sed -i -E "/\/${asset//./\\.}\"/{n;s/[0-9a-f]{64}/${sha[$asset]}/}" "$formula"
done
echo "chore: bump netbird to $latest" > "$BUMP_DIR/netbird"
printf '%s\n' "$cask" "$formula" >> "$BUMP_DIR/netbird"