name: CI permissions: contents: read on: push: branches: [master] pull_request: merge_group: jobs: test: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup node uses: actions/setup-node@v4 with: node-version-file: "package.json" - name: Install dependencies run: npm ci - name: Build Libs run: npm run build-libs - name: Lint JS run: npm run test-lint-js env: CI: true - name: Validate JS Types run: npm run test-ts env: CI: true - name: Lint CSS run: npm run test-lint-css env: CI: true - name: Lint HTML run: npm run test-lint-html env: CI: true - name: Tests run: npm run test-code env: CI: true - name: Test JSON run: npm run test-json env: CI: true - name: Build Legal run: npm run license-report - name: Build run: npm run build - name: Validate manifest.json of the extension uses: cardinalby/schema-validator-action@76c68bfc941bd2dc82859f2528984999d1df36a4 # v3.1.0 with: file: ext/manifest.json schema: "https://json.schemastore.org/chrome-manifest.json" fixSchemas: true