The Release Module is the recommended approach as it adheres to best practices in development lifecycle management, ensuring consistency and reliability. However, for scenarios requiring a simplified release process (offering a more efficient alternative to Change Sets) or when best practices need to be bypassed due to urgency, priority, or other constraints, Hutte offers Individual Feature Deployments as a flexible and practical solution.
Key Differences
- Pull Request:
- Release Module: Requires a Pull Request to include features in a release.
- Individual Feature Deployments: Does not require a Pull Request for deployment.
- Deployment Flexibility:
- Release Module: Deployment depends on the release status → see Building and Deploying Releases (Release Module) for more details.
- Individual Feature Deployments: Can be deployed directly from any development org to any target org, including Production.
- Git Integration:
- Release Module: Deployments are reflected in Git via Git Tags.
- Individual Feature Deployments: No actions on the Git side.
- Pipeline Tracking:
- Both individual feature deployments and releases are visible in the Pipeline Tab, allowing you to track which features/releases have been deployed to each Salesforce org in the pipeline. Additionally, the history of feature deployments can be seen on the Deployments tab of the respective feature.
Scenarios for Using the Release Module
The Release Module is recommended for all standard development tasks, as it enforces CI/CD best practices, ensuring consistency and reliability.
Scenarios for Using Individual Feature Deployments
Individual feature deployments are suitable for small projects/teams, as well as for Hotfixes that need to be delivered urgently to UAT or Production, especially when:
- Engineers are unavailable to perform a Pull Request review.
- Your company is beginning to transition from Change Sets and is taking its first step toward incrementally adopting modern DevOps practice3s with Hutte.
- Time constraints make it impractical to use the Release Module.
- Lack of resources or expertise in managing the Release Module prevents its use.