{"id":22260942,"url":"https://github.com/piyushsachdeva/10weeksofcloudops-week4-tf","last_synced_at":"2025-04-11T17:32:30.108Z","repository":{"id":193802383,"uuid":"689512347","full_name":"piyushsachdeva/10weeksofcloudops-week4-tf","owner":"piyushsachdeva","description":null,"archived":false,"fork":false,"pushed_at":"2023-09-12T15:50:59.000Z","size":30,"stargazers_count":10,"open_issues_count":0,"forks_count":45,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-01T13:46:22.662Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/piyushsachdeva.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-10T03:30:47.000Z","updated_at":"2024-11-13T12:13:11.000Z","dependencies_parsed_at":"2024-12-03T09:11:04.189Z","dependency_job_id":"134b5f96-6d39-41bb-a940-76b30a2890a6","html_url":"https://github.com/piyushsachdeva/10weeksofcloudops-week4-tf","commit_stats":null,"previous_names":["piyushsachdeva/10weeksofcloudops-week4-tf"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piyushsachdeva%2F10weeksofcloudops-week4-tf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piyushsachdeva%2F10weeksofcloudops-week4-tf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piyushsachdeva%2F10weeksofcloudops-week4-tf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piyushsachdeva%2F10weeksofcloudops-week4-tf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/piyushsachdeva","download_url":"https://codeload.github.com/piyushsachdeva/10weeksofcloudops-week4-tf/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248449937,"owners_count":21105587,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-03T09:10:53.770Z","updated_at":"2025-04-11T17:32:30.090Z","avatar_url":"https://github.com/piyushsachdeva.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Provisioning the Amazon EKS cluster using Terraform\nThis repository contains the terraform file code, which we can use to provision the **Amazon EKS** cluster as part of Project 4 of our **10WeeksofCloudOps** series! In this comprehensive hands-on project, we dive deep into the world of **GitOps and ArgoCD**, demonstrating how to implement these essential DevOps practices step by step by **dockerizing** the application and provisioning the infrastructure using **Terraform**(this repo).\n\n## 💪Complete Hands-on video tutorial for this project. Click here 👇\n[![GitOps , ArgoCD, Terraform](https://i9.ytimg.com/vi_webp/LgBnbmfsIdA/mqdefault.webp?v=65001550\u0026sqp=CMyFgqgG\u0026rs=AOn4CLB-7wLlJjUqu2q7dOdDMdQRyQ46TA)](https://youtu.be/LgBnbmfsIdA \"GitOps|ArgoCD|Terraform\")\n\n## Architecture Diagram\n\n![Architecture Diagram](https://cdn-images-1.medium.com/max/800/1*T5IRoSoiqT8qnYLUprsRUQ.png)\n\n\n## Installation of Terraform\nFollow the below steps to Install the Terraform and another dependency.\n\n1️⃣ Clone the repo\n\n``` git clone https://github.com/piyushsachdeva/10weeksofcloudops-week4-tf.git ```\n\n2️⃣ Let's install dependency to deploy the application\n\n``` \ncd kube_terraform/ToDo-App/\nterraform init\n```\n\n3️⃣ Edit the below file according to your configuration\n\n`vim kube_terraform/ToDo-App/backend.tf`\n\nadd below code\n\n```\nterraform {\n  backend \"s3\" {\n    bucket = \"S3-BUCKET-NAME\"\n    key    = \"backend/TFSTATE-FILE.tfstate\"\n    region = \"us-east-1\"\n    dynamodb_table = \"DYNAMODB-TABLE-NAME\"\n  }\n}\n```\n\nLet's set up the variable for our Infrastructure and create one file with the name of terraform.tfvars inside kube_terraform/ToDo-App/backend.tf and add the below conntent into that file.\n\n```\nREGION          = \"us-east-1\"\nPROJECT_NAME    = \"ToDo-App\"\nVPC_CIDR        = \"10.0.0.0/16\"\nPUB_SUB1_CIDR   = \"10.0.1.0/24\"\nPUB_SUB2_CIDR   = \"10.0.2.0/24\"\nPRI_SUB3_CIDR   = \"10.0.3.0/24\"\nPRI_SUB4_CIDR   = \"10.0.4.0/24\"\n```\n\nPlease note that the above file is crucial for setting up the infrastructure, so pay close attention to the values you enter for each variable.\n\nIt's time to build the infrastructure\n\nThe below command will tell you what terraform is going to create.\n\n`terraform plan`\n\nFinally, HIT the below command to create the infrastructure...\n\n`terraform apply`\n\ntype yes, and it will prompt you for permission or use --auto-approve in the command above.\n\n\n**This project contains Three GitHub repositories**\n\n➡️ [App Code] (https://github.com/piyushsachdeva/AppCode)\n\n➡️ [Terraform code] (https://github.com/piyushsachdeva/10weeksofcloudops-week4-tf)\n\n➡️ [Manifest Repo] (https://github.com/piyushsachdeva/kube_manifest)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpiyushsachdeva%2F10weeksofcloudops-week4-tf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpiyushsachdeva%2F10weeksofcloudops-week4-tf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpiyushsachdeva%2F10weeksofcloudops-week4-tf/lists"}