Greetings to my fellow Technology Advocates and Specialists.
In this Session, I will explain Terraform code repository structure: Monolith vs Microservice.
| SPECIAL NOTE:- |
| I thank @pwd9000 and @anandarbone for collaborating. Though I am publishing this Article, but both of them have the equal rights to republish and repost. |
| CODE REPOSITORY:- |
Terraform Code Repository: Monolith or Microservice Approach:-
Greetings to my fellow Technology Advocates and Specialists.
In this Session, I will explain Terraform code repository structure: Monolith vs Microservice.
| SPECIAL NOTE:- |
| I thank @pwd9000 and @anandarbone for collaborating. Though I am publishing this Article, but both of them have the equal rights to republish and repost. |
| CONSIDERATIONS:- |
| For the purpose of this article, I/We have considered below:- |
| # |
CATEGORY |
VALUE |
| 1. |
Cloud Platform |
Azure |
| 2. |
Devops Platform |
Azure Devops |
| 3. |
Source control |
Azure Git |
| 4. |
Pipelines |
Azure Devops Pipelines |
| 5. |
IaC |
Terraform |
| 6. |
Code Structure |
Modules Based |
| What is Monolith based code repository in Terraform ? |
| 1. In simple terms, it means one repository under Azure DevOps Project with multiple folders. |
| 2. Each folder contains Terraform Module per Azure Service. |
| 3. Reference screenshot follows below:- |
 |
| Monolith based code repository problem statements:- |
| 1. Each time the Pipeline runs, it checks out all |
…
|
| CONSIDERATIONS:- |
| For the purpose of this article, I/We have considered below:- |
| # |
CATEGORY |
VALUE |
| 1. |
Cloud Platform |
Azure |
| 2. |
Devops Platform |
Azure Devops |
| 3. |
Source control |
Azure Git |
| 4. |
Pipelines |
Azure Devops Pipelines |
| 5. |
IaC |
Terraform |
| 6. |
Code Structure |
Modules Based |
| What is Monolith based code repository in Terraform ? |
| 1. In simple terms, it means one repository under Azure DevOps Project with multiple folders. |
| 2. Each folder contains Terraform Module per Azure Service. |
| 3. Reference screenshot follows below:- |
 |
| Monolith based code repository problem statements:- |
| 1. Each time the Pipeline runs, it checks out all codes. |
| 2. Pipeline execution time increases gradually. |
| 3. Size of the artifacts increases gradually . |
| 4. Avoid Human Error while contributing. |
| What is Microservice based code repository in Terraform ? |
| 1. In simple terms, it means multiple repositories under Azure DevOps Project. |
| 2. Each repository contains Terraform Module per Azure Service. |
| 3. Reference screenshot follows below:- |
 |
All the above identified problem statements in Monolith Code Repository is resolved with Microservice based code repository.
| Mitigating Monolith based code repository problem statements with Microservice based code repository:- |
| 1. Each time the Pipeline runs, it checks out only the relevant repositories. |
| 2. Pipeline execution is fast/not impacted because it checks out only the relevant repositories. |
| 3. Size of the artifacts is way small and the increase is not even noticed because it checks out only the relevant repositories |
| 4. Chances of Human Error is on the lower side since contributor works on specific repositories. |
Hope You Enjoyed the Session!!!
Stay Safe | Keep Learning | Spread Knowledge
Top comments (0)