-
Notifications
You must be signed in to change notification settings - Fork 5.4k
CI Servers
https://github.com/ruby/ruby/actions
- Executed for each commit and pull request
CI for Windows
https://ci.appveyor.com/project/ruby/ruby
- Executed for each commit and pull request
CI for non-x86 CPU architectures
We only manage non-x86_64 free pipelines.
https://www.travis-ci.com/github/ruby/ruby
- Executed for each commit and pull request
If you see Travis CI infra issues, please consider the following options.
- Check Travis CI Status page https://www.traviscistatus.com/.
- Contact Jun Aruga via ruby-lang Slack or e-mail
jaruga _AT_ ruby-lang.org
. - Contact Travis support via e-mail
support _AT_ travis-ci.com
or https://support.travis-ci.com/. This is the most reliable way to fix the issues. Travis support responses quickly. - Add the unstable job name to the
matrix - allow_failures
. Ideally we want to remove the job name from theallow_failures
to avoid unintentional new test failures. - Drop the unstable job name in the
matrix - include
, commenting it out.
The Travis arm32/ppc64le/s390x cases are aligned with RubyCI's Ubuntu arm64-neoverse/ppc64le/s390x servers. Try to reproduce on the servers. The make -jN
used in Travis may cause Travis specific failures as make -jN
is not used in RubyCI.
If you see Travis CI test failures, please consider the following options.
- Fix the issue.
- Add
pend
for the failing test usingtest-unit
as a workaround to avoid the new failures unintentionally are injected.- Pend by
RUBY_PLATFORM =~ /<platform_keyowrd>/
. See this example. - Pend by Travis environment variables
ENV['TRAVIS']
andENV['TRAVIS_CPU_ARCH']
.if ENV['TRAVIS'] && ENV['TRAVIS_CPU_ARCH'] == 'ppc64le' # arm64/ppc64le/s390x pend('something') end
- Pend by
- Add the unstable job name to the
matrix - allow_failures
.
We need to ask Travis CI support to add the credits regularly to run Travis CI. Below are the history.
- 2023/11/10: Remaining credits: 19440 after running 3 jobs around for 4 months. That means we used around 463 credits per month per job.
- 2023/05/22: 25K credits were added.
CI for Arm CPU architectures.
Removed due to inconsistent infra issues. We use GitHub Actions yjit-macos.yml
for Arm64 cases.
https://cirrus-ci.com/github/ruby/ruby/master
Executed for each commit and pull request
A test failure analysis tool triggered by pull-requests and pushes.
- Click "Sign up/ Sign in" link at the left bottom on the Launchable organization: ruby, workspace: ruby page.
- Click "Sign up" link on the "Log in to Launchable" page.
- Set your ID (email address) and password.
- You receive an email from Launchable.
- Set your organization as the same name with your account name on GitHub.
- Set your workspace as the same name with the repository name such as "ruby" (for ruby/ruby), or "debug" (for ruby/debug).
- Create your API key by clicking "Create your API key" button on the workspace setting page: https://app.launchableinc.com/organizations/your_organization/your_workspace/ruby/settings.
- Copy and paste the API key into your GitHub settings - Secrets and variables - Repository secrets - Name: LAUNCHABLE_TOKEN, Scret: the API key value.
- Launchable Docs: https://www.launchableinc.com/docs/
- Test Sessions: https://app.launchableinc.com/organizations/ruby/workspaces/ruby/data/test-sessions
- Unhealthy Tests: https://app.launchableinc.com/organizations/ruby/workspaces/ruby/insights/unhealthy-tests - the document
This is a curation site of test results of chkbuild (Ruby's own CI program).
Most CI servers run on AWS, and are maintained by (mainly) @hsbt and @mame
- amd64 (x86_64)
- "ArchLinux+clang" is maintained by @naruse
- "macOS" series is maintained by @hsbt and @ko1
- "WSL2" runs on Azure, and is maintained by @mame
- "SPARC" series is supported by Fujitsu, and maintained by @mame
- arm64 (aarch64), arm32
-
"Ubuntu arm neoverse" is supported by Arm and Equinix on their Works on Arm program, and maintained by @jarugaThis server is going to be dropped by 10th August 2024. See this ticket for details. - "Ubuntu armv7l eabihf" is maintained by @naruse
- "Android" runs on GitHub Actions, and is maintained by @mame
- "Raspbian" series is maintained by @znz
-
- ppc64le
- "ppc64le" (Ubuntu) is supported by IBM and Oregon State University (OSU) Open Source Lab (OSL) Power Development Hosting, and maintained by @jaruga
- s390x
- "s390x" (Ubuntu) is supported by IBM on LinuxOne Community Cloud. Note the hosting is not by Oregon State University (OSU) Open Source Lab (OSL) IBM-Z Development Hosting, and maintained by @jaruga
- "s390x" (RHEL 7.1) is maintained by @ReiOdaira
You can check How To Maintain RubyCI Servers to know how to setup the servers.
This is yet another CI service to aim to produce the test result as quickly as possible, maintained by @ko1
- Developer How To, Developer How To JA
- How To Contribute
- How To Report, How To Report JA
- How To Request Backport
- How To Request Features
- Developers Meeting