Skip to content
Snippets Groups Projects
README.md 2.02 KiB
Newer Older
Maarten de Waard's avatar
Maarten de Waard committed
This folder contains folders that can be reconciled with Flux v2. If you want to
add this repository as a Flux 2 kustomization, first add the `cluster/base`
directory as a kustomization in flux, then add `cluster/optional/X` if you want
any of the optional components.


## Folder structure

```
flux2
├── apps     # Resources to install specific applications
│   ├── monitoring  # Prometheus, Grafana and log aggregation
│   ├── nextcloud   # Nextcloud
│   ├── rocketchat  # RocketChat
│   ├── velero      # Velero, backup system
│   └── wordpress   # WordPress CMS
├── cluster  # Folders that can be added as Flux Kustomization
│   ├── base        # First kustomization that should be applied, adds
│   │   │           # repositories, LE, Nginx, single sign-on, 
│   │   ├── infrastructure.yaml  # Applies `flux2/infrastructure` folder
│   │   ├── core.yaml            # Applies `flux2/core/` folder
│   │   └── monitoring.yaml      # Applies `flux2/apps/monitoring` folder
│   └── optional    # Kustomizations that can be applied to add applications
│       └── ... # 1 folder per app in `apps/`
├── core     # Resources that need variables from `oas-cluster-variables` secret
│   └── base
│       ├── cluster-issuer # `cert-manager` is part of `infrastructure`, this only adds the cluster-issuer
│       ├── metallb        # Load balancer
│       └── single-sign-on # Single sign-on system
└── infrastructure  # First to be installed, essential OAS resources
    ├── cert-manager           # Let's Encrypt certificate generator
    ├── local-path-provisioner # (default) storage class to safe files on disk
    ├── namespaces             # namespaces used by OAS
    ├── nginx    # Ingress
    ├── secrets  # Auto-generated secrets for applications
    └── sources  # Helm repositories needed for HelmReleases from other folders
```