Commit Graph

4 Commits

Author SHA1 Message Date
Greg
524f44b023 fix: Configure webhook handler to use in-cluster service account
- Remove kubeconfig file mounting to use in-cluster service account
- Remove Docker socket mount (not needed for Knative deployments)
- Fix Kubernetes API connectivity issues
- Webhook deployment now working successfully with proper RBAC
2025-07-01 12:11:50 -07:00
Greg
6f57651f92 fix: Update webhook handler to skip Docker commands and map environment names
- Remove Docker pull step (Knative handles image pulling)
- Add environment name mapping (development -> dev, production -> prod)
- Add test files to .gitignore to exclude PII
- Webhook signature validation now working correctly
2025-07-01 12:03:23 -07:00
Greg
4a1ee54c6f fix: Use compact JSON payload to avoid signature validation issues
- Removed indentation/whitespace from JSON payload in workflow
- Should fix HMAC signature mismatch with webhook handler
- Webhook secrets are now synchronized between GitHub and cluster
2025-07-01 11:24:37 -07:00
Greg
63b53dfc1b feat: Implement webhook-based deployment for k3s behind NAT
- Replace SSH/kubectl deployment with secure webhook-based approach
- Add comprehensive webhook handler with HMAC signature verification
- Support blue-green deployment strategy for production
- Implement auto-promotion pipeline: dev → staging → prod
- Add health checks using canonical Knative domains only
- Include complete deployment documentation and setup scripts

Changes:
- Updated deploy-dev.yml, deploy-staging.yml, deploy-prod.yml workflows
- Added webhook handler Python script with Flask API
- Created Kubernetes manifests for webhook system deployment
- Added ingress and service configuration for external access
- Created setup script for automated webhook system installation
- Documented complete webhook-based deployment guide

Perfect for k3s clusters behind NAT without direct API access.
2025-06-30 23:41:53 -07:00