Skip to content

Attach client binaries to release #25

Attach client binaries to release

Attach client binaries to release #25

name: Attach client binaries to release
on:
workflow_dispatch:
inputs:
release_tag:
description: "Release tag (e.g. v1.9.0)"
required: true
jobs:
upload-assets:
runs-on: spacetimedb-new-runner-2
permissions:
contents: write # needed to modify releases
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Download artifacts from private base URL
env:
RELEASE_TAG: ${{ github.event.inputs.release_tag }}
BASE_URL: ${{ secrets.ARTIFACT_BASE_URL }}
run: |
set -euo pipefail
FULL_URL="$BASE_URL/$RELEASE_TAG"
mkdir -p artifacts
cd artifacts
download() {
local filename="$1"
if ! wget -q "${FULL_URL}/${filename}" -O "${filename}"; then
echo "Failed to download ${filename}"
exit 1
fi
}
download "spacetime-aarch64-apple-darwin.tar.gz"
download "spacetime-aarch64-unknown-linux-gnu.tar.gz"
download "spacetime-x86_64-apple-darwin.tar.gz"
download "spacetime-x86_64-pc-windows-msvc.zip"
download "spacetime-x86_64-unknown-linux-gnu.tar.gz"
download "spacetimedb-update-aarch64-apple-darwin"
download "spacetimedb-update-aarch64-unknown-linux-gnu"
download "spacetimedb-update-x86_64-apple-darwin"
download "spacetimedb-update-x86_64-pc-windows-msvc.exe"
download "spacetimedb-update-x86_64-unknown-linux-gnu"
- name: Upload artifacts to GitHub Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RELEASE_TAG: ${{ github.event.inputs.release_tag }}
run: |
set -euo pipefail
cd artifacts
gh release upload "$RELEASE_TAG" ./* \
--repo "$GITHUB_REPOSITORY" \
--clobber