No description
Find a file Use this template
2025-08-23 00:41:54 +02:00
.config inital commit 2025-06-14 18:33:44 +02:00
.scripts fix, docs: fixed scripts and README 2025-08-19 17:25:51 +02:00
.templates feat: added decryption and substitution as in #1 2025-08-23 00:41:54 +02:00
README.md fix, docs: fixed scripts and README 2025-08-19 17:25:51 +02:00
taskfile.yaml inital commit 2025-06-14 18:33:44 +02:00

kube-infra

This repository contains all infrastructure components needed to run Kubernetes. It is referenced by kube-clusters which holds the configuration for clusters.

Structure

This repository is divided into two parts:

  1. Components: These are the individual infrastructure components that can be used in different clusters.
  2. Collections: These are predefined sets of components that can be used to quickly set up a cluster.

Usage

To use components or collections from this repository, there is a script in the kube-clusters repository which let you select the components and collections you want to use in your cluster.

Optionally you can just reference the components or collections directly in your cluster configuration.

---
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
  name: kube-infra-cilium
  namespace: infra
spec:
  interval: 5m
  sourceRef:
    kind: GitRepository
    name: kube-infra
  prune: true
  path: ./components/cilium

Adding Components and Collections

To add a new component or a new collection, you first need to run the seup script via the task command. Then you can just place the necessary Kubernetes manifests in the newly created directories.

Dont forget to reference all files in the kustomization.yaml file (e.g. with kustomize create --autodetect --recursive.)

To add a new component, run:

task add-component

To add a new collection, run:

task add-collection

The collection manifests are automatically generated. To modify a collection, just run:

task edit-collection