Skip to content

feat: ci

feat: ci #25

Workflow file for this run

name: Continuous Integration
on:
workflow_dispatch:
pull_request:
branches:
- "*"
paths-ignore:
- "**/*.md"
- "docs"
push:
branches:
- "*"
paths-ignore:
- "**/*.md"
- "docs"
jobs:
ci:
name: Continuous Integration
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Cache node modules
id: cache
uses: actions/cache@v3
with:
path: |
node_modules
key: cache-node-modules-${{ hashFiles('**/package-lock.json') }}
- uses: actions/setup-node@v3
if: steps.cache.outputs.cache-hit != 'true'
with:
node-version: 18.x
- name: Install Dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Check Formatting
run: npx prettier . --check
- name: Lint
run: npx turbo run lint
- name: Test
run: npx turbo run test
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }}
AZURE_OPENAI_DEPLOYMENT: ${{ secrets.AZURE_OPENAI_DEPLOYMENT }}
- name: Build
run: npx turbo run build