CKAD Certification Snippets

Introduction The Certified Kubernetes Application Developer (CKAD) exam is a hands-on, command-line-heavy challenge that tests your ability to design, build, and deploy applications in Kubernetes - all while racing the clock. I recently took the CKAD and passed with an overall score of around 82%. Not perfect - but let鈥檚 be honest, in a terminal-only, time-boxed environment, "running" is the new "succeeding" 馃槃. This article collects the practical snippets, workflows, and quick references I used during my preparation. ...

August 22, 2025 路 6 min 路 1087 words 路 Micha Kops

Whitesource Snippets

Whitesource Configuration for GitLab Pipeline The following configuration derives values from predefined GitLab Variables whitesource.conf # Providing project information from GitLab CI wss_project_name="$CI_PROJECT_NAME" wss_project_version="$CI_JOB_ID" wss_project_tag="$CI_COMMIT_TAG" # Providing product information wss_product_name="The Product Name" wss_product_version="$POM_VERSION" # Analyze the Maven POM and its transitive dependencies only, no file-system check # Use this only if you don't have any extra checked in jar-files or stuff like that! fileSystemScan=false includes=pom.xml # Only scanning the Maven project resolveAllDependencies=false maven.resolveDependencies=true ...

November 11, 2018 路 1 min 路 89 words 路 Micha Kops

Continuous Deployment using GlassFish, Jenkins, Maven and Git

Recently I needed a quick solution to deploy a Java EE 6 web application on a GlassFish instance automatically and subsequent to a successful build of the project on the integration server. It took only a few steps using Jenkins, Maven and the Cargo plugin and I鈥檇 like to share this quick solution with you here. Prerequisites We need the following software installed and configured: Git Jenkins / Hudson + Git Plugin installed Maven 3 GlassFish 3.1 JDK 7 ...

May 29, 2013 路 6 min 路 1202 words 路 Micha Kops

Finding Memory Leaks using Eclipse and the MemoryAnalyzer Plugin

The MemoryAnalyzer Plugin for Eclipse allows us to quickly analyze heap dumps from a virtual machine and search for memory leaks. In the following tutorial we鈥檙e going to create and run a small application that is going to cause an OutOfMemoryException during its runtime. In addition, we鈥檙e forcing the virtual machine to save a heap dump and finally analyzing this data using Eclipse and the MemoryAnalyzer plugin. Prerequisites Java Development Kit 6 Eclipse Indigo ...

November 2, 2011 路 4 min 路 704 words 路 Micha Kops

GitHub Snippets

GitHub Actions Step to check variables and redistribute as env The following step does .. check of given variables are set, if not, exit with an error that is visible in the action鈥檚 log provide the given input as environment variable in GITHUB_ENV - name: configuration env: VAR1: ${{ needs.configure.outputs.something }} VAR2: ${{ vars.SOMETHING_OTHER }}/ VAR3: "something_other_other" run: | for var in VAR1 VAR2 VAR3; do [ -n "${!var}" ] || { echo "$var is missing"; exit 1; }; echo "$var=${!var}" >> "$GITHUB_ENV"; done ...

March 1, 2010 路 1 min 路 189 words 路 Micha Kops

GitLab Snippets

Generate AsciiDoc Documentation and Publish it with GitLab Pages We setup a repository and add a directory named docs there .. this is the home of our AsciiDoc files. We鈥檙e using asciidoctor/docker-asciidoctor as Docker image for tool provisioning This is the .gitlab-ci.yml, we鈥檙e running the stage only when something in the docs directory has changed. stages: - "Build docs" # The name of the job activates the GitLab pages publication pages: image: asciidoctor/docker-asciidoctor stage: "Build docs" tags: - build script: - sh ./gen_docs.sh - mv output public only: refs: - master changes: - /docs/* artifacts: paths: - public expose_as: 'Documentation Archive' ...

March 1, 2010 路 1 min 路 186 words 路 Micha Kops