68 lines
2.2 KiB
YAML
68 lines
2.2 KiB
YAML
name: Check API v2 breaking changes
|
|
|
|
on:
|
|
workflow_call:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
env:
|
|
API_KEY_PREFIX: ${{ secrets.CI_API_KEY_PREFIX }}
|
|
API_PORT: ${{ vars.CI_API_V2_PORT }}
|
|
API_URL: "http://localhost"
|
|
CALCOM_LICENSE_KEY: ${{ secrets.CI_CALCOM_LICENSE_KEY }}
|
|
DATABASE_URL: ${{ secrets.CI_DATABASE_URL }}
|
|
DATABASE_READ_URL: ${{ secrets.CI_DATABASE_URL }}
|
|
DATABASE_WRITE_URL: ${{ secrets.CI_DATABASE_URL }}
|
|
JWT_SECRET: ${{ secrets.CI_JWT_SECRET }}
|
|
NEXTAUTH_SECRET: ${{ secrets.CI_NEXTAUTH_SECRET }}
|
|
NODE_ENV: ${{ vars.CI_NODE_ENV }}
|
|
NODE_OPTIONS: --max-old-space-size=4096
|
|
REDIS_URL: "redis://localhost:6379"
|
|
STRIPE_API_KEY: ${{ secrets.CI_STRIPE_PRIVATE_KEY }}
|
|
STRIPE_WEBHOOK_SECRET: ${{ secrets.CI_STRIPE_WEBHOOK_SECRET }}
|
|
WEB_APP_URL: "https://app.cal.com"
|
|
|
|
jobs:
|
|
check-api-v2-breaking-changes:
|
|
name: Check API v2 breaking changes
|
|
timeout-minutes: 10
|
|
runs-on: blacksmith-2vcpu-ubuntu-2404
|
|
steps:
|
|
- uses: docker/login-action@v3
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
sparse-checkout: .github
|
|
- uses: ./.github/actions/cache-checkout
|
|
- uses: ./.github/actions/yarn-install
|
|
|
|
- name: Build platform packages
|
|
run: |
|
|
yarn turbo run build \
|
|
--filter=@calcom/platform-constants \
|
|
--filter=@calcom/platform-enums \
|
|
--filter=@calcom/platform-utils \
|
|
--filter=@calcom/platform-types \
|
|
--filter=@calcom/platform-libraries \
|
|
--filter=@calcom/trpc
|
|
|
|
- name: Generate Swagger
|
|
working-directory: apps/api/v2
|
|
run: |
|
|
yarn prisma generate
|
|
yarn generate-swagger
|
|
|
|
- name: Check API v2 breaking changes
|
|
run: |
|
|
docker run --rm \
|
|
-v "$PWD:/work" -w /work \
|
|
tufin/oasdiff:latest \
|
|
breaking \
|
|
https://raw.githubusercontent.com/calcom/cal.com/refs/heads/main/docs/api-reference/v2/openapi.json \
|
|
docs/api-reference/v2/openapi.json \
|
|
--fail-on ERR \
|
|
--err-ignore .github/oasdiff-err-ignore.txt
|