-
Notifications
You must be signed in to change notification settings - Fork 161
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
Setup daily docker builds of the GAP repository, for use in package's Travis tests #1732
Comments
See also https://docs.travis-ci.com/user/docker/ for how to build and use Docker images with Travis. |
I've set up two Docker images: Now I am waiting for the images to appear in DockerHub respectively at
Both are using the gap-docker-base image (https://hub.docker.com/r/gapsystem/gap-docker-base/) which has some dependencies need by some packages. |
Docker images are available - they are called
To test, I suggest to start with
Example:
It should be now possible to follow https://docs.travis-ci.com/user/docker/ in "Using a Docker Image from a Repository in a Build". I may try this, but not today. |
P.S. You can see an example of using Docker containers in Travis builds here: https://github.com/gap-system/gap-docker-pkg-tests/blob/master/.travis.yml |
Next: I've set up two Travis builds
which run standard tests for GAP packages in I see that for packages that don't have time consuming tests, the whole step of pulling and starting GAP container and then running a test takes under 3 minutes. While package authors using Travis CI will be able to use Docker container for continuous integration to test every commit, these two travis builds will be testing published releases of GAP the packages, and will also cover packages which do not using Travis CI and possibly developed elsewhere outside of GitHub. (builds at https://travis-ci.org/gap-system/gap-docker-pkg-tests-master are failing now because it has already PrimGrp and TransGrp packages, but #1714 is not yet done) |
Remains to set up a nightly build of the Docker image. Remote build triggers look exactly like what we need. |
All done. To see a collection of Travis tests for packages, click on appropriate badges in the README from https://github.com/gap-system/gap-distribution |
Update: all docker-based tests are now in the new organisation https://github.com/gap-infra. GAP issue tracker may still contain URLs pointing to their old location. For the up to date list of all publicly available tests from the GAP test suite, see https://github.com/gap-system/gap-distribution/blob/master/README.md. |
It would be great if we could setup a Travis cron job, which builds Docker images of GAP every 24 hours or so, for use by packages.
More specifically, the job would upload docker images to some Docker registry which
testpackages
Travis job).I guess we'd actually generate more than one image here: GAP vs. HPC-GAP, and 32 vs. 64 bit? (And what about debug mode? hum).
These docker images could then be used by Travis tests of GAP packages elsewhere here on GitHub: these packages right now always have to clone a fresh GAP and compile it, which adds 1-2 minutes to their job times (and for some packages, this is easily 90+% of their whole test time). If they could just access a prebuilt docker image, that would speed up the tests, and also simplify the test setup considerably.
The text was updated successfully, but these errors were encountered: