https://github.com/mensaah/terraform-eks-demo
https://github.com/mensaah/terraform-eks-demo
Last synced: 6 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/mensaah/terraform-eks-demo
- Owner: MeNsaaH
- Created: 2020-06-23T15:26:16.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-11-10T12:56:05.000Z (over 3 years ago)
- Last Synced: 2025-05-26T00:43:50.170Z (about 1 year ago)
- Language: HCL
- Size: 85 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# terraform-trials
Exploring Terraform on AWS using ArgoCD, Helm, ACM
## Getting Started
### Requirements
- AWS Cli
- Helm v2.16
- argocd cli
### Configure AWS
```
$ aws configure
aWS Access Key ID [****************7CDE]:
AWS Secret Access Key [****************2NGa]:
Default region name [eu-west-2]:
Default output format [None]:
```
### Deployment
```bash
$ git clone https://git.deimos.co.za/mensaah/terraform-trials.git
$ cd terraform-eks
$ terraform init
$ terraform plan
$ terraform apply
# After Running apply, run `terraform init` again to move the terraform state to aws s3 bucket
$ terraform init # moves state to s3
```
### Destruction
```
$ terraform destroy -target module.helm_agones.helm_release.agones -auto-approve && sleep 60
$ terraform destroy
```
There is an issue with the AWS Terraform provider: https://github.com/terraform-providers/terraform-provider-aws/issues/9101. Due to this issue you should remove helm release first (as stated above), otherwise terraform destroy will timeout and never succeed. Remove all created resources manually in that case, namely: 3 Auto Scaling groups, EKS cluster, and a VPC with all dependent resources
### IAM User Profile
After running `terraform apply`, an encrypted password output is printed out. The encrypted password may be decrypted using the command line, for example:
```
$ terraform output password | base64 --decode | keybase pgp decrypt
```