Skip to content

feat: initial release of Big Calendar #2

feat: initial release of Big Calendar

feat: initial release of Big Calendar #2

Workflow file for this run

name: Release & Publish
on:
push:
branches: [main]
workflow_dispatch:
concurrency:
group: release
cancel-in-progress: false
permissions:
contents: write
id-token: write
jobs:
release:
runs-on: ubuntu-latest
# Skip the automated release/version commit to avoid loops.
if: ${{ github.event_name != 'push' || !contains(github.event.head_commit.message, 'chore(release)') }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup pnpm
uses: pnpm/action-setup@v6
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 22
cache: pnpm
registry-url: https://registry.npmjs.org
- name: Install
run: pnpm install --frozen-lockfile
- name: Build all packages
run: pnpm exec nx run-many -t build
- name: Configure git identity
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
- name: Version + changelog + GitHub release (Nx Release)
run: |
if git tag --list 'v*' | grep -q .; then
pnpm exec nx release --yes
else
pnpm exec nx release --first-release --yes
fi
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Publish to npm
run: pnpm exec nx release publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
NPM_CONFIG_PROVENANCE: 'true'