joshjohanning / github-actions-log-warning-checker

Bash script to search for workflow runs referencing deprecated workflow commands

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

github-actions-log-warning-checker

  • In a list of repositories, run through recent1 workflow runs to see if there are any set-output / save-state deprecated workflow command or deprecated Node.js 12 actions warnings in the logs
  • The script outputs the results to a specified CSV file (e.g.: output.csv)
  • In the output CSV, there is a column to denote whether the warning was found in the latest workflow run or not
  • In the output CSV, there is a column to denote which warning it is referencing (deprecated workflow command or deprecated Node.js 12 action)

Usage

  1. Run gh auth login to authenticate with GitHub CLI
  2. Run ./generate-repos.sh <org> > repos.csv
    • Modify list as needed
    • Or create a list of repos in a csv file, <org/<repo>, 1 per line, with a trailing empty line at the end of the file
  3. Run: ./github-actions-log-warning-checker.sh repos.csv output.csv

Example Output

repo,workflow_name,workflow_url,finding,found_in_latest_workflow_run
joshjohanning-org/actions-linter-testing,CI,https://github.com/joshjohanning-org/actions-linter-testing/blob/main/.github/workflows/blank.yml,Workflow command,no
joshjohanning-org/actions-linter-testing,new-workflow,https://github.com/joshjohanning-org/actions-linter-testing/blob/main/.github/workflows/new-file.yml,Workflow command,yes
joshjohanning-org/actions-linter-testing,node12,https://github.com/joshjohanning-org/actions-linter-testing/blob/main/.github/workflows/node12.yml,Node.js 12 action,yes

Sample repos.csv file to use for testing

You can use this repos.csv file for testing. It has a finding for a result for a deprecated Node.js 12 action as well as a deprecated workflow command.

joshjohanning-org/actions-linter-testing
joshjohanning-org/actions-linter-testing-clean

Footnotes

  1. Recent is defined as the last 2 workflow runs, modify WORKFLOW_RUNS_TO_CHECK as needed.

About

Bash script to search for workflow runs referencing deprecated workflow commands

License:MIT License


Languages

Language:Shell 100.0%