Release (Private Packages) #9
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 (Private Packages) | |
on: | |
push: | |
branches: | |
- main # Ensure this matches your default branch | |
paths: | |
- ".changeset/**" | |
- ".github/workflows/packages-release.yml" | |
workflow_dispatch: | |
env: | |
CI: true | |
PNPM_CACHE_FOLDER: .pnpm-store | |
jobs: | |
version_or_release: | |
name: 'Version and open PR (or) release private packages' | |
timeout-minutes: 15 | |
runs-on: ubuntu-latest | |
environment: 'Production - Private Packages' | |
steps: | |
- name: checkout code repository | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: pnpm/action-setup@v4 | |
with: | |
version: 7.5.0 # Specify the pnpm version here | |
- name: setup node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18 | |
cache: 'pnpm' | |
- name: setup pnpm store config | |
run: pnpm config set store-dir $PNPM_CACHE_FOLDER | |
- name: install dependencies | |
run: pnpm install --frozen-lockfile | |
- name: setup npmrc file to configure pnpm | |
run: | | |
cat << EOF > "$HOME/.npmrc" | |
@mycompany:registry=https://npm.pkg.github.com | |
//npm.pkg.github.com/:_authToken=$NPM_PUBLISH_TOKEN | |
//registry.npmjs.org/:_authToken=null | |
EOF | |
env: | |
NPM_PUBLISH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }} | |
HOME: ${{ github.workspace }} | |
- name: create and publish versions | |
uses: changesets/action@v1 | |
with: | |
cwd: ${{ github.workspace }} | |
version: pnpm run version | |
commit: "chore: update package versions" | |
title: "Release (Private Packages)" | |
publish: pnpm run publish:ci | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
HOME: ${{ github.workspace }} |