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'
}
}