Skip to content

feat: add more flags and refine #5

feat: add more flags and refine

feat: add more flags and refine #5

Workflow file for this run

name: Release all CLIs & Deploy CF Workers
on:
pull_request:
branches: [ main ]
types: [ opened, synchronize ]
push:
branches: [ main ]
env:
WORKSPACES: create-db create-pg create-postgres
jobs:
# This job runs only on pull_request → bumps versions & changelogs via Changesets
version:
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- name: 🛎️ Checkout full & tags
uses: actions/checkout@v3
with:
fetch-depth: 0
persist-credentials: true
- 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: 🔄 Version & changelogs via Changesets
uses: changesets/action@v1
with:
version: pnpm changeset version --yes
commitMessage: chore(release): bump [skip ci]

Check failure on line 40 in .github/workflows/release.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/release.yml

Invalid workflow file

You have an error in your yaml syntax on line 40
commitMode: git-cli
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# This job runs only on push → aggregates logs, creates a release & publishes
publish:
if: github.event_name == 'push'
runs-on: ubuntu-latest
steps:
- name: 🛎️ Checkout full & tags
uses: actions/checkout@v3
with:
fetch-depth: 0
persist-credentials: true
- 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: 🔧 Install jq
run: sudo apt-get update && sudo apt-get install -y jq
- name: 📄 Copy README to child CLIs
run: |
for pkg in $WORKSPACES; do
cp create-db/README.md "$pkg/README.md"
done
- name: 📑 Aggregate changelogs
id: aggregate
run: |
# grab the new version from one of your packages
NEW_VERSION=$(jq -r '.version' create-db/package.json)
echo "NEW_VERSION=$NEW_VERSION" >> $GITHUB_ENV
# build the aggregated changelog
echo "# Release v$NEW_VERSION" > AGGREGATED_CHANGELOG.md
for pkg in $WORKSPACES; do
echo "## $pkg" >> AGGREGATED_CHANGELOG.md
# extract the section for this version
sed -n "/^## v$NEW_VERSION/,/^## /p" $pkg/CHANGELOG.md \
| sed '1d;$d' \
>> AGGREGATED_CHANGELOG.md
echo "" >> AGGREGATED_CHANGELOG.md
done
- name: 🚩 Create GitHub Release
uses: actions/create-release@v1
with:
tag_name: v${{ env.NEW_VERSION }}
release_name: Release v${{ env.NEW_VERSION }}
body_path: AGGREGATED_CHANGELOG.md
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: 🔑 Configure npm auth
run: echo "//registry.npmjs.org/:_authToken=${{ secrets.CREATE_DB_TOKEN_NPM }}" > ~/.npmrc
- name: 🚀 Publish CLIs
run: pnpm -r --filter "{create-db,create-pg,create-postgres}" publish --access public
# — CF production deploys commented out
# - name: ☁️ Deploy create-db-worker (production)
# uses: cloudflare/wrangler-action@v3
# ...
- name: 🧹 Cleanup npm auth
run: rm -f ~/.npmrc