Infrastructure As Code + Pipeline: Deployment of Network Resources and Compute in the OCI in a 100% automated way using GitHub, Terraform Cloud and Terraform IaC

A company specializing in luxury furniture sales, needed to provision an infrastructure (Networking + Compute) in the OCI, to host its website called Niture. As a prerequisite for this project, I had to use Infrastructure as Code (IaC).

The main IaC tools I used for this project were GitHub, Terraform Cloud and Terraform IaC.

The main steps are:

  1. Create a new IAM administrator user for Terraform.
  2. Create a new repository in GitHub.
  3. Create terraform main.tf file to create the different resources needed for this project.
  4. Commit the terraform changes into GitHub.
  5. Create a new organization and workspace in Terraform Cloud
  6. Configure the terraform variables and plan and validate a run.
  7. Once all resources were created, test the application.
  8. Update the main.tf file — add a second webserver, commit the changes and validate that the new server was created.
  9. Update again the main.tf file — remove the second server and validate that it was deleted.
  10. Remove all the resources from the main.tf file and validate that all the resources were deleted.

Read More