Travis CI has not been running since 2 months ago.
https://app.travis-ci.com/github/ruby/ruby/builds
As we are migrating the ppc64le/s390x CI cases from Travis to GitHub Actions,
I will drop the `.travis.yml`, while the GitHub Actions ppc64le case is not
available yet.
In the Arm64 Ubuntu jammy (22.04) instance in Travis, we saw the following
error related to the `setarch` failing to run on the 32-bits architecture,
though the linux32 was included in the output of the `setarch --list`.
272876565 (L698)
```
$ setarch --list
uname26
linux32
linux64
armv7l
armv8l
armh
arm
arm64
aarch64
$ setarch linux32 --verbose --32bit uname -a
Switching on ADDR_LIMIT_32BIT.
The command "setarch linux32 --verbose --32bit uname -a" failed and exited with 1 during .
```
As we already have the i686 case to test the 32-bits on GitHub, we decided
dropping the arm32-linux case on Travis CI.
There was a report that the Travis CI's long-term infra issue was addressed by
the Travis team on the Ruby Bug ticket 20810.
We especially want to test the s390x (big-endian case) on the pull-request.
Revert ".travis.yml: Drop all the pipelines due to jobs not starting."
This reverts commit c853e48fc1.
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
I cannot receive Travis's notification via jaruga@ruby-lang.org, while another
committer with their @ruby-lang.org email can receive the notification.
The issue is my ruby-lang.org email address specific.
So far we haven't seen the root cause even with the Travis support's help.
Because of that, I change the email address to my personal email address.
It's to avoid the failures by the infra issues in the term of the following
maintenance.
There is a planned maintenance on March 6th 2024 between 8:00 and 12:00 UTC+0.
The Travis service may be temporarily unavailable.
https://bugs.ruby-lang.org/issues/20013#note-28
rubyspec seems very slow or getting stuck on s390-linux.
617916019
No output has been received in the last 10m0s, this potentially
indicates a stalled build or something wrong with the build itself.
This reverts commit 7ded31d36d.
I was told from Travis CI support that their infra team has deployed a fix for
the issue we encountered with the s390x build environment.
On s390x, a long is 8 bytes. st_data_t is an unsigned long but
pm_constant_id_t is a 4 byte integer. We need to cast it to st_data_t
when passing it to ST functions.
As Travis CI IBM z pipeine is operational again, I will add s390x again to check
the case. Though Travis s390x infra team is still investigating the root cause.
https://www.traviscistatus.com/
Please revert this commit or comment on the
<https://bugs.ruby-lang.org/issues/20013>, when you see the s390x builds are not
starting again.
Sorry for inconvenience.
Checking the past 10 builds in Travis CI arm64, it looks stable. So, disable
`allow_failures`.
Also sorted the order of the jobs for the priority. The arm64 is the first. And
I would like to run arm32 using the arm64 pipeline a bit later after the
arm64 using the same arm64 pipeline. So, the arm32 is the last.
In the past, I saw that the 2nd arm64 pipeline was unstable. Now I want to try
it to check if it is stable enough to run again.
As far as I know, right now the only native arm64 cases are MacOS Arm
`macos-arm-oss` on GitHub Actions. And I want to add Linux arm64 case on
pull-request in CI.
Use GCC version 11.4.0 (gcc-11 package) instead of the default GCC 11.3.0 to
align with the GCC used in the RubyCI s390x server below.
```
$ /usr/bin/gcc --version
gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ ls -l /usr/bin/gcc
lrwxrwxrwx 1 root root 6 Aug 5 2021 /usr/bin/gcc -> gcc-11*
$ dpkg -S /usr/bin/gcc-11
gcc-11: /usr/bin/gcc-11
```
Ubuntu Jammy gcc-11: https://packages.ubuntu.com/jammy-updates/gcc-11
Now I expect that Travis ppc64le always passes without any random failures by
the commit 1f1b9b0942 that is
a workaround to pass the `test/rdoc/test_rdoc_generator_json_index.rb` in
Travis ppc64le case.
* Add notes.
* When you see Travis issue, please check the link below.
https://github.com/ruby/ruby/wiki/CI-Servers#travis-ci
* Added the following random failure.
The ppc64le failure has been happening randomly in Travis focal/jammy.
TestRDocGeneratorJsonIndex#test_generate fails randomly.
612380961 (L2900)
* Update the comments.
* Remove empty lines in nested YAML elements aligning with other parts.
We want to align the used build flags with RubyCI ppc64le Ubuntu jammy server
as much as possible to avoid Travis specific issues.
Still keep the -O1 for only arm32 due to the following issue.
https://bugs.ruby-lang.org/issues/19981
Seeing the recent successes on RubyCI ppc64le Ubuntu jammy servers, it's time
to upgrade Travis ppc64le to jammy.
http://rubyci.s3.amazonaws.com/ppc64le/ruby-master/recent.html
Upgrade the gcc version to the latest version 11.4.0 to align the gcc
version used in the RubyCI ppc64le server's gcc version.
I want to disable allow_failures if possible to avoid unintentional new
failures. It seems that the arm32 case is stable.
Feel free to enable allow_failures again when you see the case is unstable.
* Remove CI functions for make test-all.
I want to simplify the `.travis.yml` for us to maintain it easily. When we
need to skip a test, we can fix the test file directly.
I removed the `tool/ci_functions.sh` too. I confirmed the file is not used in
any other files.
* .travis.yml: Remove a notification for IRC channel.
GitHub Actions don't use this notification. The setting is outdated.
* Fix to skip the commit including the document keyword.
There were 2 `if` syntax lines in the file.
* Remove ccache.
Upgrade the used Ubuntu version from 20.04 (Focal) to 22.04 (Jammy), alignin
with RubyCI "s390x (Ubuntu)" server.
https://rubyci.org/
Note Travis CI supports Ubuntu 22.04 (Jammy).
https://docs.travis-ci.com/user/reference/jammy/
Set `DFLTCC=0` environment variable as a workaround to avoid the test failures
related to zlib in the `make test-all` and `make test-spec`. The failures can
happen with the zlib library applying the patch madler/zlib#410 to enable the
deflate algorithm producing a different compressed byte stream.
* Revert "Extract `do_mutex_lock_check_interrupts` to try and fix `ppc64le`. (#8393)"
This reverts commit 5184b40dd4.
* .travis.yml: Try default gcc 9.4.0 instead of gcc-10 in ppc64le and s390x.
Use gcc 9.4.0 instead of gcc-10 to avoid the current failures by a possible GCC
10 compiler bug in the Travis ppc64le and s390x cases. And it also aligns with
RubyCI Ubuntu ppc64le and s390x where the default gcc is used.
---------
Co-authored-by: Jun Aruga <jaruga@ruby-lang.org>
While f6048e592c tried to approach the
instability mentioned there, unfortunately the Travis arm32 environment
seems unstable by itself. I already saw 2 different failures in the last
4 builds:
544382885544361370
Let's revisit this when this kind of thing stops happening.