# 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" - "**/guest-js/**" concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: changes: runs-on: ubuntu-latest outputs: packages: ${{ steps.filter.outputs.changes }} steps: - uses: actions/checkout@v3 - uses: dorny/paths-filter@v2 id: filter with: filters: | app: - .github/workflows/check-generated-files.yml - plugins/app/guest-js/** - plugins/app/src/api-iife.js authenticator: - .github/workflows/check-generated-files.yml - plugins/authenticator/guest-js/** - plugins/authenticator/src/api-iife.js autostart: - .github/workflows/check-generated-files.yml - plugins/autostart/guest-js/** - plugins/autostart/src/api-iife.js cli: - .github/workflows/check-generated-files.yml - plugins/cli/guest-js/** - plugins/cli/src/api-iife.js clipboard: - .github/workflows/check-generated-files.yml - plugins/clipboard/guest-js/** - plugins/clipboard/src/api-iife.js dialog: - .github/workflows/check-generated-files.yml - plugins/dialog/guest-js/** - plugins/dialog/src/api-iife.js fs: - .github/workflows/check-generated-files.yml - plugins/fs/guest-js/** - plugins/fs/src/api-iife.js global-shortcut: - .github/workflows/check-generated-files.yml - plugins/global-shortcut/guest-js/** - plugins/global-shortcut/src/api-iife.js http: - .github/workflows/check-generated-files.yml - plugins/http/guest-js/** - plugins/http/src/api-iife.js log: - .github/workflows/check-generated-files.yml - plugins/log/guest-js/** - plugins/log/src/api-iife.js notification: - .github/workflows/check-generated-files.yml - plugins/notification/guest-js/** - plugins/notification/src/api-iife.js os: - .github/workflows/check-generated-files.yml - plugins/os/guest-js/** - plugins/os/src/api-iife.js positioner: - .github/workflows/check-generated-files.yml - plugins/positioner/guest-js/** - plugins/positioner/src/api-iife.js process: - .github/workflows/check-generated-files.yml - plugins/process/guest-js/** - plugins/process/src/api-iife.js shell: - .github/workflows/check-generated-files.yml - plugins/shell/guest-js/** - plugins/shell/src/api-iife.js sql: - .github/workflows/check-generated-files.yml - plugins/sql/guest-js/** - plugins/sql/src/api-iife.js store: - .github/workflows/check-generated-files.yml - plugins/store/guest-js/** - plugins/store/src/api-iife.js stronghold: - .github/workflows/check-generated-files.yml - plugins/stronghold/guest-js/** - plugins/stronghold/src/api-iife.js updater: - .github/workflows/check-generated-files.yml - plugins/updater/guest-js/** - plugins/updater/src/api-iife.js upload: - .github/workflows/check-generated-files.yml - plugins/upload/guest-js/** - plugins/upload/src/api-iife.js websocket: - .github/workflows/check-generated-files.yml - plugins/websocket/guest-js/** - plugins/websocket/src/api-iife.js window: - .github/workflows/check-generated-files.yml - plugins/window/guest-js/** - plugins/window/src/api-iife.js window-state: - .github/workflows/check-generated-files.yml - plugins/window-state/guest-js/** - plugins/window-state/src/api-iife.js test: needs: changes if: ${{ needs.changes.outputs.packages != '[]' && needs.changes.outputs.packages != '' }} strategy: fail-fast: false matrix: package: ${{ fromJSON(needs.changes.outputs.packages) }} runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Cache pnpm modules uses: actions/cache@v3 with: path: ~/.pnpm-store key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | ${{ runner.os }}- - uses: actions/setup-node@v3 with: node-version: 18 - uses: pnpm/action-setup@v2 with: version: 7.x.x run_install: true - name: build api working-directory: plugins/${{ matrix.package }} run: pnpm install && pnpm build - name: check diff run: | ./.scripts/ci/has-diff.sh