The main ideia of this repository is to reproduce the steps shown in Tiago Nascimento's alternative model for configuring a CI/CD enabled environment in a Salesforce Org Development Model, using the Github Action sfdx-orgdev-build-deploy.
- Git client
- Salesforce CLI
- Open SSL or another similar toolkit
- Visual Studio Code
- Salesforce Extension Pack Plugin for VS Code
- Salesforce CLI Integration Plugin for VS Code
- master
- develop
- feature/**
- 1 Production Org (PROD)
- 1 Partial Copy Sandbox (QA01)
- 1 Developer Pro Sandbox (BUILD01)
- 1 Developer Sandbox (DEV01)
The environment map constructed here is regarded to enable an automated deployment pipeline based on gitflow principles. With the setup we have done here, the most important points are:
- Every time that a feature/** branch is developed on our DEV01 sandbox and pushed to our repository, it automatically reproduces an automatic deploy on our BUILD01 sandbox, veryfing if this deploy is breaking the whole code or not, considering that we could have other developers working on different sandboxes.
- After that, if a pull request of this feature is accepted into develop, this reproduces another automatic deploy on our QA01 sandbox, enabling continuous integration between these environments.
- Finally, when develop is merged into master, it reproduces an automatic deploy on our PROD org.
This approach is simplified, we could make our branching strategy a little more complex, depending on the needs and size of your project. It is clear that we have not touched the UAT/SIT environment.