Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Travis Build Failures: not enough credits #10778

Closed
rnveach opened this issue Sep 4, 2021 · 7 comments · Fixed by #10950
Closed

Travis Build Failures: not enough credits #10778

rnveach opened this issue Sep 4, 2021 · 7 comments · Fixed by #10950

Comments

@rnveach
Copy link
Member

rnveach commented Sep 4, 2021

It has been recently identified that travis has been disabled for the last 1-2 months.

Admins are currently working to fully resolve the issue but travis ran in a PR and is failing. We need to look into the issues and fix the CI so it runs green again.

#10777
https://github.com/checkstyle/checkstyle/pull/10777/checks?check_run_id=3515099527

27971.4 | openjdk8 | DESC="NoErrorTest - Hibernate Search" | Linux | failed

[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-common-rules) @ hibernate-search-parent ---
[WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequireJavaVersion failed with message:
Detected JDK Version: 1.8.0-252 is not in the allowed range [11,).
[WARNING] Rule 1: org.apache.maven.plugins.enforcer.RequireMavenVersion failed with message:
Detected Maven Version: 3.6.3 is not in the allowed range 3.8.1.
[INFO] ------------------------------------------------------------------------
...
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce (enforce-common-rules) on project hibernate-search-parent: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce (enforce-common-rules) on project hibernate-search-parent: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed.

27971.5 | openjdk8 | DESC="NoErrorTest - checkstyle's sevntu" | Linux | failed

[INFO] --- maven-checkstyle-plugin:3.1.2:check (sevntu-checkstyle-check) @ checkstyle ---
[INFO] There are 2 errors reported by Checkstyle 9.1-SNAPSHOT with /home/travis/build/checkstyle/checkstyle/config/checkstyle_sevntu_checks.xml ruleset.
[ERROR] src/main/java/com/puppycrawl/tools/checkstyle/ThreadModeSettings.java:[29,33] (extension) AvoidDefaultSerializableInInnerClasses: Inner class should not implement default Serializable interface.
[ERROR] src/main/java/com/puppycrawl/tools/checkstyle/api/Violation.java:[49,5] (extension) AvoidDefaultSerializableInInnerClasses: Inner class should not implement default Serializable interface.

Below is the correspondence with Travis Support to resolve the issue with travis not running:

Checkstyle:

We have just recently noticed that for the past 1-2 months our travis builds have not been running. When viewing https://app.travis-ci.com/github/checkstyle/checkstyle/requests it gives the following messages:

Owner checkstyle does not have enough credits.
Builds have been temporarily disabled for public repositories due to a negative credit balance. Please go to the Plan page to replenish your credit balance or alter your Consume paid credits for OSS setting. 

I don't understand why it says our plan changed on June 24, 2021, why we have credits, and why we are being charged credits now and not before?

Travis Support:

We have changed our plan few months back and notified all our customers about this new pricing plan changes[1]. Now we have free plan with 10K credits limit only. So for OSS credits you need to qualify with criteria. You can find information about our OSS  credits from this page[2]. 

We offer an Open Source Subscription for free to non-commercial open-source projects. 

Does this sound like you and your project? We'd be very happy to support you! 

Checkstyle:

I have looked over the OSS requirements and I do believe our project qualifies for it. I am an admin of the project.

Travis Support:

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


Please let us know if you have any questions! 

Thanks and happy building!,

https://docs.travis-ci.com/user/billing-overview/#partner-queue-solution

Partner Queue Solution is a solution for infrastructure sponsored by our Partners with OSS in mind which can be used completely for free. Currently, it includes:

    IBM CPU builds in IBM Cloud (sponsored by IBM)
    ARM64 CPU builds in Equinix Metal (former Packet) infrastructure (sponsored by ARM)

This is available only to Open Source Software repositories.

In order to run a job using Partner Queue Solution, use the following .travis.yml tags in your public repository:

os: linux
arch:
  - arm64
  - ppc64le
  - s390x

YAML

Please see our Build Environment overview and Building for Multiple CPU architectures pages for more details.

In order to start a build in the Usage based Plan, a positive credits balance is required in the account (at least 1 credit). The build job under Partner Queue Solution costs 0 credits per started minute. At the moment of introducing Partner Queue Solution active accounts on the Usage based Plans, including the Free Plan, with a balance of zero or fewer credits, balance is updated to hold 1 credit. Thus everybody can use Partner Queues without requesting Travis CI support to grant additional credits. If you run into a negative account balance after that, you still need to file an additional request.

In the case of Concurrency based Plans, you can use the above infrastructure for OSS builds without any credits in your account.

If any problem happening, there is hidden tab in Travis to show parse errors https://app.travis-ci.com/github/sevntu-checkstyle/checkstyle-samples/requests

@rnveach
Copy link
Member Author

rnveach commented Sep 5, 2021

ThreadModeSettings.java:[29,33] (extension) AvoidDefaultSerializableInInnerClasses: Inner class should not implement default Serializable interface.

This class has been around forever, so new violation is strange. It is because of #10574 and we have not merged sevntu-checkstyle/sevntu.checkstyle#858 .

There is no way to fix this right now because everything is blocked. This will have to be disabled until sevntu-checkstyle/sevntu.checkstyle#858 is merged.

@romani
Copy link
Member

romani commented Oct 3, 2021

I am closing this issue for now, Travis gave us more paid credits for free, we continue discussion on how to use "Partner Queue"

@rnveach
Copy link
Member Author

rnveach commented Oct 5, 2021

@romani Following lines are causing master CI failure.

# until https://github.com/checkstyle/checkstyle/issues/10778

@romani romani reopened this Oct 6, 2021
@romani
Copy link
Member

romani commented Oct 9, 2021

from support:

To be able to build on our partner queue solution, you would need to use any of the arch: arm64 | ppc64le | s390x and a minimum of 1 credit i.e. a positive credit balance, is required on account for builds to run. I see your account/Org credits balance is in positive state and you mentioned you migrated to the arch i.e. ppc64le, your builds should now be running on our partner queue costing 0 credits.

Thanks for your reply and sorry for the confusion. "Consume paid credits for OSS" must be in the "True/on" position to build. If you are building on the partner queue architecture the credits cost/credits consumed is "0 credits".

I tested it in sevntu, we completely migrated to partner queue arch , and we do not use any credits, value of credits is 11410 for long time.
So no modification is Plan in Travis, we just need migrate to new arch in travis.

@romani
Copy link
Member

romani commented Nov 2, 2021

OpenJDK versions available for ppc64le architecture are:
I have run a test build https://app.travis-ci.com/github/qasim-at-tci/travis-test-builds/builds/240789770

for available version on ppc64le architecture for reference.
Hope this helps. Please let us know if you have any additional queries, we will gladly help.
Thanks again and Happy Building!

Distribution JDK v8 JDK v11 JDK v12 JDK v13 JDK v14 JDK v15 JDK v16
Xenial Available Available Available Available Available Available Available
Bionic Available Available Available Available Available Available Available
Focal Available Available N/A N/A Available Available Available

romani added a commit to romani/checkstyle that referenced this issue Nov 3, 2021
@romani romani changed the title Travis Build Failures Travis Build Failures: not enough credits Nov 3, 2021
@romani romani removed this from the 9.0.1 milestone Nov 3, 2021
@romani romani added this to the 9.2 milestone Nov 3, 2021
@romani
Copy link
Member

romani commented Nov 3, 2021

Checkstyle migrated to free tier in Travis.

@romani romani closed this as completed Nov 3, 2021
romani added a commit that referenced this issue Nov 6, 2021
romani added a commit that referenced this issue Nov 6, 2021
@romani romani reopened this Nov 7, 2021
@romani
Copy link
Member

romani commented Nov 7, 2021

Reopened as we got build failure


after conversation with support.
We need to migrate off usage of set -e due to https://docs.travis-ci.com/user/common-build-problems/#my-build-fails-unexpectedly
We did testing of this at checkstyle/contribution#578 and works.

romani added a commit to romani/checkstyle that referenced this issue Nov 13, 2021
romani added a commit to romani/checkstyle that referenced this issue Nov 13, 2021
romani added a commit to romani/checkstyle that referenced this issue Nov 13, 2021
romani added a commit to romani/checkstyle that referenced this issue Nov 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants