You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nold 50254cceec Add: AppProject 1 year ago
bin Removed old stuff 1 year ago
docs Update(docs) 1 year ago
manifests Add: Docs 1 year ago
templates Add: AppProject 1 year ago
values.d Add: drone.io 1 year ago
.drone.yml Add: drone.yaml 1 year ago
.gitignore Add: Docs 1 year ago
Chart.yaml Update: Docs, functions, examples, ... 1 year ago
Makefile Removed unused Dockerfile & Makefile definitions 1 year ago
README.md Fix: Build Docs & README 1 year ago
mkdocs.yml Add: Docs 1 year ago
values.yaml Add: AppProject 1 year ago

README.md

Heqet

Heqet (Egyptian ḥqt, also ḥqtyt "Heqtit") is an Egyptian goddess of fertility.

Heqet is my attempt to make Kubernetes GitOps Deployments as easy as possible. It reduces the need of configuration by generating the required Application definitions for you. Heqet heavily relies on a Helm-Chart which will generate all applications, namespaces & more using ArgoCDs App-of-Apps-Pattern.

Keyfeatures

  • Easy Setup [Sane Kubernetes cluster + PVC-StorageClass]
  • Easy application definition & configuration
  • Follows the GitOps principles
  • Deploy a whole application environment or cluster from a singe git-repo

This project is still in a very early stage of development, but feel free to try it out & contribute!

Components & Configuration

Core component is ArgoCD which will deploy Heqet & also your apps! All you need is a git-repo & k8s cluster.

The heqet Helm-Chart will generate ArgoCD Applications, namespaces and if required vault Secrets. All you need to do if add your Helm-Application to heqet's values.yaml.

If more configuration values are required, simply throw your applications values.yaml into heqets values.d folder, named as the application [e.g. values.d/argocd.yaml.

Docs

Check out the full documentation here: Heqet Docs

Installation

Installing heqet can't be simpler, after configuring your apps, argocd and pushing it to your git repo:

  1. Configure manifests/heqet-apps.yaml to match your Setup
  2. kubectl apply -f manifests/argocd.yaml
  3. kubectl apply -f manifests/heqet-apps.yaml

ArgoCD will start and bootstrap heqet.

Generators

Heqet contains a "generators" feature which will create additional resources for you. Currently only one generator is implemented.

VaultSecret

The VaultSecret generator will create VaultSecret for the secrets specified in secrets. It's based on the vault-secret-operator.

Custom Resource Definitions

CRDs might be required before applying application configuration. If so, copy the crd.yaml into heqets templates/crds-Directory.

Full Example

Check out the test-Branch of this repo for my current testing setup.