**Namespace Structure:**
- neonvortex: Application deployment and webhook listener
- flux-builds: Build jobs with automatic cleanup
- flux-system: Flux CD control plane (unchanged)
**Automatic Cleanup:**
- Build jobs: 30-minute TTL after completion
- Cleanup CronJob: Runs every 30 minutes
- Keeps last 10 successful builds
- Deletes failed jobs older than 1 hour
- Removes all jobs older than 24 hours
**Changes:**
- Moved HelmRelease from default to neonvortex namespace
- Moved build jobs from default to flux-builds namespace
- Updated webhook listener to create jobs in flux-builds
- Updated Flux alerts to monitor new namespace
- Cleaned up all resources from default namespace
- Added dedicated ServiceAccounts and RBAC per namespace
**Benefits:**
- Clean namespace separation for better organization
- Automatic job cleanup prevents resource accumulation
- Build history maintained (last 10 successful builds)
- Improved monitoring and troubleshooting
- Default namespace is now clean
Comprehensive migration guide in NAMESPACE_MIGRATION_GUIDE.md
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Use /message endpoint with form data instead of JSON
- Update notification provider to use correct Gotify URL
- Fix priority levels for different notification types
- Test notifications should now work properly
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Switch from alpine:latest to alpine/k8s:1.28.13
- Ensures kubectl is available for job creation
- Webhook now successfully triggers build jobs
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit implements a full webhook-triggered CI/CD pipeline:
**Flux Components:**
- Flux Receiver for Gitea webhooks (generic type, NodePort 30090)
- Notification Provider for notify.caffeinetux.com
- Alerts for git updates, builds, and deployments
**Build Automation:**
- Webhook listener deployment that triggers on git push
- Automatic Kaniko build jobs with git metadata
- Images tagged with both 'latest' and commit SHA
- Build notifications sent at start and completion
**Workflow:**
1. Push to Gitea → Webhooks trigger Flux receiver & build listener
2. Build listener creates Kaniko job with commit info
3. Kaniko builds and pushes to Harbor (latest + SHA tags)
4. Flux auto-deploys latest image to cluster
5. Notifications sent to notify.caffeinetux.com at each stage
**Configuration:**
- Token: APMvTuncQJmm6vd
- Webhook path: /hook/548969c2b24c717fe9e5af8c78ddfeec40d3024c270c7e85ac8f986259aeec9a
- Build trigger: http://<node-ip>:30091/webhook
- Comprehensive setup documentation in WEBHOOK_SETUP_GUIDE.md
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Switch from bitnami/kubectl to alpine/k8s for proper package manager
- Add curl to dependencies for potential future webhook support
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add CronJob that polls git repository every 2 minutes for changes
- Automatically triggers Kaniko build jobs when new commits detected
- Images tagged with both 'latest' and 'v1.0.<commit-sha>' for versioning
- Remove complex Tekton/Flux image automation dependencies
- Add comprehensive simple CI/CD setup documentation
This provides a reliable, simple CI/CD pipeline:
1. Push code to Gitea
2. CronJob detects changes within 2 minutes
3. Kaniko builds and pushes to Harbor
4. Flux deploys latest image automatically
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Comment out CORS headers in nginx.conf to fix button input blocking
- Add WAL enable job for Jellyfin to resolve database locking issues
- Include comprehensive troubleshooting documentation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Created detailed best practices guide for Godot HTML5/Web exports
- Removed empty stub files (they mask problems rather than solving them)
- Kept favicon.ico as it's a legitimate browser requirement
- Guide covers export config, optimization, deployment, and troubleshooting