Modern Application Development (MAD) is driven at its core by an integrated technology stack, DevOps enabled framework, and a cloud-and mobile-ready infrastructure. This blog post reviews MAD flows, and how AutoRABIT can help you quickly develop Salesforce apps.
Drive MAD with Continuous Delivery
A popular setup for developers using Salesforce is structured around managing changes locally in developer sandboxes and using change sets for deployments into production. AutoRABIT is a great complement to the modern frameworks Salesforce is moving towards, particularly in the area of Continuous Delivery.
AutoRABIT and Salesforce
The AutoRABIT Continuous Delivery SaaS Suite complements and extends Salesforce DX and Continuous Delivery models in the following ways:
Integrates DX Scratch Orgs with third-party ALM platforms
AutoRABIT enables a seamless user-story driven development experience by integrating Scratch Orgs with multiple third-party version control systems. It provides CI pipelines with ALM story status and reporting for centralized tracking. You can easily connect it with Atlassian Jira, VersionOne, CA Rally, IBM RTC, Microsoft TFS, Redmine, HP-ALM, TFS, Helix Cloud, Agile Accelerator etc.
Provides GUIs for DX CLIs
AutoRABIT provides graphic checkin and merge editors, and reduces the complexity of command line interfaces (CLIs) to increase adoption.
Extends DX beyond Deployments and Apex Testing
AutoRABIT integrates with code review systems like Gerrit and Crucible. It also extends to work with scratch orgs such as ApexPMD and security scanner.
AutoRABIT – Enables Modern Application Development Best Practices
The AutoRABIT Continuous Delivery SaaS suite brings Salesforce DX, feature branches and ALM tools together to drive efficient application development best practices in three stages of development:
- Provisioning
- Development
- Release
1. Provisioning
We at AutoRABIT envision provisioning to function in the following way:
- Developer has a user story assigned from the ALM Tool.
- Developer gets a Scratch Org created from the Hub Org for user story development.
- He or she can then branch from the Master [baselined with Production] to version solutions.
- The Developer then can fetch required metadata members required for the user story from selected Salesforce environments, and migrate them into a target scratch org.
2. Development
Developers can raise a pull request from GIT environments like GITHub for code review. AutoRABIT has a check-in gate that has additional capabilities than a simple pull request. In addition to code review, developers can also verify the code changes for successful deployment validation, check code coverage, static code analysis and send reports to a chosen reviewer for approval before checking code into version control. Once that is done, the developer will update the status in the ALM tool as well as other communication media like Chatter. Since the changes are committed to his/her feature branch, the developer can work on multiple items in parallel and can move to another user story even if it is in the next sprint.
3. Release
Once the user story is approved to get into a shared environment like INT, the developer can pull or merge requests from his or her feature branch to an INT/release branch. A CI Job can be triggered on commit from a CI server like AutoRABIT to deploy changes from the INT branch into INT Sandbox. The same merge-deploy process can be repeated for all release environments in the Salesforce environment landscape. The final merge will be done to Master from where the code will be validated with production to generate a “Quick Deploy” link. This can be later used for production deployment.
The Way Forward
AutoRABIT aims to drive more efficient development for Salesforce teams by supporting modern platform capabilities and continuous development practices. Keep an eye out for our session at TrailheaDX, or contact AutoRABIT for further information.