Skip to main content

Fuzz Container in CI/CD environments

CI Sense offers templates that help you integrate fuzz testing in your CI/CD pipeline. The templates can be found in the CI Sense UI under Project Settings -> CI/CD Integration. Pick any of the supported CI/CD platforms and hit Generate Script. If you are not using one of the supported CI/CD platforms you can click on Other and adapt the script to for your specific CI/CD platform.

CI Fuzz requires access to a Docker daemon to build and push Fuzz Container images. Most CI/CD platforms have added support to add a Docker engine if not already installed.

GitLab

GitLab has a detailed guide on how to build Docker images inside CI/CD jobs. In most cases it is sufficient to add the dind service as included in our GitLab CI/CD template.

GitHub

GitHub actions have access to virtual machines that come with lots of pre-installed software including docker. Together with the Code Intelligence Github Action this makes it easy to integrate fuzz testing into your existing GitHub workflow.

Jenkins

For a Jenkins integration the easiest possibility is to run directly on the host system with an installed Docker engine. Alternatively, it is possible to mount the Docker socket when executing with a Docker agent. To do this replace the agent any with the following snippet:

agent {
docker {
image '<your-docker-image>'
args '-v /var/run/docker.sock:/var/run/docker.sock -u root'
}
}