In this Video post we have shown the Infrastructure provisioning and config management capabilities on AWS using Jenkins, Terraform, Ansible, Packer and AWS.
- Jenkins is used as an Orchestrator to drive the end to end Infrastructure as code workflow.
- Terraform is used as a provisioner to provision an EC2 on AWS
- Ansible is used as configuration management tool to configure tomcat 7 and deploy Sample web application onto the machine.
- AWS is used as the public cloud provider.
- First the Jenkins checkout out the code from the git repo, builds the application code, perform SCA analysis and execute Unit test cases along with Sonarqube static code analysis.
- Then it pushes the code to artifactory.
- Packer internally invokes Terraform to provision the VM using the image created by packer.
- Terraform then invokes Ansible which installs and configure tomcat and the web application by pulling the latest package from Artifactory.