Travis-CI auto-builds

More
25 Mar 2016 02:40 #45136 by PhracturedBlue
Travis-CI auto-builds was created by PhracturedBlue
Based on a suggestion from mwm, I figured I'd try to setup automated Deviation builds using Travis-CI. It turns out this is incredibly easy to do.

There is one downside which is that we need to switch from Bitbucket to GitHub. For now for testing I've cloned the repo here:
github.com/PhracturedBlue/deviation

It is already building the devo8 and devo10 and devo7e on Travis-CI. This was more of a proof of concept than anything else, but I was amazed how easy it was to do. It is stilla bit kludgey, re-downloading and installing the build environment for each build and each target. There is probably a way to prevent that

I am willing to make this move quickly if all developers are on board. We probably want to setup a github organization for shared ownership, and I'm not sure what else will be needed (for instance I don't know how to make the builds available after they build)

But it is pretty cool:
travis-ci.org/PhracturedBlue/deviation

Please Log in or Create an account to join the conversation.

More
25 Mar 2016 06:02 #45142 by TheSFReader
Replied by TheSFReader on topic Travis-CI auto-builds
Good news !

Had a quick look, and docs.travis-ci.com/user/deployment/ seems to be relevant section for making the builds available

Please Log in or Create an account to join the conversation.

More
25 Mar 2016 12:56 #45151 by PhracturedBlue
Replied by PhracturedBlue on topic Travis-CI auto-builds
the question will be more where do we put them (I like having builds available locally on the site), how do I do that securely, how often do we upload them (and how do we control that) and how many do we keep. We'll figure something out if we move in this direction

Please Log in or Create an account to join the conversation.

More
25 Mar 2016 13:30 #45152 by hexfet
Replied by hexfet on topic Travis-CI auto-builds
Github is fine with me (though I do like hg).

Was confused the first time I made a PR there when I got an email minutes later from some guy named Travis who'd already run a bunch of tests...

Please Log in or Create an account to join the conversation.

More
25 Mar 2016 16:32 #45160 by victzh
Replied by victzh on topic Travis-CI auto-builds
It would be a shame to lose Mercurial. Also, free private repositories of Bitbucket are sometimes useful, for instance to have VCS support while you're actively developing something and it's in a really confusing shape.

Please Log in or Create an account to join the conversation.

More
25 Mar 2016 17:04 #45164 by PhracturedBlue
Replied by PhracturedBlue on topic Travis-CI auto-builds
One issue is that our build system requires a cross-compiler which may limit the ability to run CI on any platform we may like.
There are a few CI options for bitbucket.

shippable appears very similar to Travis and supports bit-bucket. The free version doesn't support parallel runs, and I don't know how well supported it is. It seems to be docker enabled, so this may be an easy way to get the build running

drone.io may be too simple to meet our needs

wercker - I can't really tell, it seems like it is also docker enabled, so a build is probably possible. there isn't much available on what you get for $0 though

If we suck it up and move to git and github, users could continue to work on bitbucket I believe (since they support both VCS), with the benefits of private repos and what-not, and just issue pull requests to the github repo. you still get saddled with git, but the honest truth is that Hg is becoming more and more of a niche market. I may prefer Hg personally, but almost everyone else uses git and maybe we should too.

Please Log in or Create an account to join the conversation.

More
25 Mar 2016 18:41 #45170 by victzh
Replied by victzh on topic Travis-CI auto-builds
My use of Hg is quite simplistic - couple of command to check out, check in, and push. So probably it's more emotional than rational.

How do you do cross-system pull request from Bitbucket to Github?

Please Log in or Create an account to join the conversation.

More
25 Mar 2016 19:22 #45176 by mwm
Replied by mwm on topic Travis-CI auto-builds
I was going to comment on this at some point. I also prefer hg, but bitbucket isn't as good as github for a community project. In particular most of the CI services only work with github. And many of those that work with bitbucket only work with git repositories on bitbucket.

There is a plugin for hg that lets it talk to git repos. Last time I tried it - and it's been a while - it didn't work very well, but I'd probably give it another try to work with deviation.

For the record, my favorite SCM for small projects is fossil - especially if you're going to self-host. It was designed by the author of SQLite for that project. It's a single small binary, sourced in C and a generally easy build. That binary provides a distributed SCM, an issue tracker, a wiki (all using fossil's versioned files) as well as being able to make everything available via a web server that gives you quite a bit of control over the appearance. The downside is that there's only one hosting site (chiselapp), and it's doesn't really provide services beyond what you could get from installing fossil and a collection of repositories on an cloud server somewhere. And of course, there's no CI system that works with it out of the box.

Do not ask me questions via PM. Ask in the forums, where I'll answer if I can.

My remotely piloted vehicle ("drone") is a yacht.

Please Log in or Create an account to join the conversation.

More
25 Mar 2016 19:52 - 26 Mar 2016 00:33 #45183 by PhracturedBlue
Replied by PhracturedBlue on topic Travis-CI auto-builds
Except for goebish, that represents input from all the major (recent) contributors. Despite everyone being un-enthusiastic, I didn't here anyone who was going to start screaming if we switch to GitHub. I looked into it more, and it is possible to track a bitbukcet git repo against github, but s probably more trouble than it is worth. I'll let this simmer for a while, but it is looking more like this will be an overall win to transition (I'm assigning the value of CI a pretty high weight). Git has slightly different branching heuristics than Mercurial, and I'm not sure if we should keep all of the legacy branches during the migration, or prune everything to just the trunk, and keep the old Hg repo for historical purposes.

Goebish (or anyone else), if you want your say, please voice it. There is no immediate rush to this, but at the same reason, no reason to delay indefinitely.

I don't think I'm interested in considering anything other than a transition to Git (or nothing at all). I have found that being on a less-popular solution (be it hg vs git, bitbucket vs github, Kunena vs phpBB/vBulletin) can make it more difficult to find pre-boxed solutions to problems. I'm not unhappy with the decisions that have been made (and I have no reason to drop Joomla/Kunena), but if I'm going to make a change, I probably want to use the most-popular version whenever possible.
Last edit: 26 Mar 2016 00:33 by PhracturedBlue.

Please Log in or Create an account to join the conversation.

Time to create page: 0.042 seconds
Powered by Kunena Forum