Skip to main content

Managed Pipeline

With large projects such as Sarapis with multiple components, it is important to define a process for testing and releasing new versions. As such, we are proposing a managed pipeline that automates testing, health checks, and deployments to different evironments. These environments would include:

  • Development (Dev)
  • Quality Assurance (QA)
  • Production (Prod)

The pipeline should also allow Blueprint to easily rollback versions on the Software. Due to limited resources, we are looking to build this rapidly with minimum Infrastructure cost. A viable tool that we can use to fit this objective is GitHub actions, that way are infrastructure remains close to the code. We may have to use additional tools like Jenkins to handle builds, but that is what this document will define/explore. 

A Minimum Viable Product Might Include:

  • Hosting for Dev, QA, and Prod environments
  • Authentication/Authorization for interacting with Dev, QA, and Prod environments
  • Automated test suites that can be configured different projects
  • Automated build processes that can be cofigured for different projects
  • Ability to rollback production deployments to previous versions
  • Notification system for any failures in the environments