Skip to content

Add CQRS StreamRunEventsCommand to kernel/backend/src/commands #104

Add CQRS StreamRunEventsCommand to kernel/backend/src/commands

Add CQRS StreamRunEventsCommand to kernel/backend/src/commands #104

Workflow file for this run

name: Publish Build
on:
workflow_dispatch:
push:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
publish:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [22]
permissions:
contents: write
id-token: write
env:
CI: true
NODE_OPTIONS: --max-old-space-size=4096
steps:
- name: 📂 Checkout Repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 0 # Changesets needs complete history for accurate tags
- name: 🟢 Set up Node.js ${{ matrix.node-version }}
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ matrix.node-version }}
registry-url: https://npmjs.org
- name: 📦 Install Workspace Dependencies
uses: backstage/actions/yarn-install@0d281eb2e96927466db49d4cd01d52b14809a66b # v0.7.10
with:
cache-prefix: ${{ runner.os }}-node-${{ matrix.node-version }}
- name: 🏎️ Initialize Turborepo Remote GitHub Actions Cache
uses: rharkor/caching-for-turbo@2238fae6eb9a9936f92356f54cb3660200d105e7 # v2.5.1
- name: 🛠️ Build and Verify Distribution Packages
run: yarn turbo run build typecheck
- name: 🚨 Slack Failure Notification (Build)
if: ${{ failure() }}
uses: rtCamp/action-slack-notify@33ca3be66c6f378fe1610fd1d5258632dbed5e58 # v2.4.0
env:
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_COLOR: "#FF0000"
SLACK_USERNAME: "Crew Suite Deploy Bot"
SLACK_TITLE: "❌ Master Build Failed"
SLACK_MESSAGE: "The main production compilation has failed. Review logs at: https://github.com{{ github.repository }}/actions/runs/${{ github.run_id }}"
- name: 🔐 Configure NPM Scope Registries & Provenance Flags
run: |
git config --global user.email "bot@ai-crew-suite.com"
git config --global user.name "ai-crew-suite-bot"
yarn config set npmScopes.ai-crew-suite.npmRegistryServer "https://registry.npmjs.org"
yarn config set npmScopes.ai-crew-suite.npmPublishRegistry "https://registry.npmjs.org"
yarn config set npmScopes.ai-crew-suite.npmAlwaysAuth true
yarn config set npmAuthToken "${{ secrets.NPM_AUTH_TOKEN }}"
echo "YARN_NPM_PUBLISH_PROVENANCE=true" >> $GITHUB_ENV
- name: 🚀 Publish Packages & Create GitHub Release
id: changesets
uses: changesets/action@ae32849d5ba541f9ae29e40e22a623bc13562f51 # v2.1.2
with:
publish-script: node packages/cli/dist/bin/crew.js publish
github-token: ${{ secrets.GITHUB_TOKEN }}
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
- name: 📢 Slack Success Notification
# Steps.changesets.outputs.published is 'true' only if packages were actually published
if: steps.changesets.outputs.published == 'true'
uses: rtCamp/action-slack-notify@33ca3be66c6f378fe1610fd1d5258632dbed5e58 # v2.4.0
env:
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_COLOR: "#36a64f"
SLACK_USERNAME: "Crew Suite Deploy Bot"
SLACK_TITLE: "🚀 New Release Published Successfully"
SLACK_MESSAGE: "A new version has been deployed under the @ai-crew-suite scope! View the updated code repository or releases section on GitHub."