Publish main/4180c299dc941abed5230a37241c42318c5a3868 commit from prisma-engines to npm package @prisma/engines-version #2933
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: publish-engines | |
run-name: Publish ${{ github.event.client_payload.branch }}/${{ github.event.client_payload.commit }} commit from prisma-engines to npm package @prisma/engines-version | |
on: | |
repository_dispatch: | |
types: | |
- publish-engines | |
concurrency: publish-engines | |
jobs: | |
publish-engines: | |
# Do not change `name`, prisma-engines Buildkite build job depends on this name ending with the commit (<-- is that actually true?) | |
name: 'Publish engines-wrapper packages for prisma-engines branch ${{ github.event.client_payload.branch }} and commit ${{ github.event.client_payload.commit }}' | |
timeout-minutes: 10 | |
runs-on: ubuntu-latest | |
permissions: | |
# required for publishing to npm with --provenance | |
# see https://docs.npmjs.com/generating-provenance-statements | |
id-token: write | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
token: ${{ secrets.PRISMA_BOT_TOKEN }} | |
- name: Print input | |
env: { THE_INPUT: '${{ toJson(github.event.client_payload) }}' } | |
run: | | |
echo $THE_INPUT | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- run: bash .github/workflows/setup.sh | |
env: | |
CI: true | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- run: pnpm run publish-all | |
id: publish_script | |
env: | |
CI: true | |
GITHUB_EVENT_CLIENT_PAYLOAD: ${{ toJson(github.event.client_payload) }} | |
# https://docs.npmjs.com/generating-provenance-statements | |
NPM_CONFIG_PROVENANCE: true | |
- name: Workflow dispatch to prisma/prisma-engines for @prisma/prisma-schema-wasm publish to npm | |
uses: benc-uk/workflow-dispatch@v1 | |
with: | |
workflow: Build and publish @prisma/prisma-schema-wasm | |
repo: prisma/prisma-engines | |
token: ${{ secrets.BOT_TOKEN }} | |
inputs: '{ "enginesHash": "${{ github.event.client_payload.commit }}", "enginesWrapperVersion": "${{ steps.publish_script.outputs.new_prisma_version }}", "npmDistTag": "${{ steps.publish_script.outputs.npm_dist_tag }}" }' | |
- name: Workflow dispatch to prisma/prisma-engines for @prisma/query-engine-wasm publish to npm | |
uses: benc-uk/workflow-dispatch@v1 | |
with: | |
workflow: Build and publish @prisma/query-engine-wasm | |
repo: prisma/prisma-engines | |
token: ${{ secrets.BOT_TOKEN }} | |
inputs: '{ "enginesHash": "${{ github.event.client_payload.commit }}", "packageVersion": "${{ steps.publish_script.outputs.new_prisma_version }}", "npmDistTag": "${{ steps.publish_script.outputs.npm_dist_tag }}" }' | |
- name: Workflow dispatch to prisma/prisma for version update | |
uses: benc-uk/workflow-dispatch@v1 | |
with: | |
workflow: Update Engines Version | |
repo: prisma/prisma | |
token: ${{ secrets.BOT_TOKEN }} | |
inputs: '{ "version": "${{ steps.publish_script.outputs.new_prisma_version }}", "npmDistTag": "${{ steps.publish_script.outputs.npm_dist_tag }}" }' | |
- uses: stefanzweifel/git-auto-commit-action@v5 | |
with: | |
# Optional but recommended, defaults to "Apply automatic changes" | |
commit_message: engines commit ${{ github.event.client_payload.commit }} | |
# Optional commit user and author settings | |
commit_user_name: prisma-bot | |
commit_user_email: [email protected] | |
commit_author: prisma-bot <[email protected]> | |
- name: Set current job url in SLACK_FOOTER env var | |
if: ${{ failure() }} | |
run: echo "SLACK_FOOTER=<$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID|Click here to go to the job logs>" >> $GITHUB_ENV | |
- name: Slack Notification on Failure | |
if: ${{ failure() }} | |
uses: rtCamp/[email protected] | |
env: | |
SLACK_TITLE: 'Publishing failed :x:' | |
SLACK_COLOR: '#FF0000' | |
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} |