name: Eslint Check on: [pull_request, push] jobs: eslint_check_upload: runs-on: ubuntu-latest name: ESLint Check and Report Upload steps: - uses: actions/checkout@v3 - name: Setup Node uses: actions/setup-node@v3 with: node-version: 16 cache: 'yarn' - name: Install Dependencies run: yarn - name: Build Packages run: yarn build:all - name: Test Code Linting run: yarn turbo run lint - name: Save Code Linting Report JSON run: yarn lint:report # Continue to the next step even if this fails continue-on-error: true - name: Upload ESLint report uses: actions/upload-artifact@v3 with: name: eslint_report.json path: eslint_report.json Annotation: # Skip the annotation action in PRs from the forked repositories if: github.event.pull_request.head.repo.full_name == 'rrweb-io/rrweb' needs: eslint_check_upload runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions/download-artifact@v3 with: name: eslint_report.json - name: Annotate Code Linting Results uses: ataylorme/eslint-annotate-action@v2 with: repo-token: '${{ secrets.GITHUB_TOKEN }}' report-json: 'eslint_report.json'