2024-06-27 23:48:30 +08:00
name : Publish
on :
push :
branches :
- main
2024-06-28 00:15:54 +08:00
# manual trigger for other branches
workflow_dispatch :
2024-06-27 23:48:30 +08:00
2024-06-28 00:12:56 +08:00
concurrency :
group : ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress : true
2024-06-27 23:48:30 +08:00
jobs :
release :
name : Release
runs-on : ubuntu-latest
steps :
- name : Checkout Repo
2024-07-03 23:42:50 +08:00
uses : actions/checkout@v4
2024-06-27 23:48:30 +08:00
- name : Setup Node 20
2024-07-03 23:42:50 +08:00
uses : actions/setup-node@v4
2024-06-27 23:48:30 +08:00
with :
2024-07-03 23:42:50 +08:00
node-version : '20.x'
registry-url : 'https://registry.npmjs.org/'
2024-06-27 23:48:30 +08:00
- name : Install Dependencies
run : npm ci
- name : Create Release PR or publish stable version to npm
if : github.ref_name == 'main'
id : changesets
uses : changesets/action@v1
with :
publish : npm run publish
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
2024-07-03 23:42:50 +08:00
NODE_AUTH_TOKEN : ${{secrets.NPM_TOKEN}}
2024-06-27 23:48:30 +08:00
- name : Create Release PR or publish pre version to npm
if : github.ref_name != 'main'
id : changesets_pre
uses : changesets/action@v1
with :
publish : npm run publish:pre
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
2024-07-03 23:42:50 +08:00
NODE_AUTH_TOKEN : ${{secrets.NPM_TOKEN}}
2024-06-27 23:48:30 +08:00
- name : Send release notification
if : steps.changesets.outputs.published == 'true' || steps.changesets_pre.outputs.published == 'true'
id : slack
uses : slackapi/slack-github-action@v1.26.0
with :
payload : |
{
"message": "[Tiptap Editor Release]: New Tiptap Editor version has been released to NPM."
}
env :
SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}
- name : Send failure notification
if : failure()
id : slack_failure
uses : slackapi/slack-github-action@v1.26.0
with :
payload : |
{
2024-06-28 00:08:34 +08:00
"message": "[Tiptap Editor Release]: There was an issue publishing a new version. You can find the logs here: https://github.com/ueberdosis/tiptap/actions/runs/${{ github.run_id }}"
2024-06-27 23:48:30 +08:00
}
env :
SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}