mirror of https://github.com/status-im/consul.git
always run agent tests alone on their own runner (#20199)
* always run agent tests alone on their own runner * deal with runner count = 1 * prevent runners less than 2
This commit is contained in:
parent
80ed31acac
commit
d4b67677c6
|
@ -5,13 +5,15 @@
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
export RUNNER_COUNT=$1
|
export RUNNER_COUNT=$1
|
||||||
|
|
||||||
if ((RUNNER_COUNT < 1 ))
|
if ((RUNNER_COUNT < 2 ))
|
||||||
then
|
then
|
||||||
echo ERROR: RUNNER_COUNT must be greater than zero.
|
echo ERROR: RUNNER_COUNT must be greater than 1. Otherwise use the non-split unit test cod in .github/workflows/reusable-unit.yml.
|
||||||
exit 1 # terminate and indicate error
|
exit 1 # terminate and indicate error
|
||||||
|
else
|
||||||
|
EFFECTIVE_RUNNER_COUNT=$((RUNNER_COUNT-1))
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# set matrix var to list of unique packages containing tests
|
# set matrix var to list of unique packages containing tests
|
||||||
matrix="$(go list -json="ImportPath,TestGoFiles" ./... | jq --compact-output '. | select(.TestGoFiles != null) | .ImportPath' | shuf | jq --slurp --compact-output '.' | jq --argjson runnercount $RUNNER_COUNT -cM '[_nwise(length / $runnercount | ceil)]'))"
|
matrix="$(go list -json="ImportPath,TestGoFiles" ./... | jq --compact-output '. | select(.TestGoFiles != null) | select(.ImportPath != "github.com/hashicorp/consul/agent") | .ImportPath' | shuf | jq --slurp --compact-output '.' | jq --argjson runnercount $EFFECTIVE_RUNNER_COUNT -cM '[_nwise(length / $runnercount | ceil)]' | jq --compact-output '. += [["github.com/hashicorp/consul/agent"]]'))"
|
||||||
|
|
||||||
echo "matrix=${matrix}" >> "${GITHUB_OUTPUT}"
|
echo "matrix=${matrix}" >> "${GITHUB_OUTPUT}"
|
||||||
|
|
Loading…
Reference in New Issue