Skip to content

Commit b863e1a

Browse files
authored
Defer coverage reports to the end of the CI pipeline (#781)
Applies the new functionality in codecov/codecov-action#1436 to be able to defer reporting coverage until the entire pipeline has uploaded coverage reports. This reduces noise in pull request logs. --------- Signed-off-by: Ashley <73482956+ascopes@users.noreply.github.com>
1 parent 5e05842 commit b863e1a

File tree

3 files changed

+44
-85
lines changed

3 files changed

+44
-85
lines changed

.github/workflows/build-ea.yml

-72
This file was deleted.

.github/workflows/build.yml

+34-1
Original file line numberDiff line numberDiff line change
@@ -23,19 +23,33 @@ jobs:
2323
- 11 # LTS
2424
- 17 # LTS
2525
- 21 # LTS
26+
- GA # General access
27+
include:
28+
- os-name: ubuntu-latest
29+
java-version: GA
30+
- os-name: macos-latest
31+
java-version: GA
2632
steps:
2733
- name: Checkout repository
2834
uses: actions/checkout@v4
2935
with:
3036
fetch-depth: 2
3137

32-
- name: Initialize JDK
38+
- name: Initialize Zulu JDK
39+
if: matrix.java-version != 'GA'
3340
uses: actions/setup-java@v4
3441
with:
3542
check-latest: true
3643
distribution: zulu
3744
java-version: ${{ matrix.java-version }}
3845

46+
- name: Initialize Oracle JDK
47+
if: matrix.java-version == 'GA'
48+
uses: oracle-actions/setup-java@v1
49+
with:
50+
website: jdk.java.net
51+
release: ${{ matrix.java-version }}
52+
3953
- name: Maven cache
4054
uses: actions/cache@v4
4155
env:
@@ -66,3 +80,22 @@ jobs:
6680
**/failsafe-reports/**
6781
**/build*.log
6882
retention-days: 30
83+
84+
notify-coverage:
85+
name: Notify of coverage
86+
runs-on: ubuntu-latest
87+
timeout-minutes: 30
88+
needs:
89+
- build
90+
steps:
91+
- name: Checkout code
92+
uses: actions/checkout@v4
93+
94+
- name: Publish code coverage
95+
uses: codecov/codecov-action@v5
96+
continue-on-error: true
97+
if: always()
98+
with:
99+
token: ${{ secrets.CODECOV_TOKEN }}
100+
fail_ci_if_error: true
101+
run_command: send-notifications

codecov.yml

+10-12
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,20 @@
1515
#
1616

1717
# General behaviour.
18+
coverage:
19+
round: up
20+
precision: 2
21+
1822
codecov:
19-
branch: main
20-
max_report_age: 12
23+
notify:
24+
# Notify via a separate pipeline step in CI once all builds have completed. This way, we don't
25+
# report coverage after each parallel build completes, which results in spammy and incorrect
26+
# email notifications and prematurely marking the build as having failed.
27+
# https://github.com/codecov/codecov-action/issues/1436#issuecomment-2614065472
28+
manual_trigger: true
2129
require_ci_to_pass: true
2230
strict_yaml_branch: main
2331

24-
# PR comment format.
2532
comment:
2633
layout: "reach, diff, flags, files"
2734
behavior: default
28-
require_changes: false
29-
require_base: true
30-
require_head: true
31-
32-
# Global coverage options.
33-
coverage:
34-
precision: 2
35-
range: "10...100"
36-
round: down

0 commit comments

Comments
 (0)