spec: improve rspec-tests.sh
Change-Id: Ic7af36d9d18aa94e83d2efdbdeaf8c8f35b90aa2 Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/240311 Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com> Reviewed-by: Aaron Ogata <aogata@instructure.com> Reviewed-by: James Butters <jbutters@instructure.com> QA-Review: James Butters <jbutters@instructure.com> Product-Review: James Butters <jbutters@instructure.com>
This commit is contained in:
parent
b54209319b
commit
1cabb02b1c
|
@ -1,13 +1,21 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -o errexit -o errtrace -o pipefail -o xtrace
|
||||
set -o nounset -o errexit -o errtrace -o pipefail -o xtrace
|
||||
|
||||
# calculate which group to run
|
||||
max=$((CI_NODE_TOTAL*DOCKER_PROCESSES))
|
||||
group=$(((max-CI_NODE_TOTAL*TEST_PROCESS)-CI_NODE_INDEX))
|
||||
max=$((CI_NODE_TOTAL * DOCKER_PROCESSES))
|
||||
group=$(((max-CI_NODE_TOTAL * TEST_PROCESS) - CI_NODE_INDEX))
|
||||
maybeOnlyFailures=()
|
||||
[ "${1-}" = 'only-failures' ] && maybeOnlyFailures=("--test-options" "'--only-failures'")
|
||||
|
||||
if [ "${1-}" = 'only-failures' ]; then
|
||||
bundle exec parallel_rspec ./ --pattern $TEST_PATTERN --exclude-pattern $EXCLUDE_TESTS -n $max --only-group $group --verbose --group-by runtime --runtime-log parallel_runtime_rspec.log --test-options '--only-failures'
|
||||
else
|
||||
bundle exec parallel_rspec ./ --pattern $TEST_PATTERN --exclude-pattern $EXCLUDE_TESTS -n $max --only-group $group --verbose --group-by runtime --runtime-log parallel_runtime_rspec.log
|
||||
fi
|
||||
# we want actual globbing of individual elements for passing argument literals
|
||||
# shellcheck disable=SC2068
|
||||
bundle exec parallel_rspec . \
|
||||
--pattern "$TEST_PATTERN" \
|
||||
--exclude-pattern "$EXCLUDE_TESTS" \
|
||||
-n "$max" \
|
||||
--only-group "$group" \
|
||||
--verbose \
|
||||
--group-by runtime \
|
||||
--runtime-log parallel_runtime_rspec.log \
|
||||
${maybeOnlyFailures[@]}
|
||||
|
|
Loading…
Reference in New Issue