https://github.com/thaddeuscleo/cleoverse-gitops
FluxCD Monorepo for my home cluster
https://github.com/thaddeuscleo/cleoverse-gitops
fluxcd gitops k3s k8s-at-home kubernetes kubesearch opentofu prometheus terraform
Last synced: 2 months ago
JSON representation
FluxCD Monorepo for my home cluster
- Host: GitHub
- URL: https://github.com/thaddeuscleo/cleoverse-gitops
- Owner: thaddeuscleo
- Created: 2023-11-13T13:16:07.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2026-01-11T17:12:20.000Z (2 months ago)
- Last Synced: 2026-01-11T20:15:34.762Z (2 months ago)
- Topics: fluxcd, gitops, k3s, k8s-at-home, kubernetes, kubesearch, opentofu, prometheus, terraform
- Language: Makefile
- Homepage:
- Size: 725 KB
- Stars: 7
- Watchers: 1
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
### My Home Operations Repository :octocat:
_... managed with Flux_ 🤖
## 📖 Overview
This is a mono repository for my home infrastructure and Kubernetes cluster. I try to adhere to Infrastructure as Code (IaC) and GitOps practices using tools like [Ansible](https://www.ansible.com/), [Terraform](https://www.terraform.io/), [Kubernetes](https://kubernetes.io/), [Flux](https://github.com/fluxcd/flux2), [Renovate](https://github.com/renovatebot/renovate), and [GitHub Actions](https://github.com/features/actions).
### GitOps
[Flux](https://github.com/fluxcd/flux2) watches the clusters in my [kubernetes](./kubernetes/) folder (see Directories below) and makes the changes to my clusters based on the state of my Git repository.
The way Flux works for me here is it will recursively search the `clusters/${cluster}/` folder until it finds the most top level `kustomization.yaml` per directory and then apply all the resources listed in it. That aforementioned `kustomization.yaml` will generally only have a namespace resource and one or many Flux kustomizations (`ks.yaml`). Under the control of those Flux kustomizations there will be a `HelmRelease` or other resources related to the application which will be applied.
To Encrypt the secret using SOPS
```
sops -e -i 'file-name.sops.yaml'
```
To Dencrypt the secret using SOPS
```
sops -d -i 'file-name.sops.yaml'
```