web/.github/workflows/publish.yml

77 lines
2.3 KiB
YAML
Raw Normal View History

2022-06-14 18:50:08 +03:00
name: Version Bump
on:
push:
branches: [ develop, main ]
jobs:
2022-06-14 19:20:17 +03:00
Build:
if: contains(github.event.head_commit.message, 'chore(release)') == false
2022-06-14 18:50:08 +03:00
runs-on: ubuntu-latest
2022-06-20 18:53:42 +03:00
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
2022-06-14 18:50:08 +03:00
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
2022-06-14 19:20:17 +03:00
token: ${{ secrets.CI_PAT_TOKEN }}
2022-06-14 18:50:08 +03:00
fetch-depth: 0
2022-06-14 19:20:17 +03:00
2022-06-20 19:07:32 +03:00
- uses: actions/setup-node@v3
2022-06-20 19:04:16 +03:00
with:
registry-url: 'https://registry.npmjs.org'
2022-06-14 19:20:17 +03:00
- name: Setup git config
run: |
git config --global user.name "standardci"
git config --global user.email "ci@standardnotes.com"
- name: Import GPG key
uses: crazy-max/ghaction-import-gpg@v4
with:
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
passphrase: ${{ secrets.PASSPHRASE }}
git_user_signingkey: true
git_commit_gpgsign: true
2022-06-14 18:50:08 +03:00
- name: Set up Ruby
uses: ruby/setup-ruby@v1
2022-06-14 19:20:17 +03:00
- name: Install Dependencies
2022-06-14 20:08:05 +03:00
run: yarn install
- name: Bump Prod Version Graduate
2022-06-16 22:45:44 +03:00
continue-on-error: true
id: graduateRelease
2022-06-14 19:20:17 +03:00
if: ${{ github.ref == 'refs/heads/main' }}
2022-06-20 18:53:42 +03:00
run: |
yarn release:prod:graduate
yarn publish:prod
- name: Bump Prod Version Fallback
if: ${{ always() && github.ref == 'refs/heads/main' && steps.graduateRelease.outcome == 'failure' }}
run: |
echo Falling back to non-graduate release due to https://github.com/lerna/lerna/issues/2532
git stash
yarn release:prod
2022-06-20 18:53:42 +03:00
yarn publish:prod
2022-06-14 19:20:17 +03:00
- name: Bump Beta Version
if: ${{ github.ref == 'refs/heads/develop' }}
2022-06-20 18:53:42 +03:00
run: |
yarn release:beta
yarn publish:beta
- name: Merge release into develop
if: ${{ github.ref == 'refs/heads/main' }}
run: |
2022-06-20 20:04:32 +03:00
git config pull.rebase false
git checkout develop
git pull origin main
git push origin develop
- name: Notify Release Update
if: ${{ github.ref == 'refs/heads/main' }}
uses: peter-evans/repository-dispatch@v2
with:
token: ${{ secrets.CI_PAT_TOKEN }}
2022-06-22 23:08:10 +03:00
repository: ${{ secrets.RELEASES_EVENT_RECEIVING_REPO }}
event-type: releases-updated-event