Commit Graph

12 Commits

Author SHA1 Message Date
a673a1c40b fix(gitea-runner): use act-compatible images with Docker support
Update Gitea Actions runner to use catthehacker/ubuntu images which
are specifically designed for GitHub Actions/Gitea Actions and include
Docker CLI and common tools pre-installed.

Changes:
- Replace node:20-bullseye labels with catthehacker/ubuntu:act-latest
- Add ubuntu-22.04 label pointing to act-22.04 image
- Configure DOCKER_* environment variables to be passed to jobs

These images are the standard for act (local GitHub Actions runner)
and Gitea Actions, providing better compatibility with workflows
that need Docker access.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-04 03:22:59 +00:00
c58883a91f fix: updated site url 2026-03-04 02:27:26 +00:00
ee229aceb1 impl(runner): gitea runner url 2026-03-04 02:25:11 +00:00
f8e5b20381 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>
2026-03-04 02:11:29 +00:00
af0403d330 feat(apps): add Gitea Git service with container registry
Deploy Gitea 1.22 with integrated container registry and CI/CD runner.

Features:
- Git repository hosting
- Container registry on port 5000
- Gitea Act Runner for CI/CD (GitHub Actions compatible)
- LoadBalancer service at 10.0.1.10 (HTTP:80, SSH:22)
- NFS-backed persistent storage (50Gi data, 5Gi config)
- Automatic failover across control plane nodes

Access:
- Web UI: http://10.0.1.10
- SSH: ssh://10.0.1.10:22
- Registry: 10.0.1.10:5000

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

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-04 01:47:12 +00:00
09649579d0 feat(networking): add MetalLB load balancer
Deploy MetalLB v0.14.9 for bare-metal load balancing with L2 mode.

Configuration:
- IP address pool: 10.0.1.10-10.0.1.20
- L2 advertisement on ens18, eth0, enp* interfaces
- Runs on all control plane nodes with automatic failover
- Enables LoadBalancer service type support

This allows each service to have its own dedicated IP address
instead of using NodePort with random high ports.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-04 01:47:03 +00:00
7bc332188c feat(storage): add NFS storage provisioner
Configure nfs-subdir-external-provisioner for persistent storage
backed by NFS server at 10.0.0.57:/mnt/NAS/vmstorage.

Features:
- Dynamic provisioning of PersistentVolumes
- Set as default storage class
- Supports ReadWriteMany access mode
- Prepares cluster for diskless PXE boot nodes

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

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-04 01:46:51 +00:00
7b11409201 fix(talos): enable MetalLB on control plane nodes
Remove node.kubernetes.io/exclude-from-external-load-balancers label
from control plane nodes to allow MetalLB speakers to announce
LoadBalancer IPs on all nodes. This enables proper L2 advertisement
and automatic failover for services.

Changed:
- Commented out nodeLabels section in all three controlplane configs
- Applied to nodes 10.0.1.3, 10.0.1.4, and 10.0.1.5

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

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-04 01:46:41 +00:00
361d22cd12 chore: stale file removed 2025-11-23 21:14:56 +00:00
b97a9f6e8c chore: removed stale files 2025-11-23 21:14:11 +00:00
db6ffbbc56 feat: new cluster created, currently runs nginx 2025-11-23 21:13:27 +00:00
39f579d781 feat: new testing cluster with boilerplate code 2025-11-14 23:09:08 +00:00