This repository contains orchestration scripts, documentation, infrastructure-as-code, and planning for the CodeFlow project.
The CodeFlow Orchestration repository serves as the central hub for:
- Infrastructure as Code - Production Azure infrastructure (Bicep, Terraform, Kubernetes)
- Azure Bootstrap - Generic reusable Azure environment setup scripts
- Cross-repository Coordination - Version management, migration, and deployment
- Comprehensive Documentation - Guides, policies, and references
codeflow-orchestration/
├── infrastructure/ # Production Infrastructure (from codeflow-infrastructure)
│ ├── bicep/ # Azure Bicep templates
│ ├── terraform/ # Terraform configurations
│ ├── kubernetes/ # Kubernetes manifests
│ ├── docker/ # Docker development environment
│ └── scripts/ # Deployment & monitoring scripts
├── bootstrap/ # Generic Azure Bootstrap (from codeflow-azure-setup)
│ └── scripts/ # Reusable Azure setup scripts
├── packages/ # Shared utility packages
│ ├── @codeflow/utils/ # TypeScript utilities (npm)
│ └── codeflow-utils-python/ # Python utilities (PyPI)
├── scripts/ # Orchestration scripts
│ ├── check-versions.ps1
│ ├── bump-version.ps1
│ ├── sync-versions.ps1
│ └── dev-setup.ps1
└── docs/ # Documentation
- Infrastructure Overview - Production infrastructure guide
- Bicep Deployment - Azure Bicep deployment
- Kubernetes Setup - K8s manifests
- Docker Development - Local development
- Bootstrap Scripts - Reusable Azure environment setup
- Migration Overview - Complete migration status and progress (72% complete)
- Migration Analysis - Comprehensive analysis, mistakes, and improvements
- Migration Phases - Detailed phase descriptions and goals
- Wave 4 Execution Plan - Optimization & Enhancement (in progress)
- Infrastructure Consolidation Plan - Consolidation migration plan
- Documentation Index - Central index for all documentation
- Versioning Policy - Semantic versioning strategy
- Release Process - Release automation and process
- Dependency Management - Dependency update process
- Monitoring & Observability - Monitoring strategy
- Full Stack Deployment - Complete deployment guide
- Shared Libraries Plan - Wave 4: Shared libraries strategy
- Optimization Plan - Wave 4: Performance and cost optimization
- Package Publishing Guide - Publishing shared utility packages
- Deployment Automation - Enhanced deployment with rollback and health checks
| Wave | Status | Progress |
|---|---|---|
| Wave 1: Critical Foundation | Complete | 95% |
| Wave 2: Quality & Documentation | Complete | 92% |
| Wave 3: Operations & Infrastructure | Complete | 90% |
| Wave 4: Optimization & Enhancement | In Progress | 65% |
The infrastructure/ directory contains production-ready Azure infrastructure definitions:
codeflow-engine.bicep- Container Apps, PostgreSQL, Rediswebsite.bicep- Static Web Appsmain.bicep- Legacy AKS infrastructure
- Cloud-agnostic infrastructure definitions
- State stored in Azure Blob Storage
- Deployment manifests for AKS clusters
- Service, ConfigMap, and Kustomize configs
docker-compose.yml- Full local development stack- Includes PostgreSQL, Redis, Prometheus, Grafana
# Deploy CodeFlow Engine to Azure
cd infrastructure/bicep
bash deploy-codeflow-engine.sh prod san eastus2
# Or use Terraform
cd infrastructure/terraform
terraform init
terraform applyThe bootstrap/ directory contains generic, reusable Azure environment setup scripts:
| Script | Purpose |
|---|---|
New-AzRepoEnvironment.ps1 |
Create core Azure resources (RG, Storage, Log Analytics, App Insights) |
New-AzRepoFullEnvironment.ps1 |
Full environment with App Service, Container Apps, Managed Identity |
Set-GitHubSecretsFromJson.ps1 |
Configure GitHub secrets from Azure output |
# Create basic environment
./bootstrap/scripts/New-AzRepoEnvironment.ps1 `
-OrgCode "nl" `
-Environment "dev" `
-Project "myproject" `
-RegionShort "san" `
-Location "southafricanorth"
# Set GitHub secrets
./bootstrap/scripts/Set-GitHubSecretsFromJson.ps1 `
-JsonPath "./environment.json" `
-Repo "owner/repo"# Check versions across all repos
pwsh scripts/check-versions.ps1
# Bump version in a repo
pwsh scripts/bump-version.ps1 -Type minor
# Sync versions across repos
pwsh scripts/sync-versions.ps1 -Version "1.2.0"# Migrate AutoPR to CodeFlow (dry run)
pwsh scripts/migrate-autopr-to-codeflow.ps1 -DryRun
# Migrate AutoPR to CodeFlow (execute)
pwsh scripts/migrate-autopr-to-codeflow.ps1# Set up local development environment
pwsh scripts/dev-setup.ps1
# Or bash version
bash scripts/dev-setup.shnpm install @codeflow/utilsProvides:
- Date/time formatting utilities
- Number formatting utilities
- String formatting utilities
- URL validation
pip install codeflow-utils-pythonProvides:
- Error handling utilities
- Retry decorators
- Rate limiting
- Validation helpers
- codeflow-engine - Core engine (Python, FastAPI)
- codeflow-desktop - Desktop application (Tauri, React)
- codeflow-vscode-extension - VS Code extension
- codeflow-website - Marketing website (Next.js)
The following repositories have been merged into this one:
codeflow-infrastructure→./infrastructure/codeflow-azure-setup→./bootstrap/
-
Read the Documentation
- Start with Migration Overview
- Review Migration Phases for detailed information
-
Set Up Local Environment
pwsh scripts/dev-setup.ps1
-
Check Versions
pwsh scripts/check-versions.ps1
-
Review Infrastructure
-
Deploy
cd infrastructure/bicep bash deploy-codeflow-engine.sh dev san eastus2
-
Review Release Process
-
Use Version Scripts
pwsh scripts/bump-version.ps1 -Type minor pwsh scripts/sync-versions.ps1 -Version "1.2.0"
See CONTRIBUTING.md for contribution guidelines.
For questions or issues:
- GitHub Issues: codeflow-orchestration/issues
- Documentation: See docs/ directory
MIT License - See LICENSE file for details.
Last Updated: 2025-01-XX