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>
This commit is contained in:
Neon Vortex
2025-11-22 21:59:33 -05:00
parent 473de53cff
commit d919cbd263
6 changed files with 550 additions and 2 deletions

47
flux-receiver.yaml Normal file
View File

@@ -0,0 +1,47 @@
---
apiVersion: v1
kind: Secret
metadata:
name: gitea-webhook-token
namespace: flux-system
type: Opaque
stringData:
token: "change-me-to-random-string"
---
apiVersion: notification.toolkit.fluxcd.io/v1
kind: Receiver
metadata:
name: neon-vortex-receiver
namespace: flux-system
spec:
type: gitea
events:
- "ping"
- "push"
secretRef:
name: gitea-webhook-token
resources:
- apiVersion: source.toolkit.fluxcd.io/v1
kind: GitRepository
name: neon-vortex
namespace: flux-system
- apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
name: neon-vortex-build
namespace: flux-system
---
apiVersion: v1
kind: Service
metadata:
name: receiver
namespace: flux-system
spec:
type: NodePort
selector:
app: notification-controller
ports:
- name: http
port: 80
protocol: TCP
targetPort: 9292
nodePort: 30082