Open bgruening opened 9 years ago
Ooh, always love a new CI competitor. (Btw, we can use docker in Jenkins, I just haven't gone to the trouble of configuring it.) I'll read up on shippable a little :)
Since we have the information from tool_dependencies.xml we could even install packages from the TS before testing tools.
Oh, how do you envision this happening? Shed2tap or similar?
Eric;
no concrete plan, but I could imagine something like this:
(Sorry for rambling, I just woke up...)
Not a bad plan at all! Having not dug into shippable very much I'm still thinking in terms of Jenkins....
I've thought about it a bit, and I don't think this'll be a separate job, I don't think we can take advantage of Jenkins job dependencies here. I think this has to be part of the build/test phase for each repository. Consider the following:
That makes me a bit sad, as I really love having job dependencies in Jenkins. Oh well. We need to develop a Makefile
of some sort for handling the build/testing process. I'll probably do that in https://github.com/galaxy-iuc/jenkins-testing as I'd like it to be easier for others to set this up.
Yeah, on the other side I would like to use such services integrated in github. Is there a free Jenkins hosting service, like travis?
I don't think we need to rebuild the image for every PR. We don't change our packages so frequently and most of them should be included. So this can be pre-calculated every few days from docker-hub.
Sure, using services "properly" integrated into github would be nice...but I'm not aware of a hosted Jenkins solution, or really what benefit we'd get out of it over the VM I've dedicated for IUC use.
If we can get the TS/docker/planemo installing tools bits working, then I'll turn off "unstable" builds and builds will produce a hard failure if even one test fails. I'd like to see new tool PRs build and test successfully rather than have a delay of 2 days causing build failures. I don't mind the CPU overhead; that VM averages <5% utilisation. It's completely wasted! I want to test ALL the things just to get my money's worth out of the compute time allocated to it. :P
I have just a bad conscience to use your money for this. It's not just IUC, it's devteam, galaxytools and probably galaxyp-tools. Do you really think there will be a delay for 2 days, I don't think so. But importing all IUC/devteam repos on demand will also work, if the delay turns out to be a problem.
Nah, don't worry. I've been happy with Digital ocean so far, and I use that VM for a couple of personal purposes as well. If someone ever gets around to setting this up elsewhere (i.e. research funded), I'm happy to move it then.
Well, here's an example:
This is in contrast to:
tools-iuc/packages_*
+ tools-devteam@master
. I literally have more CPU time than I know what to do with. If it takes another 15 minutes to build that image, or if it bumps my CPU usage up to 10, 20, 30%, I really, really don't care compared to the overhead of not being able to accept a PR after the very first set of passing tests.
Btw, I'm happy to set up jenkins jobs for all of the repos you mentioned, I just want to streamline the process first and get the TS/package_
installation working first. Again, I have more than enough CPU time to accommodate this.
An other possibility seems to be circleci: https://circleci.com/docs/docker This could be used to test galaxy-stable, but with a bit of magic also uploading/installing and testing of tools (based on galaxy-stable).
Yeah, that is another alternative. Getting the "magic" figured out is the only hard part. There are plenty of free options for us once we get there :)
I'm thinking about activating the TS inside of Galaxy Docker ... with this in place it should be doable.
I was using smithcr's TS image to handle this, hadn't worked out the steps to:
First one seems to be the hard one, on the other hand all packages should be owned by IUC ;) ...
Oh what a nice world that would be :P
This seems to be like a nice alternative to get galaxy in docker preinstalled and test tools with planemo. Since we have the information from
tool_dependencies.xml
we could even install packages from the TS before testing tools.https://www.shippable.com/
@erasche I would appreciate your opinion as expert in this field!