On 23 June 2015 at 12:31, Iain Buclaw <ibuc...@gdcproject.org> wrote: > On 23 June 2015 at 10:15, Marko Anastasov via D.gnu <d.gnu@puremagic.com> > wrote: >> On Monday, 22 June 2015 at 08:56:54 UTC, Iain Buclaw wrote: >>> >>> So, I'd be willing to hear of alternatives: >>> >>> https://semaphoreci.com - However CPU's given are 2, and time to build >>> and run tests is limited to 60 minutes. >> >> >> Hi Iain, >> >> Semaphore cofounder here. The first point is correct, however the 60 minute >> limit applies to single build commands, not the entire build. If you can >> compose your build of n commands, each < 60 minutes, it'll be fine. >> >> I invite you to give Semaphore a try. We'd love your feedback. And I'm here >> for any questions you may have. :) >> > > Hi Marko, > > Thanks for the update. Yes, each command step is easily done in 20 > minutes. I just have a few questions which I couldn't find answers > for in the documentation. >
OK, I went ahead and tried it out anyway, and was surprised to find that everything went smoothly on the first (proper) build! So I send out my kudos to Marko on the ease of use (once I got around how the interface works). https://semaphoreci.com/ibuclaw/gdc Total time is 36 minutes using -j2 - this is *significantly faster* than Travis CI, so I am happy with that. Will also give -j4 a go to see if we can get any improvement over that, also going to try run our unittester with -j2 to see if I hit an OOM related error. Some things to note: - I could not see a way to set environmental variables on a per-branch basis, but maybe I just didn't look hard enough. - Our command list in the build process is quite complex, we should probably put parts of it into a dedicated build script. So rather than having to worry about which HOST or BUILD version of gcc we are fetching, and trying to force that logic in the semaphoreci project settings, just run some ./semaphoreci-setup.sh to get the correct version of GCC our branch supports Iain.