ci: prevent running version packages on its own commit #357
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: Release | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
version: | |
name: Version Packages | |
runs-on: ubuntu-latest | |
if: github.event.head_commit.message != 'version packages' | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- name: Install Dependencies | |
run: | | |
npm config set //registry.npmjs.org/:_authToken ${{ secrets.NPM_TOKEN }} | |
npm ci | |
- name: Version Packages | |
uses: changesets/action@v1 | |
with: | |
commit: version packages | |
publish: echo "This step is not configured for publishing." | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
publish: | |
name: Publish Packages | |
runs-on: ubuntu-latest | |
if: github.event.head_commit.message == 'version packages' | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- name: Install Dependencies | |
run: | | |
npm config set //registry.npmjs.org/:_authToken ${{ secrets.NPM_TOKEN }} | |
npm ci | |
- name: Build Packages | |
run: | | |
npm run build:packages | |
- name: Publish Packages | |
uses: changesets/action@v1 | |
with: | |
publish: npx changeset publish | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
deploy: | |
name: Deploy Apps | |
runs-on: ubuntu-latest | |
if: github.event.head_commit.message != 'version packages' | |
concurrency: ${{ github.workflow }}-${{ github.ref }} | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v3 | |
- name: Setup Node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18 | |
cache: npm | |
- name: Install Dependencies | |
run: | | |
npm config set //registry.npmjs.org/:_authToken ${{ secrets.NPM_TOKEN }} | |
npm ci | |
- name: Configure AWS Credentials | |
uses: aws-actions/configure-aws-credentials@v4 | |
with: | |
aws-access-key-id: ${{ vars.AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
aws-region: ${{ vars.AWS_REGION }} | |
- name: Deploy Apps | |
run: | | |
export NODE_OPTIONS="--max_old_space_size=4096" | |
npm run build -- --env-mode=loose | |
npm run deploy -- --env-mode=loose |