Skip to content

Commit b4b8b9d

Browse files
committed
Avoid workflow conditional reliance on specific runner
In order to catch platform-specific bugs, the "Test Go" workflow uses a job matrix to run the tests on multiple runners. The step that uploads code coverage data to Codecov is intended to run only during the Linux job. The runner name `ubuntu-latest` was used in the conditional to accomplish this. However, I'm observing that sometimes it is necessary or desirable to pin a specific runner version (e.g., `ubuntu-18.04`). The accompanying adjustment to the conditional might be forgotten and there would not be any obvious sign that the coverage upload had stopped, nor why. So I'm thinking the better approach would be to use the general `runner.os` context item to identify the Linux job in the conditional. This will not be ideal in the event multiple Linux runners are added to the workflow's job matrix, but I haven't observed that in practice and the double upload shouldn't cause any problems.
1 parent 8283fff commit b4b8b9d

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

workflow-templates/dependabot/workflow-template-copies/.github/workflows/test-go-task.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ jobs:
6868
run: task go:test
6969

7070
- name: Send unit tests coverage to Codecov
71-
if: matrix.operating-system == 'ubuntu-latest'
71+
if: runner.os == 'Linux'
7272
uses: codecov/codecov-action@v2
7373
with:
7474
file: ${{ matrix.module.path }}coverage_unit.txt

workflow-templates/test-go-task.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ jobs:
6868
run: task go:test
6969

7070
- name: Send unit tests coverage to Codecov
71-
if: matrix.operating-system == 'ubuntu-latest'
71+
if: runner.os == 'Linux'
7272
uses: codecov/codecov-action@v2
7373
with:
7474
file: ${{ matrix.module.path }}coverage_unit.txt

0 commit comments

Comments
 (0)