123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- # Copyright 2019-2023 Tauri Programme within The Commons Conservancy
- # SPDX-License-Identifier: Apache-2.0
- # SPDX-License-Identifier: MIT
- name: Check generated files
- on:
- pull_request:
- paths:
- - '.github/workflows/check-generated-files.yml'
- - 'tooling/api/src/**'
- - 'core/tauri/scripts/bundle.global.js'
- - 'core/tauri-utils/src/config.rs'
- - 'tooling/cli/schema.json'
- - 'core/config-schema/schema.json'
- push:
- branches:
- - dev
- paths:
- - '.github/workflows/check-generated-files.yml'
- - 'tooling/api/src/**'
- - 'core/tauri/scripts/bundle.global.js'
- - 'core/tauri-utils/src/config.rs'
- - 'tooling/cli/schema.json'
- - 'core/config-schema/schema.json'
- concurrency:
- group: ${{ github.workflow }}-${{ github.ref }}
- cancel-in-progress: true
- jobs:
- changes:
- runs-on: ubuntu-latest
- outputs:
- api: ${{ steps.filter.outputs.api }}
- schema: ${{ steps.filter.outputs.schema }}
- steps:
- - uses: actions/checkout@v3
- - uses: dorny/paths-filter@v2
- id: filter
- with:
- filters: |
- api:
- - 'tooling/api/src/**'
- - 'tooling/api/docs/js-api.json'
- - 'core/tauri/scripts/bundle.global.js'
- schema:
- - 'core/tauri-utils/src/config.rs'
- - 'tooling/cli/schema.json'
- - 'core/config-schema/schema.json'
- check-api:
- runs-on: ubuntu-latest
- needs: changes
- if: needs.changes.outputs.api == 'true'
- steps:
- - uses: actions/checkout@v3
- - name: build api
- working-directory: tooling/api
- run: yarn && yarn build
- - name: check api
- run: |
- git restore tooling/api/docs/js-api.json
- ./.scripts/ci/has-diff.sh
- check-schema:
- runs-on: ubuntu-latest
- needs: changes
- if: needs.changes.outputs.schema == 'true'
- steps:
- - uses: actions/checkout@v3
- - name: install stable
- uses: actions-rs/toolchain@v1
- with:
- toolchain: stable
- override: true
- - name: install Linux dependencies
- run: |
- sudo apt-get update
- sudo apt-get install -y libgtk-3-dev
- - uses: Swatinem/rust-cache@v2
- with:
- workspaces: core -> ../target
- - name: generate schema.json
- uses: actions-rs/cargo@v1
- with:
- command: build
- args: --manifest-path ./core/config-schema/Cargo.toml
- - name: check schema
- run: ./.scripts/ci/has-diff.sh
|