feat(flux): add FluxCD GitOps configuration

Add Flux GitRepository and Kustomization resources to enable
automated cluster synchronization from Gitea repository.

- GitRepository: monitors ssh://git@10.0.1.10/0xWheatyz/Talos
- Kustomization: syncs testing1/first-cluster/ to cluster
- Interval: 1m for git polling, 5m for reconciliation
- Prune enabled for automatic cleanup

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
0xWheatyz 2026-03-04 02:11:29 +00:00
parent 3ae15ffdfe
commit f8e5b20381
3 changed files with 48 additions and 0 deletions

View File

@ -0,0 +1,13 @@
---
apiVersion: source.toolkit.fluxcd.io/v1
kind: GitRepository
metadata:
name: talos-gitops
namespace: flux-system
spec:
interval: 1m
url: ssh://git@10.0.1.10/0xWheatyz/Talos
ref:
branch: main
secretRef:
name: gitea-ssh

View File

@ -0,0 +1,30 @@
---
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: cluster-sync
namespace: flux-system
spec:
interval: 5m
path: ./testing1/first-cluster
prune: true
sourceRef:
kind: GitRepository
name: talos-gitops
healthChecks:
- apiVersion: apps/v1
kind: Deployment
namespace: flux-system
name: helm-controller
- apiVersion: apps/v1
kind: Deployment
namespace: flux-system
name: kustomize-controller
- apiVersion: apps/v1
kind: Deployment
namespace: flux-system
name: notification-controller
- apiVersion: apps/v1
kind: Deployment
namespace: flux-system
name: source-controller

View File

@ -0,0 +1,5 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- gitrepository.yaml
- kustomization-sync.yaml