mirror of
https://github.com/CopilotKit/CopilotKit.git
synced 2026-09-14 16:26:20 +08:00
70 lines
2.5 KiB
YAML
70 lines
2.5 KiB
YAML
name: 🚀 pkg-pr-new
|
|
on:
|
|
push:
|
|
paths:
|
|
- "packages/**"
|
|
pull_request:
|
|
paths:
|
|
- "packages/**"
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
NX_VERBOSE_LOGGING: true
|
|
NX_CI_EXECUTION_ID: ${{ github.head_ref }}-${{ github.sha }}-${{ github.run_attempt }}
|
|
NX_CI_EXECUTION_ENV: "Publish Commit"
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 15
|
|
# NOTE: deliberately NOT in the `npm` environment. pkg-pr-new publishes to
|
|
# pkg.pr.new (not the npm registry) and uses no environment-scoped secrets,
|
|
# and this job runs on every push/PR touching packages/** — the npm
|
|
# environment's deployment-branch policy (main, canary/*,
|
|
# release/publish/*) would block it.
|
|
permissions:
|
|
contents: read
|
|
# pkg-pr-new posts snapshot comments on the PR using the workflow token
|
|
pull-requests: write
|
|
|
|
steps:
|
|
# persist-credentials required: pkg-pr-new uses repo token to post snapshot comments on the PR
|
|
- name: Checkout code
|
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
|
|
- name: Install pnpm
|
|
uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
|
|
|
|
- run: corepack enable
|
|
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
|
with:
|
|
node-version-file: "package.json"
|
|
# setup-node built-in cache is fork-safe (fork PRs can't write to base repo cache)
|
|
cache: "pnpm"
|
|
cache-dependency-path: "**/pnpm-lock.yaml"
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Configure Nx Cloud environment
|
|
run: |
|
|
echo "NX_CI_EXECUTION_ID=${{ github.run_id }}-${{ github.run_attempt }}-pkg-pr-new" >> $GITHUB_ENV
|
|
echo "NX_CLOUD_NO_TIMEOUTS=true" >> $GITHUB_ENV
|
|
echo "NX_CLOUD_DISTRIBUTED_EXECUTION=false" >> $GITHUB_ENV
|
|
echo "NX_NO_CLOUD=true" >> $GITHUB_ENV
|
|
|
|
- name: Build
|
|
run: pnpm run build
|
|
|
|
# The generated default template installs every published package into a
|
|
# single Node sandbox. That mixes browser, server, Angular, Vue, and React
|
|
# Native packages, making the StackBlitz preview unusable. Package preview
|
|
# URLs remain available without the default template.
|
|
- run: npx pkg-pr-new publish --pnpm --packageManager pnpm --no-template "./packages/*"
|