Changes at TravisCI- affecting open source

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Changes at TravisCI- affecting open source

Post by bernd »

I moved from the grandpa laptop to a 4 core elite desk i5 machine. This machine will be up 24/7 and only the CI runs on it.

Everything runs automaticlly. The repo is mirrored from main FreeCAD from github and as soon as new commits come in a new CI run is triggered. ccache is set up to speed up the process. Since I moved to the other machine it needs to rebuild.

The process has two steps, the build and the tests. I like this much better as on Travis where it was in one. The build passes, but the tests do not pass ATM. ATM only the build passes. I just merged a patch of przemo. With this the CI should pass build and test.

ATM it can be found here: https://gitlab.com/berndhahnebach/FreeCAD/-/jobs

cheers bernd ... once again, the credits should go to Przemo :D
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Changes at TravisCI- affecting open source

Post by bernd »

a clean build takes 1 hour and 2 minutes on the machine. I am curious how long a ccache build takes.

build and tests successful :D

Screenshot_20210922_094142.png
Screenshot_20210922_094142.png (98.93 KiB) Viewed 1706 times
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Changes at TravisCI- affecting open source

Post by bernd »

guys!!! do not let him cool down, give him work to do ... :mrgreen:

Next step are the PRs. Przemo has done some static manual solution already. We hopefully find some automatic workflow here too.

bernd
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Changes at TravisCI- affecting open source

Post by bernd »

chennes wrote: Tue Sep 21, 2021 4:35 pm Also, is there a "[noci]" tag or something we can put in commits and/or pull requests when they don't affect the code? I just pushed a change to one of the tools, there's no reason to burn your CPU time checking that one...
this is not needed due to ccache. If no C++ code has been changed the build takes less than 10 minutes. We will be fine here. see for example 6 minutes and 40 seconds https://gitlab.com/berndhahnebach/FreeC ... 1613217269
openBrain
Veteran
Posts: 9034
Joined: Fri Nov 09, 2018 5:38 pm
Contact:

Re: Changes at TravisCI- affecting open source

Post by openBrain »

Really interesting topic. Some (eventually silly) remarks/questions :

* Could one be able to write a wiki page about how to set up such a CI/CD instance ? Something for the dummies with no room for guessing what to do. :)
* Would that be possible to clone only the master branch from GH to GL ? I think there's no need to overload the servers. :)
* As far as I understand it, GH PR aren't cloned as GL MR. Is this possible ? Or do we need to switch to GL to be the master development tool (instead of GH) if we want to be able to have CI/CD on PR too ?

Thx for the hard work on this.
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Changes at TravisCI- affecting open source

Post by bernd »

openBrain wrote: Thu Sep 23, 2021 7:22 am * Could one be able to write a wiki page about how to set up such a CI/CD instance ? Something for the dummies with no room for guessing what to do. :)
you would need to have some patience for this. We still in the middle of trying to set up everything. You could jump in and start to create such a wiki page. You would have at least two persons who try to answers all your questions.

Mainly you need these two informations:
- https://forum.freecadweb.org/viewtopic. ... 30#p534780
- https://gitlab.com/PrzemoF/FreeCAD/-/bl ... /README.md


openBrain wrote: Thu Sep 23, 2021 7:22 am * Would that be possible to clone only the master branch from GH to GL ? I think there's no need to overload the servers. :)
I do not understand this question. On the CI I have set up the FreeCAD github master branch is mirrowed to gitlab automaticly. In this mirror the CI runs automaticly.


openBrain wrote: Thu Sep 23, 2021 7:22 am * As far as I understand it, GH PR aren't cloned as GL MR. Is this possible ?
It it not possibel out of the box to mirrow the PRs from github to gitlab. Just the repository is mirrowed. There are a few possibilities to get the PRs build by the CI as well. We are evaluating this ATM.


openBrain wrote: Thu Sep 23, 2021 7:22 am * ... Or do we need to switch to GL to be the master development tool (instead of GH) if we want to be able to have CI/CD on PR too ?
If we would switch to gitlab we would have the PRs in CI immediately, YES. But moving the main repo to another place is nothing which can be done just simple. It is a big decision and a lot of people and services would be involved. Some questions would need to be answered first. Is gitlab the right place? Would it not be better to totally switch to selfhosting ... This takes some time. Thus ATM I do not take this into account.

I would like to get back a CI even for PRs SOON. I would like to find a solution for the CI and the PRs the time beeing the repo still is on github. After this we could start a disscussion if we would like to move the repo and when we answere this with yes, where we would like to move the main repo.
openBrain
Veteran
Posts: 9034
Joined: Fri Nov 09, 2018 5:38 pm
Contact:

Re: Changes at TravisCI- affecting open source

Post by openBrain »

bernd wrote: Thu Sep 23, 2021 9:53 am you would need to have some patience for this. We still in the middle of trying to set up everything. You could jump in and start to create such a wiki page. You would have at least two persons who try to answers all your questions.

Mainly you need these two informations:
- https://forum.freecadweb.org/viewtopic. ... 30#p534780
- https://gitlab.com/PrzemoF/FreeCAD/-/bl ... /README.md
I'm interested in jumping in this topic, but I currently have limited time and knowledge, so I'm not really interested in falling in same traps that already happened and were solved. That's why a wiki page (even a dirty one in the sandbox) would IMO be a good option as we can centralize information there, and easily update it when progress come while having everything in the same spot. ;)
openBrain wrote: Thu Sep 23, 2021 7:22 am * Would that be possible to clone only the master branch from GH to GL ? I think there's no need to overload the servers. :)
I do not understand this question. On the CI I have set up the FreeCAD github master branch is mirrowed to gitlab automaticly. In this mirror the CI runs automaticly.
If you look at your GitLab clone, you'll see that all branches of GH repo are replicated (master, but also 0-13, 0-14, 0-15, ...). Maybe it's not needed to get everything replicated. ;)
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Changes at TravisCI- affecting open source

Post by bernd »

openBrain wrote: Thu Sep 23, 2021 10:05 am If you look at your GitLab clone, you'll see that all branches of GH repo are replicated (master, but also 0-13, 0-14, 0-15, ...). Maybe it's not needed to get everything replicated. ;)
Ahh ok got it. The CI does not matter as they will not run becaus they miss this commit git commit 26dfd72143ed7d . They are just lying around. To get they away is not on top of my priority for CI ATM. May be later ...
User avatar
bernd
Veteran
Posts: 12849
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Changes at TravisCI- affecting open source

Post by bernd »

openBrain wrote: Thu Sep 23, 2021 10:05 am
bernd wrote: Thu Sep 23, 2021 9:53 am you would need to have some patience for this. We still in the middle of trying to set up everything. You could jump in and start to create such a wiki page. You would have at least two persons who try to answers all your questions.

Mainly you need these two informations:
- https://forum.freecadweb.org/viewtopic. ... 30#p534780
- https://gitlab.com/PrzemoF/FreeCAD/-/bl ... /README.md
I'm interested in jumping in this topic, but I currently have limited time and knowledge, so I'm not really interested in falling in same traps that already happened and were solved. That's why a wiki page (even a dirty one in the sandbox) would IMO be a good option as we can centralize information there, and easily update it when progress come while having everything in the same spot. ;)
just read the two links and try to play and ask if you have questions. A wiki page would not have different informations to these resources, just better formating ... ;)
openBrain
Veteran
Posts: 9034
Joined: Fri Nov 09, 2018 5:38 pm
Contact:

Re: Changes at TravisCI- affecting open source

Post by openBrain »

bernd wrote: Thu Sep 23, 2021 11:12 am just read the two links and try to play and ask if you have questions. A wiki page would not have different informations to these resources, just better formating ... ;)
Sorry, not enough time ATM (really, no lazyness :P). Will eventually come back on this later. Thx for links and support assessment. :)
Post Reply