From 2f7ea9dd27cbe12960d526cc518f1f5c6075d762 Mon Sep 17 00:00:00 2001 From: Okesanya Odunayo <94924061+DrInTech22@users.noreply.github.com> Date: Mon, 16 Dec 2024 01:14:49 +0100 Subject: [PATCH 1/4] CI: update var in terraform workflow --- .github/workflows/terraform-apply.yml | 2 +- .github/workflows/terraform-plan.yml | 12 ++++++++---- ansible/compose.monitoring.yml | 1 + 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/terraform-apply.yml b/.github/workflows/terraform-apply.yml index e257e27..30bf76f 100644 --- a/.github/workflows/terraform-apply.yml +++ b/.github/workflows/terraform-apply.yml @@ -80,7 +80,7 @@ jobs: - name: Save Public IP if: steps.terraform-operation.outcome == 'success' && github.event.inputs.operation != 'destroy' run: | - echo "public_ip=$(terraform output -raw instance_public_ip)" > public_ip_env.txt + terraform output instance_public_ip > public_ip_env.txt cat public_ip_env.txt working-directory: ./terraform diff --git a/.github/workflows/terraform-plan.yml b/.github/workflows/terraform-plan.yml index bb6f133..5e88fa9 100644 --- a/.github/workflows/terraform-plan.yml +++ b/.github/workflows/terraform-plan.yml @@ -15,9 +15,9 @@ permissions: env: AWS_ACCESS_KEY: ${{ secrets.AWS_ACCESS_KEY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - TF_VAR_aws_region: ${{ vars.TF_AWS_REGION }} - TF_VAR_ami_id: ${{ vars.TF_AMI_ID }} - TF_VAR_instance_type: ${{ vars.TF_INSTANCE_TYPE }} + # TF_VAR_aws_region: ${{ vars.TF_AWS_REGION }} + # TF_VAR_ami_id: ${{ vars.TF_AMI_ID }} + # TF_VAR_instance_type: ${{ vars.TF_INSTANCE_TYPE }} TF_VAR_key_pair_name: ${{ vars.TF_KEY_PAIR_NAME }} TF_VAR_private_key: ${{ secrets.PRIVATE_KEY }} TF_VAR_domain_name: ${{ vars.TF_DOMAIN_NAME }} @@ -52,7 +52,11 @@ jobs: - name: Terraform Plan id: plan - run: terraform plan -out=tfplan.out + run: | + terraform plan -out=tfplan.out \ + -var="aws_region=${{ vars.TF_AWS_REGION }}" \ + -var="ami_id=ami-005fc0f236362e99f" \ + -var="instance_type=t3.medium" working-directory: ./terraform - name: Save Plan JSON diff --git a/ansible/compose.monitoring.yml b/ansible/compose.monitoring.yml index c940288..2012d46 100644 --- a/ansible/compose.monitoring.yml +++ b/ansible/compose.monitoring.yml @@ -88,6 +88,7 @@ services: - monitor-network volumes: - ./monitoring/promtail-config.yml:/etc/promtail/promtail-config.yaml + - /var/log:/var/log depends_on: - loki From 091155dc20663367125c0b294670b5e4a37cc845 Mon Sep 17 00:00:00 2001 From: Okesanya Odunayo <94924061+DrInTech22@users.noreply.github.com> Date: Mon, 16 Dec 2024 01:39:32 +0100 Subject: [PATCH 2/4] CI: update tf workflow --- .github/workflows/terraform-plan.yml | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.github/workflows/terraform-plan.yml b/.github/workflows/terraform-plan.yml index 5e88fa9..d2a454b 100644 --- a/.github/workflows/terraform-plan.yml +++ b/.github/workflows/terraform-plan.yml @@ -15,7 +15,7 @@ permissions: env: AWS_ACCESS_KEY: ${{ secrets.AWS_ACCESS_KEY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - # TF_VAR_aws_region: ${{ vars.TF_AWS_REGION }} + TF_VAR_aws_region: ${{ vars.TF_AWS_REGION }} # TF_VAR_ami_id: ${{ vars.TF_AMI_ID }} # TF_VAR_instance_type: ${{ vars.TF_INSTANCE_TYPE }} TF_VAR_key_pair_name: ${{ vars.TF_KEY_PAIR_NAME }} @@ -54,7 +54,6 @@ jobs: id: plan run: | terraform plan -out=tfplan.out \ - -var="aws_region=${{ vars.TF_AWS_REGION }}" \ -var="ami_id=ami-005fc0f236362e99f" \ -var="instance_type=t3.medium" working-directory: ./terraform @@ -77,7 +76,9 @@ jobs: - name: Run Infracost run: | - infracost breakdown --path=./terraform --format=json --out-file=/tmp/infracost-base.json + infracost breakdown --path=./terraform --format=json --out-file=/tmp/infracost-base.json \ + --terraform-var "ami_id=ami-005fc0f236362e99f" \ + --terraform-var "instance_type=t3.medium" # Checkout the current PR branch so we can create a diff. - name: Checkout PR branch @@ -85,10 +86,12 @@ jobs: - name: Generate Infracost diff run: | infracost breakdown --path=./terraform --format=table --out-file=/tmp/infracost-new.txt - infracost diff --path=./terraform \ + infracost diff --path=./terraform \ --format=json \ --compare-to=/tmp/infracost-base.json \ - --out-file=/tmp/infracost.json + --out-file=/tmp/infracost.json \ + --terraform-var "ami_id=ami-005fc0f236362e99f" \ + --terraform-var "instance_type=t3.medium" - name: Post Infracost Comment run: | From 109133f721c81109445613d263d2c9ac9f48fcb6 Mon Sep 17 00:00:00 2001 From: Okesanya Odunayo <94924061+DrInTech22@users.noreply.github.com> Date: Mon, 16 Dec 2024 01:48:48 +0100 Subject: [PATCH 3/4] CI: update tf plan worfklow --- .github/workflows/terraform-plan.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/terraform-plan.yml b/.github/workflows/terraform-plan.yml index d2a454b..d86c022 100644 --- a/.github/workflows/terraform-plan.yml +++ b/.github/workflows/terraform-plan.yml @@ -16,8 +16,8 @@ env: AWS_ACCESS_KEY: ${{ secrets.AWS_ACCESS_KEY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} TF_VAR_aws_region: ${{ vars.TF_AWS_REGION }} - # TF_VAR_ami_id: ${{ vars.TF_AMI_ID }} - # TF_VAR_instance_type: ${{ vars.TF_INSTANCE_TYPE }} + TF_VAR_ami_id: ${{ vars.TF_AMI_ID }} + TF_VAR_instance_type: ${{ vars.TF_INSTANCE_TYPE }} TF_VAR_key_pair_name: ${{ vars.TF_KEY_PAIR_NAME }} TF_VAR_private_key: ${{ secrets.PRIVATE_KEY }} TF_VAR_domain_name: ${{ vars.TF_DOMAIN_NAME }} @@ -55,7 +55,7 @@ jobs: run: | terraform plan -out=tfplan.out \ -var="ami_id=ami-005fc0f236362e99f" \ - -var="instance_type=t3.medium" + -var="instance_type=t2.large" working-directory: ./terraform - name: Save Plan JSON @@ -76,22 +76,22 @@ jobs: - name: Run Infracost run: | - infracost breakdown --path=./terraform --format=json --out-file=/tmp/infracost-base.json \ - --terraform-var "ami_id=ami-005fc0f236362e99f" \ - --terraform-var "instance_type=t3.medium" + infracost breakdown --path=./terraform --format=json --out-file=/tmp/infracost-base.json # Checkout the current PR branch so we can create a diff. - name: Checkout PR branch uses: actions/checkout@v4 - name: Generate Infracost diff run: | - infracost breakdown --path=./terraform --format=table --out-file=/tmp/infracost-new.txt + infracost breakdown --path=./terraform --format=table --out-file=/tmp/infracost-new.txt \ + --terraform-var "ami_id=ami-005fc0f236362e99f" \ + --terraform-var "instance_type=t2.large" infracost diff --path=./terraform \ --format=json \ --compare-to=/tmp/infracost-base.json \ --out-file=/tmp/infracost.json \ --terraform-var "ami_id=ami-005fc0f236362e99f" \ - --terraform-var "instance_type=t3.medium" + --terraform-var "instance_type=t2.large" - name: Post Infracost Comment run: | From 07479061c0dcf52f68046744e913f41e89e2292f Mon Sep 17 00:00:00 2001 From: Okesanya Odunayo <94924061+DrInTech22@users.noreply.github.com> Date: Mon, 16 Dec 2024 01:56:24 +0100 Subject: [PATCH 4/4] chore: remove an extra ec2 in tf --- terraform/ec2.tf | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/terraform/ec2.tf b/terraform/ec2.tf index 718e7ab..6a1b191 100644 --- a/terraform/ec2.tf +++ b/terraform/ec2.tf @@ -11,15 +11,4 @@ resource "aws_instance" "ec2" { provisioner "local-exec" { command = "echo 'Instance provisioned: ${self.public_ip}'" } -} - -resource "aws_instance" "ec2-2" { - ami = var.ami_id - instance_type = var.instance_type - key_name = var.key_pair_name - subnet_id = aws_subnet.public_subnet.id - vpc_security_group_ids = [aws_security_group.sg.id] - tags = { - Name = var.ec2_name - } } \ No newline at end of file