-
-
Notifications
You must be signed in to change notification settings - Fork 18.7k
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
We need CI to prevent commits break builds easily #1553
Comments
absolutely agreed. Right now i'm using a machine at work for builds, but The biggest problem is Mac builds. I have no idea how to get hosted mac On Mon, Mar 23, 2015 at 1:31 AM, marynate notifications@github.com wrote:
OkamStudio |
I have done some tests with http://buildbot.net/. It is master/slave orientated. The master is a centralized server in the internet. The slaves are compiling the new commits on the native OS triggered by the master. The test was very promising. I only wanted to secure/harden my server a little bit more, before i show it up public as a demo. This is the way blender is doing it. This is the web-interface of the blender master --> https://builder.blender.org/waterfall |
I will try to see if I can work with punto on this On Mon, Mar 23, 2015 at 1:59 AM, MSC notifications@github.com wrote:
|
@reduz we have already base .travis.yml in master branch ( I only setup x11 build there so far ), you just have to setup a travis-ci account to link to github repository to get it started. We can start adding mac/ios/android/windows ci-build script base on that. |
@weitjong is doing a wonderful work with Travis-CI for Urho3D. There's a neat nightly build archive on Sourceforge (http://sourceforge.net/projects/urho3d/files/Urho3D/) and also direct download on their main page for their stable release on each platform (http://urho3d.github.io/). Maybe you could inspire from that. |
that sounds interesting On Mon, Mar 23, 2015 at 9:28 AM, Danny Boisvert notifications@github.com
|
I wonder if travis can be used to generate all the export templates, the build dependencies are quite large |
Urho3D has made different branches for building each of them by generally changing only (I guess) the If you plan following this kind of technique, I would suggest following a similar approach as the well know successful Git branching model and, for a cleaner readability, using the standard Git flow prefix model from Atlassian ( I'm not 100% sure about all this since I never officially used hooks and CI for the moment but I guess you could get in touch with one of their team members such as @cadaver (Project Maintainer) or @weitjong (Majorly the CI Maintainer) for further information. |
if anyone wants to help set up travis in a way it can generate builds of ALL the templates let me know |
I can give it a try with Travis-CI by forking this repository and doing what I suggested earlier since I'll need to apply something similar with a self-hosted GitLab-CI server, so this might be a good experience for a good cause 😄 . I'll follow all building steps from the Wiki and I might focus on different branches but maybe by using submodule instead of full repository updates for each platform, unless you need to build documentation, stubs, intelligent fixes or anything else that is not directly part of a build. But at anytime feel free to stop me and suggest/test your own continuous integration implementation since I might not offer anything reliable in the next week(s) or month. |
There's good progress on this but I cannot see why the android build never sees that prerequisites stuffs are installed and ready to be used... According to your documentation, What is actually searched to detect You can look at the custom scripts on my feature/travis-ci branch, see Thanks. |
Anyway, if someone can check, here's what is working so far: Here are my current blocking points:
Finally, I may set them into zip and send them to GitHub's Release portal automatically when a new tag is created using Travis-CI deploy system. I will keep this at the end when all builds will work properly. |
Well, there's an automatic build tool now, AFAIK, that's pushing the nightly builds in the website. Can we consider this as solved? |
@vnen not until a nice badge telling the status of such builds is set in the "read me" file |
This issue is not solved no, nightly builds are nice but do not constitute a true CI solution. We need something that checks each PR on all platforms and reports the status, like e.g. BuildBot (see for example the test in PRs of dolphin-emu: dolphin-emu/dolphin#3244). |
The Travis-CI scripts were intended to be used for both build releases and test every platform for PRs. Anyone is free to fork my Otherwise, I would also suggest a self-running build server such as pointed out by @akien-mga. |
The travis-ci script is finally enabled, so we should now have CI for x11, windows, android, osx and iphone (see #3120), so this issue should finally be fixed :) There is of course still room for improvement, adding more platforms or testing both editor and templates build, etc., but it's start :) |
Notice that there're more and more build failure recently, I think it's time to integrate CI build into the main repository. ( I've setup some very basic travis-ci script on my fork: https://travis-ci.org/marynate/godot) So we can easily identify if a PR will break builds before merging into main repo.
The text was updated successfully, but these errors were encountered: