argo-cd

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes.

     

open-source cd virt kubernetes cloud go

Basebox-Packer

A comprehensive set of Packer definitions. It has quite a collection of 64 bit and 32 bit images for Vagrant VirtualBox and VMWare. A good place to learn Packer definitions.

     

linux open-source virt shell

Bento

A modularized collection of Packer definitions for building machine images. A good place to start with Packer.

     

linux windows osx open-source virt ruby

Buildstep

Buildstep uses Docker and small buildpack scripts to build applications like Heroku. It was used by Dokku to create a 100-line Heroku clone. There are many open source Buildpack scripts for various languages like Java, Ruby, Erlang, PHP, etc.

     

linux open-source cloud-paas ruby

Concourse

Concourse is a CI system composed of simple tools and ideas. It can express entire pipelines, integrating with arbitrary resources, or it can be used to execute one-off tasks, either locally or in another CI system.

     

linux open-source go ci cd

ConDep

ConDep is a open source infrastructure configuration and deployment DSL (Domain Specific Language) specifically targeted to (but not limited to) the Windows Server platform. If your familiar with tools like Chef and Puppet, ConDep does very much the same, but with native support for Windows.

     

windows open-source ci provisioning config-mgmt net

ConfigCat

ConfigCat is a feature flags as a service. It gives you a web based dashboard to manage your feature flags + SDKs to integrate those feature flags into your applications. ConfigCat enables you to use the same feature flags in your mobile apps, websites and server-side applications. It offers all features for free. You get an enterprise-ready SLA with the pricing plans.

     

linux osx windows open-source free commercial ci cd config-management go java net nodejs php python ruby

DeployKit

A generic integration tool built on a Message Queue, to make it easy to communicate events and triggers across various parts parts of the infrastructure. Created to ease the pain of configuring many disparate events in a CI

     

linux windows osx open-source ci ruby

Docker

Docker uses LXC to create and manage native, sandboxed virtual containers. LXC containers acts like a separate OSes, can install their own packages without affecting anything else, and overall have almost the same flexibility of VMs but without any of the virtualization overhead! Docker adds a ton of features, like an elegant configuration file that automates many things (like port forwarding, disk/directory mounting, networking, etc), a way to create and share readymade images that can be distributed as appliances, etc.

     

linux open-source virt cloud-paas provisioning go

Drone

Drone is a Continuous Integration platform built on Docker, written in Go

     

linux windows osx open-source ci go

Fabric8

fabric8 is an end to end development platform spanning ideation to production for the creation of cloud native applications and microservices

     

linux windows osx open-source free cloud-paas virt go

Fig

A package management tool, similar to Ivy/APT, but language agnostic, faster and works well with both executables and libraries.

     

linux windows osx open-source packaging ruby

Flynn

From the creator of Dokku, Flynn is a full fledged, open source PaaS platform built on top of Docker. You just push code with a Procfile, and that’s it, Flynn immediately picks it up, provisions a Docker container and deploys the latest code! Its tagged as “the product that ops gives to developers”

     

linux open-source virt cloud-paas go

Fog

The Ruby Cloud API library. Provides a Ruby API for interacting and managing many cloud providers, such as spinning up new instances, terminating old ones, attaching storage, etc. Currently supports more than 20 providers, including EC2, Rackspace, Brightbox, etc.

     

linux windows osx open-source cloud-paas ruby

Foreman

A complete lifecycle management tool for servers, both self-hosted and in the cloud. It allows you to create and manage instances, build and deploy images, view and audit hosts, and much more! It works with Puppet or Chef, and has multiple interaction facilities like a web frontend, CLI and a RESTful API.

     

linux open-source virt config-mgmt provisioning monitoring cloud-paas ruby

FPM

Effing Package Managers (FPM) is a single tool that can generate rpm, deb, solaris, osx (pkg) and many other packages. It supports multiple inputs (directory, gem, egg, deb, etc) and can produce multiple outputs (rpm, deb, solaris, etc). It relieves the pain out of creating various kinds of packages.

     

linux osx open-source packaging ruby

GitLab CI

GitLab CI integrates with GitLab and runs continuous integration builds whenever you check in code to any of your projects.

     

linux open-source ci ruby

GoCD

Go is a continuous delivery and release management tool, built from the ground up with pipelines in mind, and makes it easy to model complex build and deploy workflows

     

linux windows osx open-source ci java

Hudson

The original lightweight CI tool written in Java. Initially part of Sun, then acquired by Oracle, and now maintained to the Eclipse Foundation

     

linux windows osx open-source ci java

jclouds

A Java Library for controlling cloud resources, with various plugins for many popular cloud providers.

     

linux windows osx open-source cloud-paas java

Jenkins

Jenkins is an open source, lightweight CI tool written in Java, with high extensibility and a fast release cycle. It was forked from Hudson after Oracle acquired it, and has since added significantly more features than the original

     

linux windows osx open-source ci java

Kubernetes

Kubernetes is a system for managing containerized applications across multiple hosts, providing basic mechanisms for deployment, maintenance, and scaling of applications

     

linux open-source virt orchestration go

LXD

LXD is a next generation system container manager. It offers a user experience similar to virtual machines but using Linux containers instead. It's image based with pre-made images available for a wide number of Linux distributions and is built around a very powerful, yet pretty simple, REST API.

     

linux open-source virt cloud-paas provisioning go

Nomad

Nomad is a lightweight workload orchestrator. It offers client instance scaling as well as workload scaling.

     

linux windows osx open-source virt orchestration go

Openshift

Openshift is a container management platform built around a core of Docker container packaging and Kubernetes cluster management. Origin is the upstream community project that powers OpenShift.

     

linux open-source cloud-paas go

Opskeleton

Bootstrap a DevOps infrastructure with some opinionated defaults (vagrant, puppet, librarian-puppet, git, etc), standard development guidelines, etc. Makes it very quick to get a DevOps team up and running

     

linux open-source scm virt config-mgmt provisioning orchestration ruby

Packer

Packer is a tool for creating identical machine images for multiple platforms (like VirtualBox, VMWare, EC2, DigitalOcean, etc) from a single configuration file.

     

linux windows osx open-source virt cloud-paas go

Pallet

A tool to provision and maintain servers across various cloud platforms as well as virtual machine platforms, without any dependencies. Provides cloud and operating system independence.

     

linux windows osx open-source cloud-paas clojure

Pulumi

Create, deploy, and manage Cloud Native infrastructure, as real code. A single toolset for infrastructure, managed services, containers, and serverless environments on any cloud infrastructure. You get all the benefits of real programming languages; IDEs, abstractions and reuse thanks to functions, classes, and packages, debugging, testability, and more

     

linux windows osx open-source cloud-paas go javascript python

Semaphore

Semaphore is a hosted continuous integration and deployment service for open source and private projects. Its cloud solution helps developers find bugs before they reach users and deliver new features faster.

     

linux open-source free commercial ci ruby php nodejs

Spinnaker

Spinnaker is an open source, multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence. It provides two core sets of features: cluster management and deployment management.

     

linux windows osx open-source cd java

SSH KeyBox

An open-source jump box solution with auditing capabilities

     

linux open-source cloud monitoring security java

Terraform

Terraform provides a common configuration to launch infrastructure from different providers (AWS, Digital Ocean, Heroku, etc.). It provides dependency resolution to make sure that your infrastructure is created in the right order

     

linux windows osx open-source cloud-paas go

tsuru

tsuru is an extensible and open source Platform as a Service (PaaS) that makes application deployments faster and easier. Its built upon Docker and allows you easily manage and scale your applications.

     

linux open-source virt cloud-paas go

Vagrant Cachier

A Vagrant plugin that helps you reduce the amount of coffee you drink while waiting for boxes to be provisioned by sharing a common package cache among similiar VM instances.

     

linux windows osx open-source virt artifacts ruby

Vagrant

Vagrant is a cross platform tool to create, boot, configure and destroy development environments. It provides a simple configuration-based approach to take a base image, boot it up, provision it (using any other provisioners), SSH, port forward, and much more. It automates the process of booting up and configuring virtual machines. It supports various providers like VirtualBox, VMWare, AWS, LXC, etc.

     

linux windows osx open-source virt provisioning ruby

Veewee

veewee is a great tool for building Virtual Machine images (aka base boxes). It automates most of the steps and allows you to easily create readymade images for VirtualBox/Vagrant, VMWare Fusion, KVM and Parallels. No longer need to shy away from building custom VM images!

     

linux osx windows open-source virt packaging ruby

Weave

Weave creates a virtual network that connects Docker containers deployed across multiple hosts. Services provided by application containers on the weave network can be made accessible to the outside world, regardless of where those containers are running. Similarly, existing internal systems can be exposed to application containers irrespective of their location.

     

linux open-source virt cloud-paas orchestration service-discovery go

werf

werf is CI/CD tool for building Docker images and delivering them to Kubernetes using a GitOps approach. It integrates with any existing CI systems including GitLab CI, GitHub Actions, etc.

     

linux windows osx open-source ci kubernetes virt go