1. State of the Art CI

    Here you can find the slides of my talk at the JUG Saxony Day 2018. If you have any question, email us :) …


  2. Extending build containers: Generic caching

    Declaring your build environment by using Dockerfiles and creating separate containers for each and every build is good practice. But starting in a fresh environment each time prevents various caching mechanisms from having any effect. The result is an increase in build time as well as network traffic, where especially the latter can cause some bottlenecking to occur. This affects mainly git repositories, build tools like Maven and npm, but also Docker builds itself. The git repository has to be cloned from scratch. Dependencies for Maven and npm have to be fetched from their official repositories on every build, even if the majority did not change. In case of Docker builds, at least the base image must be pulled. The Docker build cache is also empty. …


  3. Remote debugging containerized Jenkins builds: debugShell()

    Providing build environments by employing some kind of container technology is quite common nowadays. When looking at Docker as an example, it offers various benefits: Declaring the environment in a textual way by using a Dockerfile , you can combine it with a versioning tool like git and track every change. Each build is running inside its own fresh container and is therefore isolated and also reproducible. If you choose to use a clustering solution like Docker Swarm or Kubernetes, you’re also able to dynamically scale available build power at run time. …


  4. Inhalte von Git Projekten verschlüsseln

    Inhalte von Git Projekten verschlüsseln Um z.B. auf github auch sicherheitsrelevante Sachen ablegen zu können, gibt es die Möglichkeit Inhalte eines git Projekt zu verschlüsseln. Ein Beispiel hierfür ist git-crypt. Damit git-crypt auch unter Windows funktionert, muss man folgendes tun: git-crypt Installation in Msys2 …


  5. Hello World!

    Everything starts with a Hello World… So here we go :-) …