Home
Softono

Argocd Homelab

Open source MIT HCL
61
Stars
3
Forks
18
Issues
0
Watchers
3 months
Last Commit

 About Argocd Homelab

GitOps driven homelab using ArgoCD

Platforms

Web Self-hosted Kubernetes

Languages

HCL

Links

Need Help Installing Argocd Homelab?

We provide expert installation service for this software. Our team will install, configure, and secure Argocd Homelab on your server. plans start at just $30.

Argocd Homelab

View on GitHub

Overview

GitOps driven homelab using ArgoCD with a flat repository structure.

Project Structure

.
├── .github/                   # Github related files
│   └── renovate.json5         # RenovateBot configuration
├── .vscode/                   # Visual Studio Code configs
│   ├── extensions.json        # Extension recomendations
│   └── settings.json          # Project specific settings
├── docs/                      # Documentation
│   ├── faq.md                 # Frequently Asked Questions
│   ├── network.md             # Networking details
│   └── setup.md               # Installation steps
├── pineapp/                   # Cluster managed by ArgoCD
│   └── $namespace/            # Directory per namespace
│       └── manifest.yaml      # Manifests relating to namespace.  AppOfApps
├── .gitignore                 # Ignored files list
└── README.md                  # This file

ArgoCD Structure

An ApplicationSet dynamically generates an Applications for each yaml file inside of the manifest directory. That Application is AppOfApps, mirroring the filename that it was generated from. That AppOfApps may contain child Application resources for deploying Helm charts.

Logical Rendered Example
erDiagram
    ApplicationSet ||--|{ AppOfApps : "each $cluster/$namespace/manifest.yaml generates"
    AppOfApps ||--o{ Application : "may contain additional"
flowchart TD
    A[ApplicationSet] -----> B(pineapp/kube-system/manifest.yaml)
    B -----> D[coredns]
    B -----> E[cilium]
    B -----> F[metrics-server]

Docs

todo

  • figure our externaldns record with cloudflared tunnel. wants to be secret