Skip to content

feat: Introduce ChangelogCarousel and UpdatesSection components to di… #15

feat: Introduce ChangelogCarousel and UpdatesSection components to di…

feat: Introduce ChangelogCarousel and UpdatesSection components to di… #15

Workflow file for this run

name: CI/CD Pipeline
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
detect-changes:
runs-on: ubuntu-latest
outputs:
api: ${{ steps.changes.outputs.api }}
docs: ${{ steps.changes.outputs.docs }}
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- uses: dorny/paths-filter@v3
id: changes
with:
filters: |
api:
- 'apps/api/**'
docs:
- 'apps/docs/**'
build-api:
needs: detect-changes
if: needs.detect-changes.outputs.api == 'true'
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./apps/api
steps:
- uses: actions/checkout@v5
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- run: bun install
- run: bun run build
- run: bun test
build-docs:
needs: detect-changes
if: needs.detect-changes.outputs.docs == 'true'
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./apps/docs
steps:
- uses: actions/checkout@v5
- uses: pnpm/action-setup@v4
with:
version: 8
- uses: actions/setup-node@v6
with:
node-version: "18"
cache: "pnpm"
cache-dependency-path: "./apps/docs/pnpm-lock.yaml"
- run: pnpm install
- run: pnpm build
deploy:
needs: [build-api, build-docs]
if: |
github.ref == 'refs/heads/main' &&
!cancelled() &&
(needs.build-api.result == 'success' || needs.build-api.result == 'skipped') &&
(needs.build-docs.result == 'success' || needs.build-docs.result == 'skipped')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Deploy to production
run: |
echo "Deploying affected applications to production..."