HOW PRESIDIO AND SJU SOLVED IT WITH AMAZON’S CODECOMMIT, CODEBUILD, CODEDEPLOY, AND CODEPIPELINE
Presidio recommended SJU to use AWS Services to centralize the code management, build management, approval, and deployment process.
How Presidio and SJU Solved It With Amazon’s Codecommit, Codebuild, Codedeploy, and Codepipeline
Presidio recommended SJU to use AWS Services to centralize the code management, build management, approval, and deployment process. Presidio also helped SJU to onboard development team to AWS, created individual IAM account for each team member with necessary privileges based on role.
SJU and Presidio Created CodeCommit repositories for each extension and provided necessary access to team members; team lead was provided with elevated privileges to repository management. Laid out code build process to package the extensions and deploy to the respective AWS environments continuously as developers make changes to the code.
Added a manual approval process using CodePipeline. Using this step, a manager had the authority to review the changes made in the current deployment and approve or reject it.
THE CHALLENGE
Presidio recommended SJU to use AWS Services to centralize the code management, build management, approval, and deployment process. Presidio also helped SJU to onboard development team to AWS, created individual IAM account for each team member with necessary privileges based on role. SJU and Presidio Created CodeCommit repositories for each extension and provided necessary access to team members; team lead was provided with elevated privileges to repository management. Laid out code build process to package the extensions and deploy to the respective AWS environments continuously as developers make changes to the code. Added a manual approval process using CodePipeline. Using this step, a manager had the authority to review the changes made in the current deployment and approve or reject it.
SJU ERP consists of a third-party application and all of the customization to the ERP is done through standard extensions provided by the vendor. The primary extensions are classified into four different components, and these components are stored within SJU individual internal repositories. SJU wanted to deploy any customizations to the ERP system seamlessly and continuously into various environments: dev/qa/prod. The SJU team needs to run smoke testing during the process of development. The following objectives were set by the SJU team for this project.
- Store code in cloud Git based repository and manage permissions through AWS IAM.
- Allow different teams to collaborate and add changes to the ERP extensions.
- Implement CI/CD pipeline to deploy changes to various environments seamlessly.
- Add a manual approval step to deploy the application.
- Test the application integrity by running smoke tests.
- Migrate the application to production
THE RESULTS
- Increased efficiency by minimizing the time to roll out the new features. From 5 hours to 5 minutes.
- Decreased the cost of implementing CI/CD pipeline by using AWS services, there is no need to deploy and maintain additional Jenkins servers to implement CI/CD pipeline. From $500 per year to $10 per year.
- Provides granular control on each stage in the deployment process and gives in depth control to customize the organization workflow.
- Ability to mitigate the risk for rollback operations, AWS CodePipeline supports in built Blue-Green deployment strategy.
- Increases productivity, by reducing the effort to debug the deployment issues with multiple interfaces. From 5 hours to 5 minutes.
- Decreased the project testing effort, by including the test script as part of the application build process. From 5 hours to 5 minutes.
- Decreased the cost of storing build artifacts in secured S3 buckets rather than using third party applications. From 5 hours to 5 minutes