67 lines
2.5 KiB
YAML
67 lines
2.5 KiB
YAML
name: Release Router
|
|
|
|
on:
|
|
push:
|
|
branches-ignore:
|
|
- main
|
|
pull_request:
|
|
workflow_dispatch:
|
|
inputs:
|
|
publish_to_github:
|
|
description: 'Publish to GitHub Packages instead of npm'
|
|
type: boolean
|
|
default: false
|
|
packages:
|
|
description: 'Comma-separated list of packages to publish, or "all"'
|
|
type: string
|
|
default: 'all'
|
|
|
|
jobs:
|
|
switch:
|
|
runs-on: ubuntu-24.04
|
|
outputs:
|
|
target: ${{ steps.route.outputs.target }}
|
|
steps:
|
|
- name: Route release
|
|
id: route
|
|
shell: bash
|
|
run: |
|
|
HEAD_REPO="${{ github.event.pull_request.head.repo.full_name }}"
|
|
if [[ "$GITHUB_EVENT_NAME" == "workflow_dispatch" && "${GITHUB_REF##*/}" == "main" ]]; then
|
|
echo "target=latest" >> $GITHUB_OUTPUT
|
|
# only run on all pushes or pull requests from forks
|
|
elif [[ "$GITHUB_EVENT_NAME" == "push" ]] || [[ "$HEAD_REPO" != "$GITHUB_REPOSITORY" ]]; then
|
|
echo "target=feature" >> $GITHUB_OUTPUT
|
|
else
|
|
echo "target=skip" >> $GITHUB_OUTPUT
|
|
fi
|
|
|
|
run-feature:
|
|
needs: switch
|
|
if: needs.switch.outputs.target == 'feature'
|
|
uses: ./.github/workflows/release-feature-branch.yaml
|
|
secrets:
|
|
PLANETSCALE_CONNECTION_STRING: ${{ secrets.PLANETSCALE_CONNECTION_STRING }}
|
|
NEON_CONNECTION_STRING: ${{ secrets.NEON_CONNECTION_STRING }}
|
|
# NEON_HTTP_CONNECTION_STRING: ${{ secrets.NEON_CONNECTION_STRING }}
|
|
NETLIFY_DB_URL: ${{ secrets.NETLIFY_DB_URL }}
|
|
TIDB_CONNECTION_STRING: ${{ secrets.TIDB_CONNECTION_STRING }}
|
|
XATA_API_KEY: ${{ secrets.XATA_API_KEY }}
|
|
XATA_BRANCH: ${{ secrets.XATA_BRANCH }}
|
|
LIBSQL_REMOTE_URL: ${{ secrets.LIBSQL_REMOTE_URL }}
|
|
LIBSQL_REMOTE_TOKEN: ${{ secrets.LIBSQL_REMOTE_TOKEN }}
|
|
|
|
run-latest:
|
|
needs: switch
|
|
if: needs.switch.outputs.target == 'latest'
|
|
uses: ./.github/workflows/release-latest.yaml
|
|
secrets:
|
|
PLANETSCALE_CONNECTION_STRING: ${{ secrets.PLANETSCALE_CONNECTION_STRING }}
|
|
NEON_CONNECTION_STRING: ${{ secrets.NEON_CONNECTION_STRING }}
|
|
# NEON_HTTP_CONNECTION_STRING: ${{ secrets.NEON_CONNECTION_STRING }}
|
|
NETLIFY_DB_URL: ${{ secrets.NETLIFY_DB_URL }}
|
|
TIDB_CONNECTION_STRING: ${{ secrets.TIDB_CONNECTION_STRING }}
|
|
XATA_API_KEY: ${{ secrets.XATA_API_KEY }}
|
|
XATA_BRANCH: ${{ secrets.XATA_BRANCH }}
|
|
LIBSQL_REMOTE_URL: ${{ secrets.LIBSQL_REMOTE_URL }}
|
|
LIBSQL_REMOTE_TOKEN: ${{ secrets.LIBSQL_REMOTE_TOKEN }} |