- Chargeworx.Api - Payment processing API
- Chargeworx.Admin - Administrative web interface
Deployment architecture
The deployment process follows these key principles:- Automated CI/CD - GitHub Actions workflows trigger builds and deployments
- Environment-based - Separate configurations for Development, Staging, Alpha, and Production
- Windows Server - Applications deploy to IIS on Windows Server instances
- AWS CodeDeploy - Manages deployment lifecycle and rollback capabilities
Deployment workflow
- Code push - Developer pushes code to GitHub repository
- CI build - GitHub Actions workflow builds and tests the application
- Artifact creation - Build artifacts are packaged for deployment
- CodeDeploy trigger - Deployment initiated to target environment
- Pre-deployment - BeforeInstall hooks stop IIS and prepare environment
- File copy - Application files copied to target directory
- Post-deployment - AfterInstall hooks start IIS and verify deployment
- Health check - Automated health checks verify application status
Deployment targets
Applications deploy to the following directory structure:Environment configuration
Each environment uses specific configuration files:appsettings.Development.jsonappsettings.Staging.jsonappsettings.Alpha.jsonappsettings.Production.json
- Database connection strings
- Identity Server settings
- Payment processor credentials
- AWS service configurations
- Logging and monitoring settings
Deployment hooks
AWS CodeDeploy uses PowerShell scripts for lifecycle management:- before-install.ps1 - Stops IIS application pools and services
- after-install.ps1 - Starts IIS application pools and verifies deployment
