...
- Problems:
- No explicit pipeline concept
- Re-use of artifacts between stages not explicitly supported
- Configuration via VCS not possible
Travis CI
https://travis-ci.org/kieker-monitoring/kieker
- Benefits:
- Configuration file is inside the repository
- Docker compatiblity
- Problems:
- Very strict resource limitations currently leading to failing builds (there would have to be more tweaking to get this running)
- No pipeline concept
- How are artifacts released (no access to workspace)
- Re-use of artifacts between stages not explicitly supported
Snap CI
https://orca.snap-ci.com/kieker-monitoring/kieker
- Benefits:
- Explicit pipelines
- Docker compatibility ( https://orca.snap-ci.com )
- Re-use of artifacts among stages
- Possibility to mark files/folders as artifacts and access them from the website
- Problems:
- Configured directly using the snap-ci website (not configuration-file based in the repository)
- Cost model?
Pre |
---|
No! All plan limits as mentioned here are specifically for your private repositories alone! If you are working on a public repository or on working on an Open Source project, we will not count any builds you set up for those. So in essence, you get unlimited public project builds in addition to what your plan provides. Well - we clearly have physical limits- but yes, in essence we do not intend to stop you from setting up builds for as many public repositories as you need. Currently, we let everyone set up around 20 public repositories. However, as we keep adding capacity to our build grid, this number will go up! |
...
...
Kieker Build Docker Containers
As Snap-cI (orca) and Travis-CI support Docker, we created Docker containers to have a reproducible build environment.
The repository containing all the Dockerfile files: https://github.com/kieker-monitoring-docker/kieker-build
The DockerHub containing the automatically built containers: https://hub.docker.com/r/kieker/kieker-build/
The most important tags right now are:
- kieker/kieker-build:base (Base image for all other containers based on Ubuntu 15.10 and the additional R dependencies)
- kieker/kieker-build:openjdk6 (Based on :base with openjdk-6 installed)
- kieker/kieker-build:openjdk7 (Based on :base with openjdk-7 installed)
- kieker/kieker-build:openjdk8 (Based on :base with openjdk-8 installed)
- kieker/kieker-build:snap-ci-build (Based on :openjdk6, assuming that the kieker repository to build is mapped to /opt/kieker inside the container and executes the Gradle wrapper with the
build task
by default)
To execute it locally:sudo docker run -t -i -v /path/to/kieker/repo:/opt/kieker kieker/kieker-build:snap-ci-build
- kieker/kieker-build:snap-ci-nightly (Based on :openjdk6, assuming that the kieker repository to build is mapped to /opt/kieker inside the container and executes the Gradle wrapper with the
jenkinsNightlyBuild
task by default. In addition to the :snap-ci-build container, this container has all packages installed that are needed to run the nightly build; e.g., pdflatex, bibtex, fonts for documentation generation)
To execute it locally:sudo docker run -t -i -v /path/to/kieker/repo:/opt/kieker kieker/kieker-build:snap-ci-nightly