4 changed files with 92 additions and 16 deletions
@ -0,0 +1,48 @@
@@ -0,0 +1,48 @@
|
||||
name: Annotate linting |
||||
|
||||
permissions: |
||||
actions: read # download artifact |
||||
checks: write # annotate |
||||
|
||||
# this is done as a seperate workflow so |
||||
# the annotater has access to write to checks (to annotate) |
||||
on: |
||||
workflow_run: |
||||
workflows: ["Linting and Testing"] |
||||
types: |
||||
- completed |
||||
|
||||
jobs: |
||||
annotate: |
||||
name: Annotate linting |
||||
runs-on: ubuntu-latest |
||||
|
||||
steps: |
||||
- name: Download linting report |
||||
uses: actions/github-script@v6 |
||||
with: |
||||
script: | |
||||
const artifacts = await github.rest.actions.listWorkflowRunArtifacts({ |
||||
owner: context.repo.owner, |
||||
repo: context.repo.repo, |
||||
run_id: ${{github.event.workflow_run.id }}, |
||||
}); |
||||
const matchArtifact = artifacts.data.artifacts.filter((artifact) => { |
||||
return artifact.name == "eslint_report.json" |
||||
})[0]; |
||||
const download = await github.rest.actions.downloadArtifact({ |
||||
owner: context.repo.owner, |
||||
repo: context.repo.repo, |
||||
artifact_id: matchArtifact.id, |
||||
archive_format: 'zip', |
||||
}); |
||||
const fs = require('fs'); |
||||
fs.writeFileSync('${{github.workspace}}/eslint_report.zip', Buffer.from(download.data)); |
||||
|
||||
- run: unzip eslint_report.zip |
||||
|
||||
- name: Annotate linting |
||||
uses: ataylorme/eslint-annotate-action@v2 |
||||
with: |
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}" |
||||
report-json: "eslint_report.json" |
Loading…
Reference in new issue