Submit PRs for audit results #707
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Submit PRs for audit results | |
on: | |
workflow_dispatch: | |
inputs: | |
pr-limit: | |
required: true | |
default: "5" | |
type: number | |
dry-run: | |
required: true | |
default: true | |
type: boolean | |
workflow_run: | |
workflows: ["pip-audit brew packages"] | |
types: [completed] | |
jobs: | |
auto-pr: | |
runs-on: macos-latest | |
timeout-minutes: 120 | |
if: github.event_name == 'workflow_dispatch' || (github.event_name == 'workflow_run' && github.event.workflow_run.conclusion == 'success') | |
steps: | |
- name: Display inputs | |
run: | | |
echo "AUTO_PR_DRY_RUN: ${AUTO_PR_DRY_RUN}" | |
echo "AUTO_PR_LIMIT: ${AUTO_PR_LIMIT}" | |
env: | |
AUTO_PR_DRY_RUN: ${{ inputs.dry-run }} | |
AUTO_PR_LIMIT: ${{ inputs.pr-limit }} | |
- name: Check out this repo | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Homebrew | |
id: set-up-homebrew | |
uses: Homebrew/actions/setup-homebrew@master | |
with: | |
core: true | |
cask: false | |
test-bot: false | |
- name: Cache Homebrew Bundler RubyGems | |
id: cache | |
uses: actions/cache@v4 | |
with: | |
path: ${{ steps.set-up-homebrew.outputs.gems-path }} | |
key: ${{ runner.os }}-rubygems-${{ steps.set-up-homebrew.outputs.gems-hash }} | |
restore-keys: ${{ runner.os }}-rubygems- | |
- name: Fix runner Python | |
if: runner.os != 'Linux' | |
run: | | |
# Workaround GitHub Actions Python issues | |
# Copied from: https://github.com/Homebrew/brew/blob/6170b6297c61ef0b68814c708eeff2199d8b0d11/.github/workflows/tests.yml#L353 | |
brew unlink python && brew link --overwrite python | |
- name: Install Homebrew Bundler RubyGems | |
if: steps.cache.outputs.cache-hit != 'true' | |
run: brew install-bundler-gems --groups=all | |
- name: Configure git | |
uses: Homebrew/actions/git-user-config@master | |
with: | |
username: BrewTestBot | |
- name: Install dependencies | |
run: brew install augeas autoconf | |
- name: Generate Pull Requests | |
run: brew ruby generate-prs.rb | |
env: | |
HOMEBREW_GITHUB_API_TOKEN: ${{ secrets.BREW_PIP_AUDIT_GH_TOKEN }} | |
HOMEBREW_AUTO_PR_DRY_RUN: ${{ inputs.dry-run }} | |
HOMEBREW_AUTO_PR_NO_FORK: true | |
HOMEBREW_AUTO_PR_LIMIT: ${{ inputs.pr-limit }} | |
HOMEBREW_NO_INSTALL_FROM_API: 1 | |
HOMEBREW_EVAL_ALL: 1 |