| name: check-whitespace |
| |
| # Get the repository with all commits to ensure that we can analyze |
| # all of the commits contributed via the Pull Request. |
| # Process `git log --check` output to extract just the check errors. |
| # Exit with failure upon white-space issues. |
| |
| on: |
| pull_request: |
| types: [opened, synchronize] |
| |
| jobs: |
| check-whitespace: |
| runs-on: ubuntu-latest |
| steps: |
| - uses: actions/checkout@v2 |
| with: |
| fetch-depth: 0 |
| |
| - name: git log --check |
| id: check_out |
| run: | |
| log= |
| commit= |
| while read dash etc |
| do |
| case "${dash}" in |
| "---") |
| commit="${etc}" |
| ;; |
| "") |
| ;; |
| *) |
| if test -n "${commit}" |
| then |
| log="${log}\n${commit}" |
| echo "" |
| echo "--- ${commit}" |
| fi |
| commit= |
| log="${log}\n${dash} ${etc}" |
| echo "${dash} ${etc}" |
| ;; |
| esac |
| done <<< $(git log --check --pretty=format:"---% h% s" ${{github.event.pull_request.base.sha}}..) |
| |
| if test -n "${log}" |
| then |
| exit 2 |
| fi |