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

Switch from Travis to GitHub Actions. #452

Merged
merged 3 commits into from
Nov 27, 2020

Conversation

jason-fox
Copy link
Contributor

As I'm sure you are aware from the TSC minutes, it appears that Travis is transitioning towards a paid pricing model. It would be opportune for active FOSS Projects to migrate to use the integrated GitHub Actions. It looks like each GitHub account is safe until January, but then travis-ci.org goes read-only then the 100000 credits start counting down. There is no clarity over if/how to obtain more credits, and indeed if they can be obtained in a timely manner.

Background links

This PR sets up the equivalent GitHub Action CI to the old Travis Yaml and as a bonus, the flaky AMPQ test. seems to work.

@jason-fox
Copy link
Contributor Author

The result of a CI test run can be seen here: https://github.com/jason-fox/iotagent-ul/actions/runs/380925209

@fgalan
Copy link
Member

fgalan commented Nov 24, 2020

... the flaky AMPQ test. seems to work.

Music to my ears xD

@fgalan
Copy link
Member

fgalan commented Nov 24, 2020

The result of a CI test run can be seen here: https://github.com/jason-fox/iotagent-ul/actions/runs/380925209

Is there a way to so the result of the action "inline" the PR? I mean something like Travis does:

imagen

or

imagen

@jason-fox
Copy link
Contributor Author

Yes, it will display in the same manner once the PR is merged.

Here is a working FIWARE example: https://github.com/FIWARE/iotagent-isoxml

Screenshot 2020-11-24 at 17 21 20

@fgalan
Copy link
Member

fgalan commented Nov 25, 2020

Thanks for the clarifications!

Btw, maybe this other repository should also be de-travis-ed ? https://github.com/telefonicaid/lightweightm2m-iotagent

@jason-fox
Copy link
Contributor Author

jason-fox commented Nov 25, 2020

Btw, maybe this other repository should also be de-travis-ed ? https://github.com/telefonicaid/lightweightm2m-iotagent

Probably, but unlike all of the other repos, the Unit-Tests for LWM2M have not been updated to use mocks properly so the set-up for the GitHub Actions would be much more complex. I haven't got time for that. I'm starting off by picking the low hanging fruit from 50+ FIWARE catalogue projects first. I'm running through the easy Node.js stuff first then Java then Python.

Your biggest concern should be converting repos that eat into your free minutes like: https://github.com/telefonicaid/fiware-orion

LWM2M isn't very active so it can wait.

@fgalan
Copy link
Member

fgalan commented Nov 25, 2020

Btw, maybe this other repository should also be de-travis-ed ? https://github.com/telefonicaid/lightweightm2m-iotagent

Probably, but unlike all of the other repos, the Unit-Tests for LWM2M have not been updated to use mocks properly so the set-up for the GitHub Actions would be much more complex. I haven't got time for that. I'm starting off by picking the low hanging fruit from 50+ FIWARE catalogue projects first. I'm running through the easy Node.js stuff first then Java then Python.

Ok, makes sense. IOTA LWM2M can wait.

Your biggest concern should be converting repos that eat into your free minutes like: https://github.com/telefonicaid/fiware-orion

You are right. Currently, the functional testing sub-job in Orion takes around 40-50 minutes (even with some "hacks" to reduce the time of some test cases, such this one), very close to the the travis timeout. Have github actions some similar timeout? Lower or higher than travis?

@jason-fox
Copy link
Contributor Author

jobs.<job_id>.steps.timeout-minutes and jobs.<job_id>.timeout-minutes define the limits, according to the docs

The maximum number of minutes to let a job run before GitHub automatically cancels it. Default: 360

So six hours.

@fgalan
Copy link
Member

fgalan commented Nov 26, 2020

So six hours.

Great. That means that the functional testing sub-job in Orion will fit even better in git actions than in travis :)

@fgalan
Copy link
Member

fgalan commented Nov 27, 2020

Btw, maybe this other repository should also be de-travis-ed ? https://github.com/telefonicaid/lightweightm2m-iotagent

Probably, but unlike all of the other repos, the Unit-Tests for LWM2M have not been updated to use mocks properly so the set-up for the GitHub Actions would be much more complex. I haven't got time for that. I'm starting off by picking the low hanging fruit from 50+ FIWARE catalogue projects first. I'm running through the easy Node.js stuff first then Java then Python.

Ok, makes sense. IOTA LWM2M can wait.

Noted for IOTA-LWM2M: telefonicaid/lightweightm2m-iotagent#235

Copy link
Member

@fgalan fgalan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants