Commit Graph

15 Commits

Author SHA1 Message Date
Neon Vortex
d7bc188ee5 Reorganize to dedicated namespaces with automatic cleanup
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
**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>
2025-11-22 23:27:32 -05:00
Neon Vortex
066d6cae67 Fix Gotify notifications with correct API format
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
- 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>
2025-11-22 23:06:42 -05:00
Neon Vortex
2c619f86c9 Fix webhook listener to use alpine/k8s image with kubectl
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
- 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>
2025-11-22 22:53:45 -05:00
Neon Vortex
2c61efff72 Add complete webhook-based CI/CD with automatic builds and notifications
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
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>
2025-11-22 22:50:07 -05:00
Neon Vortex
e61dc3bd58 Fix build trigger container image to use Alpine-based image
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
- 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>
2025-11-22 22:02:01 -05:00
Neon Vortex
d919cbd263 Simplify CI/CD pipeline with CronJob-based build trigger
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
- 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>
2025-11-22 21:59:33 -05:00
Neon Vortex
473de53cff Add complete CI/CD pipeline with Tekton and Flux image automation
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
- Add Tekton pipeline and triggers for automated builds on git push
- Add Flux ImageRepository to track Harbor registry images
- Add Flux ImagePolicy for semantic versioning strategy
- Add Flux ImageUpdateAutomation to auto-update HelmRelease
- Update HelmRelease with image automation marker
- Add comprehensive CI/CD pipeline setup documentation

This enables automatic build and deployment when pushing to Gitea:
1. Gitea webhook triggers Tekton pipeline
2. Kaniko builds and pushes image to Harbor
3. Flux detects new image and updates deployment
4. Application automatically deploys to cluster

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-22 21:56:12 -05:00
Neon Vortex
67a6ae146f Add Flux CD configuration and update Neon Vortex HTML5 export
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
- Add Flux GitRepository and HelmRelease manifests for automated deployment
- Update Neon Vortex game files (HTML5 export with WASM optimization)
- Add Kubernetes manifests: Kaniko build job, MPD config, and Ingress
- Add MPD Docker configuration with improved settings

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-22 21:39:02 -05:00
Neon Vortex
ce8d9029c1 Fix Neon Vortex button input and add Jellyfin WAL mode
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
- 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>
2025-11-22 17:51:34 -05:00
Neon Vortex
5b52eb9999 Add comprehensive Godot HTML5 export guide and remove stub files
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
- 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
2025-11-22 14:34:00 -05:00
Neon Vortex
d3c424d6d7 Add favicon.ico and stub files to prevent 404 errors from scanners
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
2025-11-22 11:13:51 -05:00
Neon Vortex
45ed88a3cd Fix nginx config for index file with spaces
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
2025-11-21 20:03:28 -05:00
Neon Vortex
f947438a7d Fix nginx permission issue for non-root container
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
2025-11-21 20:00:42 -05:00
Neon Vortex
68d09fff18 Add Gitea Actions workflow for building and pushing Docker image
Some checks failed
Build and Push to Harbor / build-and-push (push) Has been cancelled
2025-11-21 19:53:50 -05:00
Neon Vortex
ce0f57c738 Initial commit: Neon Vortex application with Helm chart 2025-11-21 19:51:50 -05:00