Portworx Guided Hands On-Labs. Register Now

Effective CI/CD requires that you quickly and reliably recreate your production environment for testing. Moreover, you must be able to reset your environment after each test run. Otherwise, your results will be subject to failures caused by minor changes to configuration state. With Portworx, you can start all your builds from a known-good snapshot of production data, then roll back to this golden image after each test run. Your test runs will be faster with fewer configuration errors.

Problems with CI/CD today:

  • Pulling images to create new build environments is time-consuming
  • Horizontal scaling is slow because the entire Jenkins /home or similar directory must be pulled
  • Incremental builds accelerate testing, but they are error-prone

Portworx Works with Major CI/CD Platforms

Horizontally Scale Your CI/CD Cluster Without the Wait

The Jenkins /home directory or equivalent in TravisCI, Bamboo and other popular CI/CD systems includes all the images and artifacts you need to run your tests. Once the home directory has been built from your container registry and version control system, Portworx lets you snapshot it and use those snapshots as the basis for unlimited Jenkins agent. Each Portworx snapshot is available to the cluster globally — so no matter where your Jenkins job is scheduled, your tests can begin right away, without the wait.

Accelerate Incremental Builds

Pulling all the images and artifacts needed for a test run is time-consuming, so it is tempting to use the same environment for multiple test runs. But because database state or configuration can change during a test run, subsequent runs can fail; not due to real errors in your code, but through minor differences in your configuration. Sorting out the causes of these errors takes time, which can force you to pull Jenkins /home or equivalent fresh each time. With Portworx, when you’ve built Jenkins /home once, you can snapshot it and use the snapshot as a golden image for subsequent test runs. This will dramatically speed up your incremental builds.

Related Blog Posts

tws160
How To

How to Speed Up Jenkins Builds

swarm-manager
How To

Jenkins with Docker Swarm Integration Guide

tws167
How To

Snapshotting Cassandra Container Volumes for CI/CD Using Mesosphere DC/OS