🧹 PII Cleanup & Security:
- Remove all hardcoded domains (darknex.us, hndrx.co)
- Remove all hardcoded emails (admin@ references)
- Replace all personal info with environment variables
- Repository now 100% generic and reusable
🚀 Fully Automatic Pipeline:
- Pipeline now runs automatically develop → staging → production
- No manual intervention required for production promotions
- Auto-promotion triggers after successful tests
- All workflows use commit-specific image tags
🔧 Environment Variables:
- All manifests use ${VARIABLE_NAME} syntax
- All scripts source from .env file
- GitHub Actions use secrets for sensitive data
- Complete .env.example template provided
📚 Documentation:
- New comprehensive WORKFLOWS.md with pipeline details
- New PIPELINE_QUICK_REFERENCE.md for quick reference
- Updated all docs to use generic placeholders
- Added security/privacy section to README
🔐 Security Enhancements:
- Updated .gitignore for all sensitive files
- Created PII verification script (verify-pii-removal.sh)
- Created cleanup automation script (cleanup-pii.sh)
- Repository verified PII-free and production-ready
BREAKING: Repository now requires .env configuration
- Copy .env.example to .env and configure for your environment
- Set GitHub repository secrets for CI/CD workflows
- All deployments now use environment-specific configuration
- Change smoke tests to trigger after deployments complete (not on push)
- Auto-promotion now depends on smoke test success (not duplicate testing)
- Promotion to production depends on staging smoke tests
- Eliminates testing previous deployments instead of new ones
- Creates logical flow: deploy → test → promote
- Add 'contents: write' and 'actions: write' permissions to auto-promote workflow
- This should fix the 'Resource not accessible by integration' error
- Update to v2.0.3 to test the fixed auto-promotion pipeline
The auto-promotion workflow needs write permissions to merge branches
and trigger other workflows in the repository.
- Remove all custom domain SSL testing and health checks
- Use only canonical Knative domains for all testing
- Update all workflows to use domain secrets for health checks
- Remove kubectl dependencies from deployment workflows
- Update index.html to v2.0.2 for testing canonical domain workflow
- Simplify smoke tests to focus on Knative canonical domains only
- Clean up auto-promotion summaries to remove SSL references
All workflows now test only the canonical Knative domains and avoid
custom domain complexity for a cleaner, more reliable pipeline.
🚀 **New Branching Strategy:**
- develop → triggers dev deployment → auto-promotes to staging branch
- staging → triggers staging deployment → manual approval → promotes to main branch
- main → triggers production deployment
📝 **Workflow Changes:**
- deploy-dev.yml: Now triggers on develop branch
- deploy-staging.yml: Now triggers on staging branch push
- deploy-prod.yml: Now triggers on main branch push
- auto-promote.yml: Tests dev → merges develop to staging branch
- promote-to-production.yml: Tests staging → requires approval → merges staging to main
- build-image.yml: Now builds on all branches (main, develop, staging)
🎯 **Auto-Promotion Flow:**
1. Push to develop → Deploy to dev → Test → Auto-merge to staging
2. Staging deployment → Test → Manual approval → Auto-merge to main
3. Main deployment → Production live!
This provides proper separation between environments with appropriate gates.
✨ Improvements:
- Prioritize canonical domain testing over custom domains
- Add fallback testing for both canonical and custom domains
- More reliable smoke tests using direct Knative service URLs
- Separate performance testing for canonical vs custom domains
- Enhanced auto-promotion pipeline with canonical domain validation
🧪 Testing Strategy:
- Primary: Test canonical domains (game-2048-*.*.wa.darknex.us)
- Secondary: Verify custom domains work via redirects
- Fallback: Test both domains in smoke tests for reliability
🔗 Canonical Domains:
- Dev: game-2048-dev.game-2048-dev.dev.wa.darknex.us
- Staging: game-2048-staging.game-2048-staging.staging.wa.darknex.us
- Prod: game-2048-prod.game-2048-prod.wa.darknex.us
This ensures tests are more reliable since canonical domains are always accessible
while custom domains may have redirect complexity.