No description
Find a file
2026-01-29 18:33:47 -05:00
.gitea/workflows feat: add actions 2026-01-07 22:22:30 -05:00
apps chore(deps): update helm release signoz to v0.110.0 2026-01-29 05:03:38 +00:00
public feat: add public oidc keys 2026-01-11 18:43:39 -05:00
appset-helm.yaml feat: mv appset helm + add l2 announcement 2025-12-26 17:46:02 -05:00
appset-kustomize.yaml fix: the names 2025-12-22 16:31:46 -05:00
cilium.yaml feat: the things that we need 2025-12-20 05:56:27 -05:00
README.md docs: update readme 2025-12-23 14:25:09 -05:00
renovate.json chore(config): migrate config renovate.json 2026-01-08 03:05:53 +00:00
talos-patch.yaml fix: updated 2025-12-20 19:46:38 -05:00

nuc-talos

Single-node Talos Kubernetes cluster for TheCodeDom infrastructure.

Prerequisites

Bootstrap

# Generate node configs
talosctl gen config nuc https://<endpoint>:6443 --config-patch @talos-patch.yaml

# Apply to node
talosctl apply-config --nodes <ip> --file controlplane.yaml

# Bootstrap cluster
talosctl bootstrap --nodes <ip>

# Get kubeconfig
talosctl kubeconfig --nodes <ip>

# Deploy ArgoCD
kubectl apply -k argocd_bootstrap/

Structure

apps/
├── helm/           # Helm release definitions (picked up by ApplicationSet)
└── kustomizations/ # Kustomize apps with KSOPS secrets
argocd_bootstrap/   # ArgoCD core-install with KSOPS support
talos-patch.yaml    # Talos machine config patches

Adding Applications

Helm chart: Create apps/helm/<name>.yaml:

name: my-app
namespace: my-app
repoURL: https://charts.example.com
chart: my-chart
targetRevision: 1.0.0
autoSync: true
values: |
  key: value

Kustomization: Create apps/kustomizations/<name>/kustomization.yaml with resources and optional KSOPS generators.

Secrets

Encrypt with SOPS before committing:

sops -e -i apps/kustomizations/<app>/secret.yaml