summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorLoïc Guilloux <glx22@users.noreply.github.com>2021-05-10 14:48:04 +0200
committerGitHub <noreply@github.com>2021-05-10 14:48:04 +0200
commitc53d9991eed38177ad9b0e251b1e6f4cfb27191a (patch)
treea97c777d75d138f756016314881ac70a9a19fc8b /.github
parent8f4a612a7c8ceb966d1cd538e9e53fd70336259d (diff)
downloadopenttd-c53d9991eed38177ad9b0e251b1e6f4cfb27191a.tar.xz
Add: [Actions] Check CI annotations to detect compile warnings (#9217)
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/ci-build.yml42
1 files changed, 42 insertions, 0 deletions
diff --git a/.github/workflows/ci-build.yml b/.github/workflows/ci-build.yml
index 74677ee6d..e0707291c 100644
--- a/.github/workflows/ci-build.yml
+++ b/.github/workflows/ci-build.yml
@@ -315,3 +315,45 @@ jobs:
run: |
cd ${GITHUB_WORKSPACE}/build
ctest --timeout 120
+
+ check_annotations:
+ name: Check Annotations
+ needs:
+ - emscripten
+ - linux
+ - macos
+ - windows
+
+ if: always() && github.event_name == 'pull_request'
+
+ runs-on: ubuntu-20.04
+
+ steps:
+ - name: Get check suite ID
+ id: check_suite_id
+ uses: octokit/request-action@v2.x
+ with:
+ route: GET /repos/{repository}/actions/runs/{run_id}
+ repository: ${{ github.repository }}
+ run_id: ${{ github.run_id }}
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
+ - name: Get check runs
+ id: check_runs
+ uses: octokit/request-action@v2.x
+ with:
+ route: GET /repos/{repository}/check-suites/{check_suite_id}/check-runs
+ repository: ${{ github.repository }}
+ check_suite_id: ${{ fromJson(steps.check_suite_id.outputs.data).check_suite_id }}
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
+ - name: Check annotations
+ shell: bash
+ run: |
+ echo '[
+ ${{ toJson(fromJson(steps.check_runs.outputs.data).check_runs.*.output.title) }}, ${{ toJson(fromJson(steps.check_runs.outputs.data).check_runs.*.output.summary) }}
+ ]' | jq '.[0] as $t | .[1] as $s | reduce range(.[0] | length) as $i ([]; . + [if $t[$i] then $t[$i] + ": " + $s[$i] else empty end]) | .[]'
+
+ exit $(echo '${{ toJson(fromJson(steps.check_runs.outputs.data).check_runs.*.output.annotations_count) }}' | jq 'add')