Files
copilotkit__copilotkit/.github/workflows/showcase_qa-sync.yml

56 lines
1.4 KiB
YAML

name: "Showcase: Sync QA to Notion"
on:
push:
branches: [main]
paths:
- "showcase/packages/*/qa/**"
- "showcase/packages/*/manifest.yaml"
- "showcase/scripts/sync-qa-to-notion.ts"
workflow_dispatch:
concurrency:
group: showcase-qa-sync
cancel-in-progress: true
jobs:
sync-qa:
name: Sync QA Instructions
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Setup pnpm
uses: pnpm/action-setup@v4
- name: Install dependencies
working-directory: showcase/scripts
run: pnpm install --frozen-lockfile || pnpm install
- name: Validate manifests
working-directory: showcase/scripts
run: npx tsx generate-registry.ts
- name: Sync QA to Notion
working-directory: showcase/scripts
env:
NOTION_API_KEY: ${{ secrets.SHOWCASE_NOTION_API_KEY }}
run: npx tsx sync-qa-to-notion.ts
- name: Notify Slack (failure)
if: failure()
uses: slackapi/slack-github-action@v2.1.0
with:
webhook: ${{ secrets.SLACK_WEBHOOK_OSS_ALERTS }}
webhook-type: incoming-webhook
payload: |
{ "text": ":x: *QA sync to Notion*: failed | <https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}|View run>" }