Skip to content
Lightweight Cloud Instance Contextualizer
Go Shell
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.


Travis Widget Coverage Widget Documentation Widget Waffle Widget

Flamingo Logo

Flamingo is a lightweight contextualization tool that aims to handle initialization of cloud instances.

It is meant to be a replacement for cloud-init in Atomic Host, a lightweight operating system designed to run applications in Docker containers with orchestration capabilities (Kubernetes). It has 3 different flavors; Fedora, RHEL, and CentOS.

For more details please check Introducing Flamingo


The aim of this project is to create a fast, extensible, documented tool to use

Why not use cloud-init?

  • In order for an image to be built with cloud-init as its contextualization tool, it needs to contain the python interpreter, it's dependencies and the dependencies of cloud-init. It fattens up the image and increases complexity for the distributions.
  • Due to the dynamic nature of scripting languages they are slow. In an I/O boud application this is not a big problem however initializing VM images, is different.
  • The documentation is lacking at best. The tests are inadequate and it is a big chunk of initialization scripts. Making it hard to work with cloud-init as a developer and maintainer.


  • Golang excels at building big applications (e.g. distributed computing). It provides the necessary tooling for the job. It doesn't have long dependency chains like interpreted languages and it is fast.

  • Flamingo will essentially be a single binary coupled with all of its dependencies. In addition, cloud images will be smaller as well.

  • Testability, Documentation and Extensibility is heavily emphasized in Flamingo.


You can find the latest source RPM releases here

For fedora, you can also use the copr repository

dnf copr enable tamertas/flamingo
dnf install flamingo


Flamingo supports configuration through cloud-config files similar to cloud-init.

It supports a subset of cloud-init cloud-config.


If you'd like to contribute, learn more, or share your opinions please feel free to open an issue, mail to centos-devel, atomic, user-list or come to #atomic and #centos-devel irc channels to have a chat.

You can’t perform that action at this time.