For my part:
Script/infra to generate branches
https://cpt.tamu.edu/gitlab/rasche.eric/docker-branch-generator/tree/master
Generated branches:
https://cpt.tamu.edu/gitlab/rasche.eric/generated-docker-branches/branches/recent
Need to patch up a couple issues, but I'm pretty much done on my end. Whenever you're ready, we can move this to github and someone can just run a cron job once a month. :)
22.07.2014, 15:35, "Björn Grüning" <bjoern.gruening@gmail.com>:
:) great I like it!
Will do it shortly!
Am 22.07.2014 15:36, schrieb Eric Rasche:Hi Björn,
22.07.2014, 14:26, "Björn Grüning" <bjoern.gruening@gmail.com>:Hi Eric,Naturally! 1 and 2 could be automated out with a script. 3 could probably be fixed with a script, but that requires parsing pages/crafting cURL queries and that's less pleasant.The hardest part is to remind myself ;)Try hard to create? No no, what can we do to automatically create these? I'm not so familiar with how one might build a galaxy release specific docker image, but if you can provide a generalized process, let's stick it in a CI server/cron job somewhere and never worry about it again!That sounds like a pretty good idea. If there was a pre-built imagecache
available for whatever release I wanted to test against I could justit and (hopefully) get my tests running a bit faster. I'm not sureifanyone else is already doing this?each
Also, I remember there being mentioned pre-building docker images forrelease of Galaxy, which would accomplish something similar, but I'mnotreally sure how that's being handled. I think Björn's Docker imageis keptup to date with Galaxy stable each time it's builthttps://github.com/bgruening/docker-recipes/blob/master/galaxy/Dockerfile#L51.So, this could be handled by modifying his Dockerfile to build Galaxyatwhatever tagged release you want to test against.I will try hard to create with every Galaxy stable release a new Galaxy
docker image. You can create a github branch with a specific tag, that
will end up as a new tagged version of the main Galaxy Docker image.
The procedure is:
1) create a new branch for the galaxy-docker github account
2) change the version string in the git-clone command in the Dockerfile
3) login into the docker-index site and re-associate a new tag to the
new branch ... click the build button
I could simplify that a little bit if the galaxy-docker image has its
own repository. The docker-index has a build-on-push feature.
But currently every image (all branches) are build again. There is no
way to only trigger one branch build. Until that is fixed in the
docker-index I will do it manually.
So you see any improvements in that setup? Let me know!
Let's have a new repository just for galaxy-docker images. I'll write up a script to check for updates and create+push branches as needed, we can place this in a cron/CI job and have it email you whenever it's run to say "hey, associate the branch/trigger a build"Cheers,Cheers,
BjoernOne downside to docker is that you need to get it installed on yourCIserver, which may or may not be possible (needs a very recent kernelforexample).So true. SL7 for the win! :)
Docker, Docker, Docker!
BjoernAaronwrote:
On Mon, Jul 21, 2014 at 3:12 PM, Eric Rasche <rasche.eric@yandex.ru>often.Hi Aaron,
Yeah, absolutely understandable. I want my tools tested early anditI abuse my CI server for everything, especially for building and
packaging software. In this case I was imagining that I might haveserverproduce an archive on every tagged release, as well as producing a
"daily" archive. All of these would be available on some ftp/httpworksomewhere with symlinks for latest archives (e.g.
galaxy-latest-release.tgz and galaxy-latest-daily.tgz). Would thateggs,for your use case as well?
Eric
On 07/21/2014 03:02 PM, Aaron Petkau wrote:Hello Eric,
Your right about that, downloading the archive, installing all theyou'reand then updating the database takes a bit of time (especially if:P).like me and like re-running tests on nearly every change you makeintegrationI think it would be cool to have a pre-package Galaxy forBjörn'stesting which is quick to setup. I once thought of downloadingthinkingDocker image from Galaxy Bootstrap and using it that way, butitis about as far as I got with that one. One problem I could see istestwould have to be re-built on every release of Galaxy you want toupagainst (whereas mercurial cloning/pulling makes sure you're alwaysit,to date with the latest code).
Aaron
On Mon, Jul 21, 2014 at 2:45 PM, Eric Rasche <rasche.eric@yandex.ru
<mailto:rasche.eric@yandex.ru>> wrote:
Hi Aaron,
Good points, I was considering using galaxy bootstrap. This is
mostly for the CI folk who want to download an archive, unpackegg/dband be ready to install/test their tools. The hg clone andcase.steps seem like unnecessary overhead for this specific use___________________________________________________________Cheers,
Eric
Please keep all replies on the list by using "reply all"
in your mail client. To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
http://lists.bx.psu.edu/
To search Galaxy mailing lists use the unified search at:
http://galaxyproject.org/search/mailinglists/
Eric
--
Eric Rasche
Programmer II
Center for Phage Technology
Texas A&M Univesity
College Station, TX 77843
Ph: 4046922048