0. Release > Canary #139
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: 0. Release > Canary | |
on: | |
workflow_dispatch: | |
inputs: | |
increment: | |
description: 'Type of Version Bump To Perform' | |
required: true | |
default: 'patch' | |
type: choice | |
options: | |
- patch | |
- minor | |
- major | |
schedule: | |
- cron: '0 20 * * 2' # weekly (Tuesday) 12 PM PST | |
- cron: '0 20 * * 5' # weekly (Friday) 12 PM PST | |
env: | |
TURBO_API: http://127.0.0.1:9080 | |
TURBO_TOKEN: this-is-not-a-secret | |
TURBO_TEAM: myself | |
jobs: | |
release: | |
name: Run publish script | |
runs-on: ubuntu-latest | |
environment: deployment | |
steps: | |
- name: Enforce Branch | |
# Note: we always checkout main in actions/checkout, but this enforces | |
# good hygiene. | |
if: github.ref != 'refs/heads/main' | |
run: | | |
echo "Releases may only be performed from the main branch." | |
exit 1 | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4 | |
with: | |
fetch-depth: 1 | |
fetch-tags: true | |
show-progress: false | |
token: ${{ secrets.GH_DEPLOY_TOKEN }} | |
ref: main | |
- name: Check should run if HEAD is untagged | |
run: | | |
echo "HEAD is $(git name-rev --tags --name-only $(git rev-parse HEAD))" | |
if [[ "$(git name-rev --tags --name-only $(git rev-parse HEAD))" != "undefined" ]]; then | |
exit 1 | |
fi | |
- uses: ./.github/actions/setup | |
with: | |
install: true | |
repo-token: ${{ secrets.GH_DEPLOY_TOKEN }} | |
- name: Make sure git user is setup | |
run: | | |
git config --local user.email ${{ secrets.GH_DEPLOY_EMAIL }} | |
git config --local user.name ${{ secrets.GH_DEPLOY_NAME }} | |
- name: Publish with script | |
run: bun release exec canary --increment=${{ github.event.inputs.increment }} | |
env: | |
FORCE_COLOR: 2 | |
CI: true | |
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }} | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: tarballs | |
path: tmp/tarballs/**/*.tgz |