CI/CD Example Pipeline

A CI/CD pipeline is a series of steps that must be performed in order to deliver a new version of software. Continuous integration/continuous delivery (CI/CD) pipelines are a practice focused on improving software delivery with DevOps in focus. 

Usage Engine includes an example pipeline, that has been developed using Jenkins as orchestration tool and bitbucket as code repository. Specifically, the pipeline consists of a set of scripts, and a code repository layout, that can easily be adapted to similar tools of preference. 

The included pipeline contains a set of examples, showing typical procedures for maintaining configuration in any Usage Engine system in production: 

  • A fully functioning realtime workflow, complete with test workflows. 
  • Storage, test, and deployment of new workflows. 
  • Rolling upgrade of running workflows. 
  • Canary upgrade of running workflows, using Istio service mesh for traffic load balancing between old and new version of workflows.