What It Does
Updating your application is as simple as asking Monk to deploy again, or pushing to your repository if you’ve set up CI/CD. Monk handles deployment, health checks, and automatically reverts if errors occur. Infrastructure changes, workload changes, and API configurations are applied automatically. Dependencies are upgraded seamlessly. No manual deployment process needed.How It Works
Application Updates
Two ways to update your deployed application:Method 1: Direct Deployment
Ask Monk to deploy your updated code:Method 2: Automatic via CI/CD
If you’ve set up CI/CD with Monk:- Push changes to your repository
- CI pipeline automatically triggers
- Monk deploys updates to production
- Health checks verify deployment
- Done
What Gets Updated Automatically
When you deploy, Monk handles all necessary changes: Application updates:- Code changes in your services
- New environment variables or configuration
- Container image updates
- Resource allocation changes (memory, CPU)
- New services added to your application
- Removed services cleaned up
- Network routing updated
- Firewall rules adjusted
- Webhook URLs updated (Stripe, Auth0, etc.)
- OAuth callback URLs adjusted
- Third-party API resources reconfigured
- See APIs for how this works
- Supporting services upgraded (databases, caches, queues)
- Package versions updated
- See “Dependency Updates” section below
Health Checks & Validation
Monk ensures updates are fully applied and working before considering deployment complete: Readiness checks:- New containers must start successfully
- Services must respond to health check endpoints
- Database connections must establish
- All dependencies must be reachable
- Services monitored during rollout
- Traffic gradually shifted to new version
- Old version remains available during transition
- If health checks fail, deployment stops
- If new version fails health checks, Monk automatically reverts
- If errors occur during deployment, changes are not applied
- Old version remains running if new version doesn’t work
- No manual intervention needed for rollback
Manual Rollback
Want to roll back to a previous version? Keep your application and Monk configuration in git: Rollback process:- Switch to previous commit in git:
git checkout <previous-commit> - Ask Monk to deploy:
deploy this version - Monk deploys the previous version
- Application rolled back to previous state
- Switch to previous commit
- Push to repository
- CI pipeline deploys previous version automatically
- Application code
- Container configurations
- Infrastructure configuration
- Service wiring and connections
Dependency Updates
On every deployment, Monk checks for updates to supporting services: What Monk upgrades:- Databases - PostgreSQL, MySQL, MongoDB, Redis, etc.
- Essential services - Message queues, caches, object storage
- Third-party managed services - If newer versions available
- Monk checks package ecosystem for newer versions
- Upgrades are applied seamlessly during deployment
- No downtime for most upgrades
- Data preserved during upgrades
Coming Soon
OS & Runtime Updates COMING SOON Monk will handle operating system and runtime updates autonomously: Planned capabilities:- Automatic OS updates on cloud VMs
- Security patches applied in background
- Runtime upgrades (container runtime)
- Monk orchestrator self-updates
- Zero-downtime infrastructure updates
- VMs updated one at a time (rolling updates)
- Services migrated to updated VMs automatically
- No manual patching or maintenance windows required
- Security patches applied within hours of release
What Makes This Different
Traditional update processes require:- Manually triggering deployments
- Writing deployment scripts
- Configuring health checks and readiness probes
- Managing rollback procedures
- Coordinating dependency upgrades
- Scheduling maintenance windows for OS updates
- Manually applying security patches
- Testing rollback procedures separately
Key Capabilities
- Simple deployment - Ask Monk or push to repository
- Automatic change detection - Monk knows what changed and updates accordingly
- Infrastructure updates - Services, networking, configurations updated automatically
- API reconfiguration - Third-party service configurations updated
- Dependency upgrades - Supporting services upgraded seamlessly
- Health validation - Readiness and health checks ensure successful deployment
- Automatic rollback - Failed deployments reverted automatically
- Manual rollback via git - Deploy any previous commit
- Zero-downtime deployments - Traffic shifted gradually to new version
- CI/CD integration - Automatic updates on git push
Related Features
- Build & CI/CD - Automatic deployments on code push
- Autonomous Deployment - Initial deployment process
- Containerization - How containers are updated
- Monitoring - Health checks and validation
- Databases - Database version upgrades
- Essential Services - Service version upgrades
- APIs - How API configurations are updated
- Package Ecosystem - Source of dependency versions