mirror of
https://github.com/fluxerapp/fluxer.git
synced 2026-09-02 21:04:06 +03:00
57 lines
1.5 KiB
YAML
57 lines
1.5 KiB
YAML
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
name: Dart SDK Validation
|
|
|
|
on:
|
|
pull_request:
|
|
|
|
permissions:
|
|
contents: read
|
|
pull-requests: read
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
openapi-drift:
|
|
name: Detect OpenAPI schema drift
|
|
runs-on: ubuntu-24.04
|
|
timeout-minutes: 15
|
|
steps:
|
|
- name: Checkout fluxer
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: Set up Rust toolchain (CI helpers)
|
|
uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9
|
|
with:
|
|
toolchain: "1.93.0"
|
|
|
|
- name: Install pnpm
|
|
uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271
|
|
|
|
- name: Install Node.js
|
|
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e
|
|
with:
|
|
node-version: '24'
|
|
cache: 'pnpm'
|
|
|
|
- name: Install dependencies
|
|
run: >-
|
|
tools/ci/run.sh ci
|
|
--step install_dependencies
|
|
|
|
- name: Generate OpenAPI schemas
|
|
run: pnpm openapi:generate
|
|
|
|
- name: Validate OpenAPI schemas
|
|
run: pnpm openapi:validate
|
|
|
|
- name: Check drift of OpenAPI schemas
|
|
run: |
|
|
if ! git diff --exit-code -- fluxer_api/src/api/openapi/openapi.json fluxer_admin/openapi-admin.json; then
|
|
echo "::error::OpenAPI schemas are outdated."
|
|
exit 1
|
|
fi
|