Skip to content

Merge pull request #16 from prisma/patch-10 #38

Merge pull request #16 from prisma/patch-10

Merge pull request #16 from prisma/patch-10 #38

Workflow file for this run

name: Release CLIs
on:
push:
branches:
- main
concurrency: ${{ github.workflow }}-${{ github.ref }}
env:
WORKSPACES: create-db create-pg create-postgres
jobs:
release:
name: πŸš€ Release CLIs
runs-on: ubuntu-latest
steps:
- name: πŸ›ŽοΈ Checkout Repo
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: 🀐 Disable Husky
run: echo "HUSKY=0" >> $GITHUB_ENV
- name: πŸ“¦ Setup pnpm
uses: pnpm/action-setup@v2
with:
version: 8
- name: πŸ”§ Install dependencies
run: pnpm install
- name: ❌ Disable pnpm git-checks
run: pnpm config set git-checks false
# Copy README files before any version bump or publish
- name: πŸ“„ Copy README to child CLIs
run: |
for pkg in create-pg create-postgres; do
cp create-db/README.md "$pkg/README.md"
done
# Configure npm for publishing
- name: πŸ”‘ Configure npm auth
run: echo "//registry.npmjs.org/:_authToken=${{ secrets.CREATE_DB_TOKEN_NPM }}" > ~/.npmrc
# Generate version updates with changesets (PR created if branch protected)
- name: πŸ“ Changesets Versioning
uses: changesets/action@v1
with:
version: pnpm changeset version
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# Publish packages to npm if changesets are applied
- name: πŸš€ Publish Each CLI Package
if: steps.changesets.outputs.hasChangesets == 'false'
run: |
# Export secrets for CLI usage
export CREATE_DB_WORKER_URL="${{ secrets.CREATE_DB_WORKER_URL }}"
export CLAIM_DB_WORKER_URL="${{ secrets.CLAIM_DB_WORKER_URL }}"
echo "Using CREATE_DB_WORKER_URL=$CREATE_DB_WORKER_URL"
echo "Using CLAIM_DB_WORKER_URL=$CLAIM_DB_WORKER_URL"
# Publish each package
for pkg in $WORKSPACES; do
echo "Publishing $pkg to npm..."
cd "$pkg"
# Stable patch bump
npm version patch --no-git-tag-version
# Publish to npm
pnpm publish --access public
cd - >/dev/null
done
env:
NODE_AUTH_TOKEN: ${{ secrets.CREATE_DB_TOKEN_NPM }}
- name: 🧹 Cleanup npm auth
run: rm -f ~/.npmrc