diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml deleted file mode 100644 index d8bab15..0000000 --- a/.github/workflows/dependency-review.yml +++ /dev/null @@ -1,18 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json -name: 'Dependency Review' -on: - - pull_request - -permissions: {} - -jobs: - dependency-review: - runs-on: ubuntu-latest - permissions: - contents: read - steps: - - name: 'Checkout Repository' - uses: actions/checkout@71cf2267d89c5cb81562390fa70a37fa40b1305e # v6-beta - - name: 'Dependency Review' - uses: actions/dependency-review-action@2031cfc080254a8a887f58cffee85186f0e49e48 # v4.9.0 diff --git a/pr-lint/action.yml b/pr-lint/action.yml index bcb7363..c1b06d7 100644 --- a/pr-lint/action.yml +++ b/pr-lint/action.yml @@ -626,6 +626,33 @@ runs: go-version: ${{ steps.go-version.outputs.detected-version }} cache: true + # ╭──────────────────────────────────────────────────────────╮ + # │ Dependency Review │ + # ╰──────────────────────────────────────────────────────────╯ + - name: Check Repository Visibility + id: repo-visibility + if: github.event_name == 'pull_request' + shell: sh + run: | + set -eu + + is_private=$(jq -r '.repository.private' "$GITHUB_EVENT_PATH") + + if [ "$is_private" = "false" ]; then + printf '%s\n' "is-public=true" >> "$GITHUB_OUTPUT" + fi + + - name: Dependency Review + id: dependency-review + continue-on-error: true + if: >- + steps.repo-visibility.outputs.is-public == 'true' + && github.event_name == 'pull_request' + uses: actions/dependency-review-action@2031cfc080254a8a887f58cffee85186f0e49e48 # v4.9.0 + with: + comment-summary-in-pr: always + fail-on-severity: critical + # ╭──────────────────────────────────────────────────────────╮ # │ MegaLinter │ # ╰──────────────────────────────────────────────────────────╯ @@ -684,3 +711,10 @@ runs: path: | megalinter-reports mega-linter.log + + - name: Fail if dependency review found critical issues + if: steps.dependency-review.outcome == 'failure' + shell: sh + run: | + printf '%s\n' "Dependency review found critical issues" >&2 + exit 1