diff --git a/.github/workflows/lint-md.yml b/.github/workflows/lint-md.yml index 1617c1d..8e0be5f 100644 --- a/.github/workflows/lint-md.yml +++ b/.github/workflows/lint-md.yml @@ -24,3 +24,45 @@ jobs: reporter: github-pr-review level: info fail_level: any + lint-md-rumdl: + runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: write + steps: + - name: Checkout code + # yamllint disable-line rule:line-length + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + with: + persist-credentials: false + - name: Set up uv + # yamllint disable-line rule:line-length + uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7.6.0 + with: + enable-cache: false + - name: Set up reviewdog + # yamllint disable-line rule:line-length + uses: reviewdog/action-setup@d8a7baabd7f3e8544ee4dbde3ee41d0011c3a93f # ratchet:reviewdog/action-setup@v1 + - name: Lint Markdown files with rumdl via reviewdog + env: + REVIEWDOG_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: |- + uvx rumdl check . --output-format json-lines > rumdl.jsonl || true + jq -c ' + { + source: {name: "rumdl"}, + severity: (.severity | ascii_upcase), + message: .message, + location: { + path: .file, + range: {start: {line: .line, column: .column}} + }, + code: {value: .rule} + } + ' rumdl.jsonl \ + | reviewdog \ + -f=rdjsonl \ + -name=rumdl \ + -reporter=github-pr-review \ + -filter-mode=added \ + -fail-level=any