Header Background Image

Case study

Designing an open-source CI tool to simplify GitOps with Spinnaker

Automation
CI / CD
Software integration
Full stack development

Client type

A company with DevOps teams interested in using original Spinnaker and automated CI/CD pipelines

Business goal

Build an open-source tool for DevOps teams seeking to implement GitOps workflow with Spinnaker to save time and minimize effort while creating complex CI scenarios

Our approach

  • Provide expertise in DevOps and automation
  • Provide expertise in deploying CI/CD pipelines
  • Open-source the code on GitHub
  • Create core functionality
  • Moderate the Floodgate code repository
Requirements

Business benefits

Requirements
  • Saved time: less time from pipeline creation to real usage.
  • Reduced effort: configuration as code approach allowed to reduce human effort even while creating complex CI scenarios.
  • Compatibility ensured: all versions of Spinnaker supported.

Technical highlights

  • Created a rendering mechanism enabling the use of Jsonnet with external libraries (example).
  • Used Jsonnet to create resources:

    • Used shared part of pipelines as a reusable library
    • Used public pipeline libraries like Sponnet
    • Implemented a resource dependencies graph
  • Applied the “configuration as code” approach:

    • CI pipelines for testing changes in pipelines, templeted pipelines
    • Configuration changes review
    • Easy revert mechanism
    • Track changes history
  • Made Spinnaker-as-a-Code a reality.

Requirements

Technology stack

https://d33wubrfki0l68.cloudfront.net/d8a047215db69654f5051e38c9f6bb805fa17eea/b2dc0/img/go_logo.svg
https://d33wubrfki0l68.cloudfront.net/2ea1dc8a00e7a79a30ae3c6f75eafbf39943b1c5/beebb/img/jsonnet_logo.svg
https://d33wubrfki0l68.cloudfront.net/a4fc8385144128ecf0b4152caac82a7cedd13be8/fc522/img/spinnaker_logo.svg

Need support with your specific case?

For more information see our Privacy policy