-
Notifications
You must be signed in to change notification settings - Fork 809
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
[don't merge] Try out Github Actions over TravisCI #8248
base: master
Are you sure you want to change the base?
Conversation
I'm not sure of the limits in Travis, but here are GitHub's CI limits:
|
Github gives 2000 free minutes per month. As example: travis CI builds eats almost 3000 minutes in august (10 mins per build). So there are no space to coverage report (well, maybe once per week only, not for every build). |
Of note, the Travis job is using an ancient version of Ubuntu (Trusty) that was released in 2014. The oldest version of Ubuntu GitHub Actions support are 18.04. Start of Travis job:
Start of GitHub action:
|
Didn't see that. 😢 Is it possible to speed up the build by running tests in parallel? |
For your error with miss OpenFX -- you can try to use custom distributin and download zulu package. I don't know is it workable or not. |
I think it useless for cloud. Most xmage tests are CPU limited. Maybe xmage code optimization can help to improve tests speed, but it hard to find (I'd profile it a few weeks ago and didn't find big bottlenecks). |
I'll look into it more later. |
Some tests needs database for run (e.g. game and cards related tests). Database creates on first game test run. But it hasn't been created in your use case -- due to parallel run (without tests executing order). Database creates in current folder, so there are will be two folder -- As workaround you can try to run tests by two steps (first step for single game test run -- it will create a database). Second for all tests. |
Even with the tests running in serial, that one test fails on line 25: mage/Mage.Tests/src/test/java/org/mage/test/decks/importer/TxtDeckImporterTest.java Lines 20 to 27 in a3ec680
It still seems like a data issue, but I'm not sure. Note: The method name ( |
error on |
Interesting. Github actions works faster (6 mins vs 9 mins). |
I'm not sure what magic of |
jacoco need prepare stages before (to injects to unit tests) and after (to generate final report -- fullest report will be in Mage.Verify). Look at travis related code, original pom file or CV issue with comments about jacoco and sonar integration.
|
@JayDi85 This stuff is really a black box to me. Can you help me get this over the finish line? |
GitHub Actions shouldn't have computing time limitations for public repos. This means that workflow runs on this repository won't use the quota of the magefree organization |
I'm going to leave this here as a reference: https://github.com/nektos/act Would be useful for getting this to work since you can run them locally (and much faster) so you get faster feedback on changes. |
I'm not sure what else I need to do to get this PR over the finish line. I'm not familiar with the tooling and their associated configuration. Any help would be greatly appreciated. |
I have been asking around for help on this as well. Unfortunately I don't know much about GitHub actions but I'll take a look and see what I can do after setting up the local environment. |
I believe to fix this you need to know a lot about Java, Jacoco, Maven, and the Coveralls plugin for test coverage. These are all areas where I lack expertise. I believe all the GitHub Actions work is already done, but I'm here to pitch in from that end as needed. |
@Alex-Vasile Any ideas on how to get coveralls to find the appropriate test files? |
I haven't look into this at all |
Coverage data can be displayed in one of these ways on GitHub Actions:
|
cool |
The coveralls service outputs coverage data as PR comments when setup correctly. Here's an example. The problem I'm trying to resolve now is coveralls is not seeing/receiving all the current coverage data. I don't understand the ins and outs of maven and the likes so I need some help to get that resolved. That's the last piece of this puzzle. |
As a response to a comment about how TravisCI cannot handle this project's size:
This is an attempt to see if a more modern system has similar limitations.