Background: For this deployment, we have multiple back offices to manage, with various versions of the framework and various deploy details. So each plan of deployment is unique.
Goals: The main goal here is to decrease the time it takes to deploy new features in our software.
Solution & Results: The first step was to make each deploy job. Like this, each job can be deployed one by one. Afterward, we create a pipeline to run the plan in parallel. After we create the first deploy pipeline, we create a second to deploy to a different back office. And finally, we create a pipeline to run the other pipeline. Just like that, we create a deployment train in inception mode.
We used key capabilities like pipelines, Docker plugins, and Jenkins agents to get the following results:
Personally I analyze a lot, a lot, a lot of CI/CD tools, and Jenkins is the most complete -- by the community and by stability. I love the possibility to create everything as code. Code is the way!