Release (Private Packages) #31
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: | |
- master | |
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 | |
- name: setup pnpm | |
uses: pnpm/action-setup@v4 | |
- name: setup node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18 | |
cache: 'pnpm' | |
- name: create pnpm store directory | |
run: mkdir -p $PNPM_CACHE_FOLDER | |
- name: setup pnpm store config | |
run: pnpm config set store-dir $PNPM_CACHE_FOLDER | |
- name: verify pnpm store config | |
run: pnpm config get store-dir | |
- 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=\${{ secrets.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 }} | |