mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
9d4266fd55
* Use only the free pipelines arm64/ppc64le/s390x without credits on Travis. See <https://docs.travis-ci.com/user/billing-overview/#partner-queue-solution>. * Add ppc64le case. * Update the gcc to gcc-11. * Remove unused logic. * Add the `tool/travis_wait.sh` to avoid a command timeout. * Run the tests skipping some failing tests. * Set `TEST_ALL_SKIPPED_TESTS` env to skip the tests. * Run the tests separately returning ok status. The tests are executed if `TEST_ALL_SKIPPED_TESTS` env is set or `TEST_ALL_SEPARATED_TESTS` env is set. * Add `tool/ci_functions.sh` to manage the functions used in CI. * Add arm64 to allow_failures due to the following issue. An arm64 job sometimes does not start right now. https://travis-ci.community/t/11629
29 lines
944 B
Bash
29 lines
944 B
Bash
# -*- BASH -*-
|
|
# Manage functions used on a CI.
|
|
# Run `. tool/ci_functions.sh` to use it.
|
|
|
|
# Create options with patterns `-n !/name1/ -n !/name2/ ..` to exclude the test
|
|
# method names by the method names `name1 name2 ..`.
|
|
# See `ruby tool/test/runner.rb --help` `-n` option.
|
|
function ci_to_excluded_test_opts {
|
|
local tests_str="${1}"
|
|
# Use the backward matching `!/name$/`, as the perfect matching does not work.
|
|
# https://bugs.ruby-lang.org/issues/16936
|
|
ruby <<EOF
|
|
opts = "${tests_str}".split.map { |test| "-n \!/#{test}\$$/" }
|
|
puts opts.join(' ')
|
|
EOF
|
|
return 0
|
|
}
|
|
|
|
# Create options with patterns `-n /name1/ -n /name2/ ..` to exclude the test
|
|
# method names by the method names `name1 name2 ..`.
|
|
# See `ruby tool/test/runner.rb --help` `-n` option.
|
|
function ci_to_included_test_opts {
|
|
local tests_str="${1}"
|
|
ruby <<EOF
|
|
opts = "${tests_str}".split.map { |test| "-n #{test}" }
|
|
puts opts.join(' ')
|
|
EOF
|
|
return 0
|
|
}
|