Skip to main content

Deployment automation with GimletD Gimlet specific content

Deployment automation is typically taken care of in CI pipelines. Extensive workflows are copy pasted from git repository to git repository.

With Gimlet, all deployment logic is factored into a central component called GimletD.

info

Gimlet uses the gitops paradigm in deployment. You can get familiar with gitops in Gitops Intro.

GimletD​

GimletD is the GitOps release manager.

It builds on the concepts, conventions, and workflows Gimlet CLI introduced and augments them with a centralized approach for managing releases.

It encompasses all release automation logic that used to be scattered in CI pipelines.

It factors much of the scripting work into a standardized toolchain​

Companies nowadays use CI to automate their releases.

CI controlled deployment

Deployment and rollback steps are implemented in CI pipelines to handle basic release workflows.

Later on, further release steps are added: dynamic environments, cleanups, notifications.

Steps every application has to maintain.

This decentralized approach allows little room for control, flexibility, or complex features. GimletD assumes all release focused tasks and the management of the GitOps repository.

GimletD adds centralized release workflows​

GimletD acts as a centralized release manager that adds

  • policy based deployments
  • advanced authorization and security standards

It allows both strict control over releases and flexibility to rewire the release workflows of all your applications at the same time.

And by capturing all release logic, it factors out a large amount of scripting work from CI pipelines into a standardized toolchain.

What CI responsibilities are taken over​

  • deployment logic
  • rollback logic
  • branch based preview deployments
  • notification logic
  • gitops write operations
  • gitops read operations, auditing, reporting

Introducing the release artifact​

GimletD achieves this by introducing a new concept, the release artifact. It serves as the means to detach release workflows from CI.

With GimletD, CI pipelines create an artifact for every releasable version of the application, but they don’t release them. GimletD then serves as a release manager to perform ad hoc or policy based releases.

GimletD operates solely on CI-created releasable artifacts. This split allows for the above listed features.

info

The artifact store is implemented in GimletD, hence the matching colors.

Read more on https://gimlet.io/concepts/gimletd-concepts/