name: PR check pipeline on: pull_request: branches: [ "main", "next" ] paths-ignore: - '**.md' - 'LICENSE' - 'PRIVACY' - '**/cd_pipeline.yaml' - '**/dependabot.yml' - '**/codeql-analysis.yml' - '.vscode/*' - '.devcontainer/*' workflow_dispatch: inputs: targets: description: Targets required: true default: '["chrome","firefox"]' type: choice options: - '["chrome","firefox"]' - '["chrome"]' - '["firefox"]' jobs: build: runs-on: ubuntu-latest strategy: fail-fast: false matrix: target: ${{ fromJSON(github.event.inputs.targets || '["chrome","firefox"]') }} steps: - uses: actions/checkout@main - uses: actions/setup-node@main with: cache: yarn node-version: 20 - run: yarn install - run: yarn lint - run: TARGET=${{ matrix.target }} yarn build - name: Drop artifacts (${{ matrix.target }}) uses: actions/upload-artifact@main with: name: ${{ matrix.target }} path: dist - name: "web-ext lint" if: ${{ matrix.target == 'firefox' }} uses: kewisch/action-web-ext@cb8a69420fea686e331e270b6581d4d289ecb2d2 with: cmd: lint source: dist channel: listed