This is
Keel

A free, open source, deployment update automation solution built for Kubernetes and beyond.

No-fuss Deployment updates

Keel provides a clean, robust solution to update your Kubernetes deployments on image push.
We encourage the use of semantic versioning but since nobody's perfect - 'latest' tag is supported as well.

Keel Overview

  • Easy to deploy - stateless, runs as a single container.
  • Out of the box Helm and Kubernetes integrations.
  • No additional CLI/API calls required, works directly through your configuration (labels, annotations, charts).
  • Encourages the use of semantic versioning but can work with latest tags as well.
  • Easy to extend with your custom triggers or deployment providers.
  • Built for Kubernetes but support can be added for Swarm, Mesos, Nomad and other providers.

Why?

Keel was built for lightweight, micro-service architecture based environments, where having a heavy CI/CD engine with lots of dependencies that consumes more resources than your whole backend (that's actually doing the important work for your business) doesn't make sense.
You should consider using Keel if:

  • You don't want your "Continous Delivery" tool to consume more resources than your actual deployment does.
  • You are not Netflix, Google, Amazon, {insert big company here} that already has something like Spinnaker that has too many dependencies such as "JDK8, Redis, Cassandra, Packer".
  • You want simple, automated Kubernetes deployment updates on code/image push.

Features

  • Automated subscription management for Google Container Registry.
  • DockerHub webhooks.
  • Quay.io webhooks.
  • Private registries.
  • Native Keel webhooks.
  • Direct integration with Helm's Tiller to make canonical release upgrades.
  • Polling - when webhooks aren't available Keel can watch images for SHA digest change or tags with new versions.
  • Slack and webhook notifications for taken actions or errors.