All Projects → kbst → kbst

kbst / kbst

Licence: Apache-2.0 License
Kubestack framework CLI

Programming Languages

go
31211 projects - #10 most used programming language
HCL
1544 projects

Projects that are alternatives of or similar to kbst

nebulous
The Kubefirst Open Source Platform
Stars: ✭ 122 (+369.23%)
Mutual labels:  gitops
declarative-openshift
Working examples of manifests for openshift for use in a declarative management strategy.
Stars: ✭ 17 (-34.62%)
Mutual labels:  gitops
argocd-vault-plugin
An Argo CD plugin to retrieve secrets from Secret Management tools and inject them into Kubernetes secrets
Stars: ✭ 404 (+1453.85%)
Mutual labels:  gitops
gitops-k8s
Declarative pull-based GitOps repository representing the state of a Kubernetes cluster
Stars: ✭ 82 (+215.38%)
Mutual labels:  gitops
Book k8sInfra
< 컨테이너 인프라 환경 구축을 위한 쿠버네티스/도커 >
Stars: ✭ 176 (+576.92%)
Mutual labels:  gitops
k3s-homeops-ansible
Bootstrap a k3s cluster on top of Ubuntu 20.04
Stars: ✭ 47 (+80.77%)
Mutual labels:  gitops
gimlet-stack
Bootstrap curated Kubernetes stacks. Logging, metrics, ingress and more - delivered with gitops.
Stars: ✭ 12 (-53.85%)
Mutual labels:  gitops
k3s-gitops
My home Kubernetes (k3s) cluster managed by GitOps (Flux)
Stars: ✭ 26 (+0%)
Mutual labels:  gitops
playbook
Este repositório é um guia simples para aprendizado de alguns conceitos e tecnologias usadas com Containers, Orquestração e Observabilidade.
Stars: ✭ 58 (+123.08%)
Mutual labels:  gitops
k3s-gitops
GitOps principles to define kubernetes cluster state via code
Stars: ✭ 103 (+296.15%)
Mutual labels:  gitops
k8s-gitops
Homelab GitOps repository. Cluster definition state via code.
Stars: ✭ 47 (+80.77%)
Mutual labels:  gitops
bump-everywhere
🚀 Automate versioning, changelog creation, README updates and GitHub releases using GitHub Actions,npm, docker or bash.
Stars: ✭ 24 (-7.69%)
Mutual labels:  gitops
okd-lab
Controlled Environment for OKD4 experiments
Stars: ✭ 24 (-7.69%)
Mutual labels:  gitops
CloudGenesis
Automation for deploying & deleting CloudFormation stacks sourced from a Git repo
Stars: ✭ 34 (+30.77%)
Mutual labels:  gitops
gitops-build-lib
Jenkins pipeline shared library for automating deployments via GitOps
Stars: ✭ 23 (-11.54%)
Mutual labels:  gitops
gitops-app-distribution
GitOps workflow for managing app delivery on multiple clusters
Stars: ✭ 22 (-15.38%)
Mutual labels:  gitops
gitops-playground
Reproducible infrastructure to showcase GitOps workflows and evaluate different GitOps Operators on Kubernetes
Stars: ✭ 77 (+196.15%)
Mutual labels:  gitops
flytectl
A cross platform CLI for Flyte. Written in Golang. Offers an intuitive interface to Flyte https://docs.flyte.org/projects/flytectl/en/latest/
Stars: ✭ 23 (-11.54%)
Mutual labels:  gitops
flux-kustomize-example
Flux v1: Example of Flux using manifest generation with Kustomize
Stars: ✭ 71 (+173.08%)
Mutual labels:  gitops
cicd-demo
A demo repository that shows CI/CD integration using DroneCI + ArgoCD + Kubernetes.
Stars: ✭ 36 (+38.46%)
Mutual labels:  gitops

Kubestack, The Open Source Gitops Framework

Kubestack CLI

CLI for the Kubestack GitOps Framework

Status GitHub Issues GitHub Pull Requests

GitHub Repo stars Twitter Follow

Join Our Contributors!

Introduction

kbst is an all-in-one CLI to scaffold your Infrastructure as Code repository and deploy your entire platform stack locally for faster iteration.

This CLI is part of the Kubestack Gitops framework for managing Kubernetes services based on Terraform and Kustomize.

kbst improves the GitOps developer experience by making a number of common tasks easier.

The CLI never makes any changes to any cloud environment. All changes are exclusively to the local environment and working directory.

Features

  • Scaffolds an Infrastructure as Code (IaC) repository ready to deploy to your target cloud environment
  • Provisions a local environment mirroring your cloud infrastructure using Kubernetes in Docker (KinD)
  • Watches for changes in configuration files and re-deploys parts of infrastructure to immediately reflact updates
  • Provides Docker container including all tooling for interacting manually your cloud environment as needed

Installing kbst

Linux

# Download the latest release
curl -LO "https://github.com/kbst/kbst/releases/download/$(curl -s https://www.kubestack.com/cli-latest.txt)/kbst_linux_amd64.zip"

# Extract the binary into your PATH e.g. /usr/local/bin
sudo unzip -d /usr/local/bin/ kbst_linux_amd64.zip kbst

# Verify the binary works
kbst --version

MacOS

# Download the latest release
curl -LO "https://github.com/kbst/kbst/releases/download/$(curl -s https://www.kubestack.com/cli-latest.txt)/kbst_darwin_amd64.zip"

# Extract the binary into your PATH e.g. /usr/local/bin
sudo unzip -d /usr/local/bin/ kbst_darwin_amd64.zip kbst

# Verify the binary works
kbst --version

Windows

Windows instructions require WSL2 and Docker Desktop for Windows with the WSL2 backend.

# Download the latest release
curl -LO "https://github.com/kbst/kbst/releases/download/$(curl -s https://www.kubestack.com/cli-latest.txt)/kbst_linux_amd64.zip"

# Extract the binary into your PATH e.g. /usr/local/bin
sudo unzip -d /usr/local/bin/ kbst_linux_amd64.zip kbst

# Verify the binary works
kbst --version

Build from Source

# Clone the repository
git clone https://github.com/cctechwiz-forks/kbst.git

# Enter repository directory
cd kbst

# Install binary (requires you $GOPATH/bin to be on your system $PATH)
make install

Using the kbst CLI

kbst has four commands:

  • help - Help about any command
  • local - Start a localhost development environment
  • manifest - Add, update, and remove services from the catalog
  • repository - Create and change Kubestack repositories

kbst local has two sub-commands:

  • apply - Watch and apply changes to the localhost development environment
  • destroy - Destroy the localhost development environment

kbst manifest has three sub-commands:

  • install - Install and vendor a manifest from the catalog
  • remove - Remove a vendored manifest from all environments
  • update - Update vendored manifests from the catalog

kbst repository only has a single sub-command:

  • init - Scaffold a new repository

Getting Started with Kubestack

For the easiest way to get started, visit the official Kubestack quickstart. This tutorial will help you get started with the Kubestack GitOps framework. It is divided into three steps.

  1. Develop Locally
    • Scaffold your repository and tweak your config in a local development environment that simulates your actual cloud configuration using Kubernetes in Docker (KinD).
  2. Provision Infrastructure
    • Set-up cloud prerequisites and bootstrap Kubestack's environment and clusters on your cloud provider for the first time.
  3. Set-up Automation
    • Integrate CI/CD to automate changes following Kubestack's GitOps workflow.

Getting Help

Official Documentation
Refer to the official documentation for a deeper dive into how to use and configure Kubetack.

Community Help
If you have any questions while following the tutorial, join the #kubestack channel on the Kubernetes community. To create an account request an invitation.

Professional Services
For organizations interested in accelerating their GitOps journey, professional services are available.

Contributing

Contributions to the Kubestack framework are welcome and encouraged. Before contributing, please read the Contributing and Code of Conduct Guidelines.

One super simple way to contribute to the success of this project is to give it a star.

GitHub Repo stars

Kubestack Repositories

  • kbst/terraform-kubestack
    • Terraform GitOps Framework - Everything you need to build reliable automation for AKS, EKS and GKE Kubernetes clusters in one free and open-source framework.
  • kbst/kbst (this repository)
    • Kubestack Framework CLI - All-in-one CLI to scaffold your Infrastructure as Code repository and deploy your entire platform stack locally for faster iteration.
  • kbst/terraform-provider-kustomization
    • Kustomize Terraform Provider - A Kubestack maintained Terraform provider for Kustomize, available in the Terraform registry.
  • kbst/catalog
    • Catalog of cluster services as Kustomize bases - Continuously tested and updated Kubernetes services, installed and customizable using native Terraform syntax.
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].