Reviving Travis CI
Related to #17720, chatting with naruse (Yui NARUSE) and hsbt (Hiroshi SHIBATA) in Ruby project, I thought it is better to revive Travis that had been deleted at the commit  at first before trying Cirrus CI, the new thing, even though we only might be able to use Travis for a short time. Because it's safe to try the Cirrus CI new thing, keeping the Travis non-x86_64 pull-request checks. I am also curious to know how Travis replies to us.
I got the following information about Travis OSS subscription from naruse (Yui NARUSE), and the following criteria: "Project must not be sponsored by a commercial company or organization." made us wonder if the Ruby project is qualified for criteria.
> https://qiita.com/TomoyukiAota/items/42987f1d20f06abb3b3c#open-source-plan%E3%81%AE%E7%94%B3%E3%81%97%E8%BE%BC%E3%81%BF To qualify for an Open Source Software (OSS) subscription, * ... * Project must not be sponsored by a commercial company or organization. * ...
So, I am asking a question to Travis. and this Ruby issue ticket's goal is to revive entire Travis or at least the non-x86_64 cases, and I also want to share the communication log between Travis and us. Because the log looks useful for other open source projects too.
Here is the ticket URL in Travis. I don't think it is a public page. But I just share it for the record. I also would attach the screen shot image.
Subject: Can the Ruby project enable Travis by OSS subscription? Hello Travis support, I am working in the Ruby project (https://github.com/ruby). May I ask you questions about the OSS subscription program? We saw Travis OSS subscription includes the "Project must not be sponsored by a commercial company or organization." These criteria made us hesitate to contact you. Because some of the members in the Ruby project are sponsored. > https://qiita.com/TomoyukiAota/items/42987f1d20f06abb3b3c#open-source-plan%E3%81%AE%E7%94%B3%E3%81%97%E8%BE%BC%E3%81%BF To qualify for an Open Source Software (OSS) subscription, * ... * Project must not be sponsored by a commercial company or organization. * ... However now we think the criteria is applied for Case 1: An open source project is used directly for a company's product, then it gives the profit to the company. But the criteria might not be applied for the following cases. Because in these cases, the open source project does not produce the profit directly. The open source project is neutral. I think the Ruby project is the case 2. Case 2: An open source project is co-created beyond an organization. * A person is sponsored, because a open source project's library is essential for a company's product. * The company sponsors someone because the company wants someone to maintain the library. * A person is sponsored, because a company using the library is given the benefit by a library. The company hires someone to give a return to the open source project by just a give and take mind. * A company hires a full time committer for a popular open source project. Because the person could be a role model in the company, and the fact that a committer working in the company is used as an advertisement to hire other people. I think Travis non x86_64 resources are sponsored by IBM and ARM because I assume IBM and ARM want to thrive in their CPU architecture's ecosystem. I think they want to enable popular open source projects on their Travis pipelines. So, is it possible to enable Travis or at least to enable IBM (ppc64le, s390x) and ARM (arm64) for all the repositories under the Ruby (https://github.com/ruby/*) with unlimited? Thank you. Jun Aruga
Updated by jaruga (Jun Aruga) 5 months ago
- File screenshot-support.travis-ci.com-2021.04.21-21_49_58.png screenshot-support.travis-ci.com-2021.04.21-21_49_58.png added
I just got a really quick response from Travis support in less than 2 hours. The content is quite positive!
Hello Jun , Please accept our sincere apologies for any inconvenience caused due to delays in processing your open-source credit request while we made improvements to the platform. Open source has always been and always will be at the core of what Travis CI stands for. After reviewing your open source qualifications, I am pleased to notify you that 25k credits were added to your account allowing you to resume running OSS builds. When your credits begin running low again, please reach back out to the Support team. Credits Consumption Metric OS. # CREDITS PER STARTED BUILD MINUTE Linux. 10 Experimental FreeBSD. 10 Windows. 20 MacOS. 50 There is an active internal discussion regarding unlimited builds for the `ruby` organization using IBM (ppc64le, s390x) and ARM (arm64) architectures. Once this is concluded and communicated to the support team, we will make required changes to your account. Thanks and happy building!, Your Friends @Travis-CI Note: OSS credits may be used solely with respect to open source projects that reside on a public repository. Please note that in no event shall OSS credits be used in support of commercial or enterprise projects or with respect to any project that resides on a private repository. Travis CI shall determine the amount and frequency of all OSS Credit allotments at its sole discretion and reserves the right to deny, reduce or suspend such allotments. -- MK Your Friends @Travis CI
Updated by jaruga (Jun Aruga) 5 months ago
I would share the result by communicating with Travis support.
The excellent news is now,
s390xhave free unlimited builds without consuming credits for all the open source repositories.
arch: arm64-graviton2is not free at the moment. The consumed credits look the same with
arch: amd64(= 10 credits per build minute in Linux).
As a side note from my experience, the concept of the credits might be not considered on travis-ci.org. But the
dist: focal was not available on
arch: arm64 on travis-ci.org, but
dist: focal is available on
arch: arm64 on travis-ci.com. So, it might be good to migrate a repository to travis.com if you want to use the focal arm64 on Travis.
For consumed credits on IBM and ARM.
Here is the my log I reported to the Travis community and the testing repository as a reference.
Here is the official document page published today.
Updated by jaruga (Jun Aruga) 4 months ago
Let me share the current status and the plan for ruby/ruby's Travis.
As a side note from my experience, the concept of the credits might be not considered on travis-ci.org.
The travis-ci.org shut down will occur on May 31, 2021. So, there is no option to use travis-ci.org any more.
We got 25,000 credits from the above OSS subscription. However as I wrote above, we consume 10 credits per build on Linux, that means. If a job takes 17 minutes 30 seconds, it takes 10 * 18 = 180 credits for one job. It's much more than I expected. I misunderstood it was 10 credits per build without minutes. So, I plan to not use only free builds without credits on Travis.
The current plan is to create the Ubuntu focal (20.04) CI cases for each CPU architecture.
- i686 (x86 variant): Run on GitHub. The example: https://github.com/junaruga/ci-multi-arch-native-test/blob/master/.github/workflows/build.yml .
- arm64/ppc64le/s390x Based on this PR. * Try Focal i386 packages for building i686-linux ruby https://github.com/ruby/ruby/pull/3173 Also referring * Reviving .travis.yml (don't merge) https://github.com/ruby/ruby/pull/4384