Deployment Modes
Choose between Complete and Incremental deployment modes for Bicep artifacts based on resource group ownership
When deploying Bicep templates through Bluebricks, you can choose between two deployment modes: Complete and Incremental. Each mode has different behavior for resource lifecycle management.
Complete mode (default)
How it works
Creates or updates resources defined in the template
Deletes any resources in the resource group that are not in the template
Provides full lifecycle management (create, update, destroy)
When to use Complete mode
Standard Bluebricks deployments:
Bluebricks auto-generates a unique resource group per deployment (e.g.,
rg-myapp-a1b2c)The blueprint owns the entire resource group
Safe cleanup on destroy operations
Full control over all resources in the scope
Benefits:
Clean destroy behavior removes all resources when the blueprint is uninstalled
Prevents orphaned resources
Simplifies cost management
Example configuration
Bluebricks creates a dedicated resource group, deploys resources, and can safely clean up everything on uninstall.
Incremental mode
How it works
Creates or updates resources defined in the template
Never deletes resources (even if removed from template)
Resources remain in Azure when removed from the Bicep template
Requires manual cleanup for decommissioned resources
When to use Incremental mode
Shared resource group scenarios:
Multiple teams or blueprints deploy to the same resource group
Need to preserve existing resources not managed by this blueprint
Adding resources to existing infrastructure
User-provided resource groups:
User specifies an existing resource group name
Resource group contains resources from other sources
Cannot take full ownership of the resource group
Example configuration
Deploys to an existing resource group without affecting other resources. Manual cleanup required on uninstall.
Decision matrix
Choose the right deployment mode based on your scenario:
Standard Bluebricks deployment
Complete
Auto-generated
User-provided shared RG
Incremental
User-provided
User-provided RG (sole owner)
Complete
User-provided (use with caution)
Multiple teams, same RG
Incremental
User-provided
Resource group management
Complete mode with auto-generated resource groups
Configuration:
Do not provide a
resourceGroupparameterBluebricks generates a unique RG name based on the deployment
Full lifecycle management enabled
Workflow:
User deploys blueprint
Bluebricks creates
rg-<blueprint>-<hash>Resources deployed to the dedicated RG
On uninstall: all resources cleaned up automatically
Incremental mode with user-provided resource groups
Configuration:
Provide
resourceGroupparameter as a required propertyUser specifies an existing RG name during deployment
Manual cleanup process required
Workflow:
User deploys blueprint and specifies an existing RG
Resources added to the specified RG
Other resources in the RG remain untouched
On uninstall: resources remain, manual cleanup needed
Important considerations
Complete mode risks
When a user provides an existing resource group name and Complete mode is active:
All resources in that RG not defined in the template will be deleted
This includes resources from other teams, manual deployments, or other blueprints
Use Incremental mode when deploying to user-provided resource groups. Reserve Complete mode for Bluebricks-managed (auto-generated) resource groups.
Incremental mode trade-offs
Orphaned resources:
Resources removed from the template remain in Azure
Increases cost over time if not manually cleaned
Requires a decommission process
Cost management:
Bluebricks calculates cost based on blueprint definitions
Orphaned resources are not reflected in Bluebricks cost tracking
Manual reconciliation required
Referencing external resources
Both modes support referencing resources from other resource groups without managing them.
Example: VM with existing VNet
The VNet exists in virtualNetworkResourceGroup, but the NIC is created in the deployment's resource group. Complete mode only affects resources in the deployment's resource group.
Cost management
Complete mode
Bluebricks tracks all resources in the deployment
Cost calculation accurate
Uninstall frees up environment budget immediately
Incremental mode
Bluebricks tracks resources at deployment time
Orphaned resources not reflected in cost tracking
Manual reconciliation required for accurate costs
Budget freed only after manual resource cleanup
See also
Last updated

