All Projects → bitnami → Kubecfg

bitnami / Kubecfg

Licence: apache-2.0
A tool for managing complex enterprise Kubernetes environments as code.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Kubecfg

Iam Policy Json To Terraform
Small tool to convert an IAM Policy in JSON format into a Terraform aws_iam_policy_document
Stars: ✭ 282 (-59.07%)
Mutual labels:  infrastructure-as-code
Howtheyaws
A curated collection of publicly available resources on how technology and tech-savvy organizations around the world use Amazon Web Services (AWS)
Stars: ✭ 389 (-43.54%)
Mutual labels:  infrastructure-as-code
Aws
A collection of bash shell scripts for automating various tasks with Amazon Web Services using the AWS CLI and jq.
Stars: ✭ 493 (-28.45%)
Mutual labels:  infrastructure-as-code
Terraform Provider Digitalocean
Terraform DigitalOcean provider
Stars: ✭ 296 (-57.04%)
Mutual labels:  infrastructure-as-code
Terratag
Terratag is a CLI tool that enables users of Terraform to automatically create and maintain tags across their entire set of AWS, Azure, and GCP resources
Stars: ✭ 385 (-44.12%)
Mutual labels:  infrastructure-as-code
Terraform Provider Kubernetes Alpha
A Terraform provider for Kubernetes that uses dynamic resource types and server-side apply. Supports all Kubernetes resources.
Stars: ✭ 438 (-36.43%)
Mutual labels:  infrastructure-as-code
heat-examples
Heat examples tested against the SysEleven Stack infrastructure cloud.
Stars: ✭ 36 (-94.78%)
Mutual labels:  infrastructure-as-code
Rex
Rex, the friendly automation framework
Stars: ✭ 653 (-5.22%)
Mutual labels:  infrastructure-as-code
Punchcard
Type-safe AWS infrastructure.
Stars: ✭ 387 (-43.83%)
Mutual labels:  infrastructure-as-code
Goss
Quick and Easy server testing/validation
Stars: ✭ 4,550 (+560.38%)
Mutual labels:  infrastructure-as-code
My Links
Knowledge seeks no man
Stars: ✭ 311 (-54.86%)
Mutual labels:  infrastructure-as-code
Core
CFEngine Community
Stars: ✭ 377 (-45.28%)
Mutual labels:  infrastructure-as-code
Terracognita
Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration
Stars: ✭ 452 (-34.4%)
Mutual labels:  infrastructure-as-code
Terraform Aws Gitlab Runner
Terraform module for AWS GitLab runners on ec2 (spot) instances
Stars: ✭ 292 (-57.62%)
Mutual labels:  infrastructure-as-code
Enms
An enterprise-grade vendor-agnostic network automation platform.
Stars: ✭ 595 (-13.64%)
Mutual labels:  infrastructure-as-code
Modules.tf Lambda
Infrastructure as code generator - from visual diagrams created with Cloudcraft.co to Terraform
Stars: ✭ 267 (-61.25%)
Mutual labels:  infrastructure-as-code
Tads Boilerplate
Terraform + Ansible + Docker Swarm boilerplate = DevOps on 🔥🔥🔥 | Infrastructure as Code
Stars: ✭ 424 (-38.46%)
Mutual labels:  infrastructure-as-code
Red Baron
Automate creating resilient, disposable, secure and agile infrastructure for Red Teams.
Stars: ✭ 662 (-3.92%)
Mutual labels:  infrastructure-as-code
Geodesic
🚀 Geodesic is a DevOps Linux Distro. We use it as a cloud automation shell. It's the fastest way to get up and running with a rock solid Open Source toolchain. ★ this repo! https://slack.cloudposse.com/
Stars: ✭ 629 (-8.71%)
Mutual labels:  infrastructure-as-code
Terraformer
CLI tool to generate terraform files from existing infrastructure (reverse Terraform). Infrastructure to Code
Stars: ✭ 6,316 (+816.69%)
Mutual labels:  infrastructure-as-code

kubecfg

Build Status Go Report Card

A tool for managing Kubernetes resources as code.

kubecfg allows you to express the patterns across your infrastructure and reuse these powerful "templates" across many services, and then manage those templates as files in version control. The more complex your infrastructure is, the more you will gain from using kubecfg.

Yes, Google employees will recognise this as being very similar to a similarly-named internal tool ;)

Install

Pre-compiled executables exist for some platforms on the Github releases page.

On macOS, it can also be installed via Homebrew: brew install kubecfg

To build from source:

% PATH=$PATH:$GOPATH/bin
% go get github.com/bitnami/kubecfg

Quickstart

# Show generated YAML
% kubecfg show -o yaml examples/guestbook.jsonnet

# Create resources
% kubecfg update examples/guestbook.jsonnet

# Modify configuration (downgrade gb-frontend image)
% sed -i.bak '\,gcr.io/google-samples/gb-frontend,s/:v4/:v3/' examples/guestbook.jsonnet
# See differences vs server
% kubecfg diff examples/guestbook.jsonnet

# Update to new config
% kubecfg update examples/guestbook.jsonnet

# Clean up after demo
% kubecfg delete examples/guestbook.jsonnet

Features

  • Supports JSON, YAML or jsonnet files (by file suffix).
  • Best-effort sorts objects before updating, so that dependencies are pushed to the server before objects that refer to them.
  • Additional jsonnet builtin functions. See lib/kubecfg.libsonnet.
  • Optional "garbage collection" of objects removed from config (see --gc-tag).

Infrastructure-as-code Philosophy

The idea is to describe as much as possible about your configuration as files in version control (eg: git).

Changes to the configuration follow a regular review, approve, merge, etc code change workflow (github pull-requests, phabricator diffs, etc). At any point, the config in version control captures the entire desired-state, so the system can be easily recreated in a QA cluster or to recover from disaster.

Jsonnet

Kubecfg relies heavily on jsonnet to describe Kubernetes resources, and is really just a thin Kubernetes-specific wrapper around jsonnet evaluation. You should read the jsonnet tutorial, and skim the functions available in the jsonnet std library.

Community

Click here to sign up to the Kubernetes Slack org.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].