Skip to content

Commit bed7e04

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, it might become 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. This will be avoided by using 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 this is less likely to occur and a redundant coverage data upload shouldn't cause any problems.
1 parent 1af853e commit bed7e04

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

Diff for: .github/workflows/test-go-task.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ jobs:
8585
run: task go:test
8686

8787
- name: Send unit tests coverage to Codecov
88-
if: matrix.operating-system == 'ubuntu-latest'
88+
if: runner.os == 'Linux'
8989
uses: codecov/codecov-action@v2
9090
with:
9191
file: ./coverage_unit.txt

0 commit comments

Comments
 (0)