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