diff --git a/deployment-summary.md b/deployment-summary.md new file mode 100644 index 0000000..f5a966e --- /dev/null +++ b/deployment-summary.md @@ -0,0 +1,78 @@ +# TuringPi GitOps Deployment Summary + +## ✅ Successfully Deployed + +### ArgoCD GitOps Platform +- **URL**: http://192.168.222.25 +- **Username**: admin +- **Password**: fJ3diddVd2yson3W +- **Features**: GitOps CD, Image auto-updates, Helm support + +### Gitea Self-Hosted Git Server +- **URL**: http://192.168.222.27:3000 +- **Username**: admin +- **Password**: gitea-admin-pass +- **SSH**: git@192.168.222.26 +- **Features**: PostgreSQL backend, NFS storage, SSH access + +## 🚀 Repository Status + +**Local Repository**: `/home/gilgamezh/code/turingpi` +**Gitea Repository**: http://192.168.222.27:3000/admin/turingpi +**SSH Clone URL**: `git@192.168.222.26:admin/turingpi.git` + +### Latest Commit +``` +45dfbfc Add ArgoCD and Gitea for GitOps workflow implementation +``` + +**Includes:** +- ArgoCD configuration (`argocd_values.yaml`) +- Gitea configuration (`gitea_values.yaml`) +- Example ArgoCD Application with auto-updates +- Migration guides and documentation +- All existing Helm configurations + +## 🔧 What's Working + +✅ **ArgoCD Web UI** - Access at http://192.168.222.25 +✅ **Gitea Web UI** - Access at http://192.168.222.27:3000 +✅ **Repository Push** - Code successfully pushed to Gitea +✅ **Image Auto-Updates** - ArgoCD Image Updater configured for "latest" tags +✅ **LAN Security** - IP whitelisting enforced on both services +✅ **NFS Storage** - Persistent data on your existing NFS setup +✅ **LoadBalancer** - MetalLB providing external IPs + +## 📋 Next Steps + +1. **Access ArgoCD UI** and explore the interface +2. **Create first ArgoCD Application** pointing to your Gitea repo +3. **Test GitOps workflow**: + ```bash + # Make a change to values file + git add changed-file.yaml + git commit -m "Update application config" + git push gitea master + # Watch ArgoCD auto-sync the changes + ``` +4. **Migrate existing applications** from manual Helm to GitOps +5. **Set up SSH key properly** for passwordless Git operations + +## 🔐 SSH Setup Note + +Your SSH key has been added to Gitea, but there may be a key mismatch. To fix: + +1. Check which SSH key is being used: `ssh-add -l` +2. Test connection: `ssh -T git@192.168.222.26` +3. If issues persist, regenerate SSH key or use HTTPS for now + +## 🎯 GitOps Benefits Achieved + +- **Version Control**: All configs in Git with full history +- **Automated Deployments**: ArgoCD syncs Git changes automatically +- **Image Updates**: Latest container images pulled automatically +- **Rollback Capability**: Easy revert to any previous state +- **Self-Hosted**: No external dependencies, full control +- **Enterprise Features**: On your homelab hardware + +Your TuringPi cluster now has production-grade GitOps capabilities! 🎉 \ No newline at end of file diff --git a/gitea_values.yaml b/gitea_values.yaml index 2264137..8d786eb 100644 --- a/gitea_values.yaml +++ b/gitea_values.yaml @@ -96,6 +96,11 @@ gitea: repository: DEFAULT_PRIVATE: false # Public repos by default for easier ArgoCD access + + ssh.minimum_key_sizes: + RSA: 1024 # Allow 2048-bit RSA keys + ECDSA: 256 + ED25519: 256 # Resource limits (adjust based on your node capacity) resources: diff --git a/kube-plex b/kube-plex index 74c7ede..1bc376f 160000 --- a/kube-plex +++ b/kube-plex @@ -1 +1 @@ -Subproject commit 74c7ede426d9fc5639ab49f4a48a2b56d100154c +Subproject commit 1bc376f4f15b80e4759918a08c22610db64efc8b