From 75e2530c74e32ee50d17bfdccaa8f23552b94a56 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 16 Jul 2024 12:57:44 -0400 Subject: [PATCH 01/67] Added Rhel pipeline Module for testing. --- main.tf | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/main.tf b/main.tf index b8f55cb..22a33b0 100644 --- a/main.tf +++ b/main.tf @@ -142,6 +142,38 @@ module "rhel" { instance_type = "t2.micro" } +module "rhel-arm" { + source = "HappyPathway/image-pipeline/aws" + project_name = "rhel-arm-image-pipeline-demo" + source_repo_name = local.source_repo + source_repo_branch = "main" + builder_image = "aws/codebuild/standard:7.0" + create_new_repo = false + create_new_role = true + create_vpc_endpoint = false + ssh_user = "ec2-user" + playbook = "rhel-arm-baseline.yaml" + terraform_version = "1.8.5" + build_permissions_iam_doc = data.aws_iam_policy_document.s3_access + build_environment_variables = [ + for proxy_var in keys(local.proxy_env_vars) : + { + name=proxy_var, + value=lookup(local.proxy_env_vars, proxy_var), + type = "PLAINTEXT" + } + ] + ansible_repo = data.aws_codecommit_repository.ansible + goss_repo = data.aws_codecommit_repository.goss + goss_profile = "rhel-arm-base-test" + state = local.state_config + vpc_config = local.vpc_config + source_ami = "ami-0ce8fc041db68907c" + instance_type = "t4g.micro" +} + + + resource random_password winrm { length = 24 override_special = "$*!" From 304e7f803d8214ebea9e71dacc9a3397d56e51dc Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 16 Jul 2024 16:50:12 -0400 Subject: [PATCH 02/67] Working Init and validate. SSO working. --- backend.tf | 1 + 1 file changed, 1 insertion(+) diff --git a/backend.tf b/backend.tf index 7395341..a4e98d2 100644 --- a/backend.tf +++ b/backend.tf @@ -4,5 +4,6 @@ terraform { key = "csvd-dev-gov/common/apps/aws-image-pipeline-demo" region = "us-gov-east-1" dynamodb_table = "tf_remote_state" + profile = "229685449397-csvd-dev-gov.inf-admin-t2" } } From ca639b91f73c2f14e1d16705c579feadfa910b68 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 16 Jul 2024 18:21:45 -0400 Subject: [PATCH 03/67] Rhel AMI Pipleine | Terraform plan working --- main.tf | 58 +++++++++++++++----------------------------------------- tfplan | Bin 0 -> 190344 bytes 2 files changed, 15 insertions(+), 43 deletions(-) create mode 100644 tfplan diff --git a/main.tf b/main.tf index 22a33b0..4278363 100644 --- a/main.tf +++ b/main.tf @@ -1,3 +1,8 @@ +provider "aws" { + region = "us-gov-west-1" + profile = "229685449397-csvd-dev-gov.inf-admin-t2" +} + locals { proxy_env_vars = { @@ -112,36 +117,6 @@ module "main" { } -module "rhel" { - source = "HappyPathway/image-pipeline/aws" - project_name = "rhel-image-pipeline-demo" - source_repo_name = local.source_repo - source_repo_branch = "main" - builder_image = "aws/codebuild/standard:7.0" - create_new_repo = false - create_new_role = true - create_vpc_endpoint = false # we already created one for this vpc - ssh_user = "ec2-user" - playbook = "rhel-baseline.yaml" - terraform_version = "1.8.5" - build_permissions_iam_doc = data.aws_iam_policy_document.s3_access - build_environment_variables = [ - for proxy_var in keys(local.proxy_env_vars) : - { - name=proxy_var, - value=lookup(local.proxy_env_vars, proxy_var), - type = "PLAINTEXT" - } - ] - ansible_repo = data.aws_codecommit_repository.ansible - goss_repo = data.aws_codecommit_repository.goss - goss_profile = "rhel-base-test" - state = local.state_config - vpc_config = local.vpc_config - source_ami = "ami-0ce8fc041db68907c" - instance_type = "t2.micro" -} - module "rhel-arm" { source = "HappyPathway/image-pipeline/aws" project_name = "rhel-arm-image-pipeline-demo" @@ -150,30 +125,27 @@ module "rhel-arm" { builder_image = "aws/codebuild/standard:7.0" create_new_repo = false create_new_role = true - create_vpc_endpoint = false + create_vpc_endpoint = false ssh_user = "ec2-user" playbook = "rhel-arm-baseline.yaml" terraform_version = "1.8.5" build_permissions_iam_doc = data.aws_iam_policy_document.s3_access build_environment_variables = [ - for proxy_var in keys(local.proxy_env_vars) : - { - name=proxy_var, - value=lookup(local.proxy_env_vars, proxy_var), - type = "PLAINTEXT" - } + for proxy_var in keys(local.proxy_env_vars) : { + name = proxy_var, + value = lookup(local.proxy_env_vars, proxy_var), + type = "PLAINTEXT" + } ] ansible_repo = data.aws_codecommit_repository.ansible goss_repo = data.aws_codecommit_repository.goss goss_profile = "rhel-arm-base-test" - state = local.state_config - vpc_config = local.vpc_config - source_ami = "ami-0ce8fc041db68907c" - instance_type = "t4g.micro" + state = local.state_config + vpc_config = local.vpc_config + source_ami = "ami-0ce8fc041db68907c" + instance_type = "t4g.micro" } - - resource random_password winrm { length = 24 override_special = "$*!" diff --git a/tfplan b/tfplan new file mode 100644 index 0000000000000000000000000000000000000000..21380ad12b70b71946eb961123e42bb87e167db2 GIT binary patch literal 190344 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%0AhRL;le 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 literal 0 HcmV?d00001 From e02fc504c31ed869f3a7afe88574f26384b317a5 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 17 Jul 2024 15:10:12 -0400 Subject: [PATCH 04/67] Iam Policy added | Apply Works --- README.md | 5 +++++ iam_policy.tf | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 iam_policy.tf diff --git a/README.md b/README.md index c4195ac..c6b12d1 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,7 @@ # aws-image-pipeline Terraform Workspace for creating and managing AWS Image Pipelines + + + +To SSO Login: +aws sso login --profile 229685449397-csvd-dev-gov.inf-admin-t2 \ No newline at end of file diff --git a/iam_policy.tf b/iam_policy.tf new file mode 100644 index 0000000..8fcfbfd --- /dev/null +++ b/iam_policy.tf @@ -0,0 +1,36 @@ +resource "aws_iam_policy" "rhel_arm_codepipeline_permissions" { + name = "rhel-arm-codepipeline-permissions" + description = "IAM policy for RHEL ARM CodePipeline to access necessary CodeCommit repositories" + policy = jsonencode({ + Version = "2012-10-17" + Statement = [ + { + Effect = "Allow" + Action = [ + "codecommit:GetBranch", + "codecommit:GetCommit", + "codecommit:UploadArchive", + "codecommit:ListRepositories", + "codecommit:ListBranches", + "codecommit:GitPush", + "codecommit:GitPull", + "codecommit:GetUploadArchiveStatus", + "codecommit:GetRepository", + "codecommit:CreateCommit", + "codecommit:BatchGetRepositories", + "codecommit:BatchGetCommits" + ] + Resource = [ + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:linux-image-pipeline", + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-ansible-playbooks", + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-goss-testing" + ] + } + ] + }) +} + +resource "aws_iam_role_policy_attachment" "rhel_arm_codepipeline_role_attachment" { + role = "rhel-arm-image-pipeline-demo-codepipeline-role" + policy_arn = aws_iam_policy.rhel_arm_codepipeline_permissions.arn +} From f12253be27f68da5c3335dde594cefc9822089fd Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 17 Jul 2024 15:56:29 -0400 Subject: [PATCH 05/67] Added pkr file and updated main.tf --- main.tf | 1 + modules/image-pipeline/build.pkr.hcl | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 modules/image-pipeline/build.pkr.hcl diff --git a/main.tf b/main.tf index 4278363..2b9abca 100644 --- a/main.tf +++ b/main.tf @@ -146,6 +146,7 @@ module "rhel-arm" { instance_type = "t4g.micro" } + resource random_password winrm { length = 24 override_special = "$*!" diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl new file mode 100644 index 0000000..c38e35a --- /dev/null +++ b/modules/image-pipeline/build.pkr.hcl @@ -0,0 +1,25 @@ +variable "project_name" { + type = string + default = "rhel-arm-image-pipeline-demo" +} + +variable "ansible_dir" { + type = string + default = "" +} + +source "amazon-ebs" "rhel-arm" { + ami_name = "${var.project_name}-{{timestamp}}" + instance_type = "t4g.micro" + region = "us-gov-west-1" + source_ami = "ami-0ce8fc041db68907c" + ssh_username = "ec2-user" +} + +build { + sources = ["source.amazon-ebs.rhel-arm"] + + provisioner "ansible" { + playbook_file = "${var.ansible_dir}/rhel-arm-baseline.yaml" + } +} From d29b1ba5263bf317eb1a9318937411c5787fcf63 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 18 Jul 2024 16:59:22 -0400 Subject: [PATCH 06/67] Updated | Added git repos --- .github/workflows/sync-to-codecommit.yml | 29 ++++++++++++++++++++++++ ansible/rhel-arm-baseline.yaml | 21 +++++++++++++++++ buildspec.yml | 22 ++++++++++++++++++ main.tf | 3 ++- modules/image-pipeline/build.pkr.hcl | 18 +++++++++++++-- 5 files changed, 90 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/sync-to-codecommit.yml create mode 100644 ansible/rhel-arm-baseline.yaml create mode 100644 buildspec.yml diff --git a/.github/workflows/sync-to-codecommit.yml b/.github/workflows/sync-to-codecommit.yml new file mode 100644 index 0000000..cfcd699 --- /dev/null +++ b/.github/workflows/sync-to-codecommit.yml @@ -0,0 +1,29 @@ +name: Sync to CodeCommit + +on: + push: + branches: + - master + +jobs: + sync: + runs-on: ubuntu-latest + + steps: + - name: Checkout the repository + uses: actions/checkout@v2 + + - name: Configure Git for CodeCommit + run: | + git config --global credential.helper '!aws codecommit credential-helper $@' + git config --global credential.UseHttpPath true + + - name: Sync to CodeCommit - Goss Testing + run: | + git remote add goss-upstream ssh://git-codecommit.us-gov-west-1.amazonaws.com/v1/repos/image-pipeline-goss-testing + git push goss-upstream master --force + + - name: Sync to CodeCommit - Ansible Playbooks + run: | + git remote add ansible-upstream ssh://git-codecommit.us-gov-west-1.amazonaws.com/v1/repos/image-pipeline-ansible-playbooks + git push ansible-upstream master --force \ No newline at end of file diff --git a/ansible/rhel-arm-baseline.yaml b/ansible/rhel-arm-baseline.yaml new file mode 100644 index 0000000..d01cea0 --- /dev/null +++ b/ansible/rhel-arm-baseline.yaml @@ -0,0 +1,21 @@ +--- +- name: RHEL ARM Baseline Configuration + hosts: all + become: true + tasks: + - name: Ensure latest packages are installed + yum: + name: '*' + state: latest + - name: Install required packages + yum: + name: + - vim + - git + - curl + state: present + - name: Create a user + user: + name: exampleuser + state: present + groups: wheel \ No newline at end of file diff --git a/buildspec.yml b/buildspec.yml new file mode 100644 index 0000000..7783626 --- /dev/null +++ b/buildspec.yml @@ -0,0 +1,22 @@ +version: 0.2 + +phases: + install: + runtime-versions: + python: 3.11 + commands: + - echo "Installing necessary dependencies" + - pip install ansible + - pip install awscli + build: + commands: + - echo "Running Packer build" + - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} modules/image-pipeline/build.pkr.hcl + post_build: + commands: + - echo "Saving the AMI ID" + - packer build -var 'ami_id=$(cat ami_id.txt)' modules/image-pipeline/build.pkr.hcl + +artifacts: + files: + - ami_id.txt \ No newline at end of file diff --git a/main.tf b/main.tf index 2b9abca..aaa5963 100644 --- a/main.tf +++ b/main.tf @@ -127,7 +127,7 @@ module "rhel-arm" { create_new_role = true create_vpc_endpoint = false ssh_user = "ec2-user" - playbook = "rhel-arm-baseline.yaml" + playbook = "ansible/rhel-arm-baseline.yaml" # Ensure the path is correct terraform_version = "1.8.5" build_permissions_iam_doc = data.aws_iam_policy_document.s3_access build_environment_variables = [ @@ -147,6 +147,7 @@ module "rhel-arm" { } + resource random_password winrm { length = 24 override_special = "$*!" diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index c38e35a..dc091fe 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -8,8 +8,21 @@ variable "ansible_dir" { default = "" } +packer { + required_plugins { + amazon = { + version = ">= 1.3.2" + source = "github.com/hashicorp/amazon" + } + ansible = { + version = ">= 1.1.1" + source = "github.com/hashicorp/ansible" + } + } +} + source "amazon-ebs" "rhel-arm" { - ami_name = "${var.project_name}-{{timestamp}}" + ami_name = "${var.project_name}-${timestamp()}" instance_type = "t4g.micro" region = "us-gov-west-1" source_ami = "ami-0ce8fc041db68907c" @@ -17,9 +30,10 @@ source "amazon-ebs" "rhel-arm" { } build { + name = "${var.project_name}" sources = ["source.amazon-ebs.rhel-arm"] provisioner "ansible" { - playbook_file = "${var.ansible_dir}/rhel-arm-baseline.yaml" + playbook_file = "${var.ansible_dir}/ansible/rhel-arm-baseline.yaml" } } From cb98058974fa54d4c65a9ae4de7bdcf082d35bac Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 18 Jul 2024 17:10:46 -0400 Subject: [PATCH 07/67] Updated --- buildspec.yml | 29 +++++++++++++++++++++------- modules/image-pipeline/build.pkr.hcl | 17 +++------------- 2 files changed, 25 insertions(+), 21 deletions(-) diff --git a/buildspec.yml b/buildspec.yml index 7783626..08c4dcb 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -5,18 +5,33 @@ phases: runtime-versions: python: 3.11 commands: - - echo "Installing necessary dependencies" + - echo "Installing Python version 3.11 ..." + - pyenv global $PYTHON_311_VERSION + - echo "Installing Ansible and Packer ..." - pip install ansible - - pip install awscli + - curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip + - unzip -o packer.zip + - mv packer /bin + pre_build: + commands: + - echo "Configuring AWS credentials" + - aws configure set region $AWS_REGION + - aws configure set aws_access_key_id `jq -r '.AccessKeyId' aws_credentials.json` + - aws configure set aws_secret_access_key `jq -r '.SecretAccessKey' aws_credentials.json` + - aws configure set aws_session_token `jq -r '.Token' aws_credentials.json` build: commands: - - echo "Running Packer build" - - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} modules/image-pipeline/build.pkr.hcl + - echo "Building HashiCorp Packer template, build.pkr.hcl" + - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} + - /bin/packer init build.pkr.hcl + - ln -s ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/roles + - /bin/packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl post_build: commands: - - echo "Saving the AMI ID" - - packer build -var 'ami_id=$(cat ami_id.txt)' modules/image-pipeline/build.pkr.hcl + - echo "Build completed" + - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} + - test -s ami_id.txt || exit 1 artifacts: files: - - ami_id.txt \ No newline at end of file + - '**/*' \ No newline at end of file diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index dc091fe..c72da85 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -1,21 +1,11 @@ -variable "project_name" { - type = string - default = "rhel-arm-image-pipeline-demo" -} - -variable "ansible_dir" { - type = string - default = "" -} - packer { required_plugins { amazon = { - version = ">= 1.3.2" + version = ">= 1.0.0" source = "github.com/hashicorp/amazon" } ansible = { - version = ">= 1.1.1" + version = ">= 1.0.0" source = "github.com/hashicorp/ansible" } } @@ -30,10 +20,9 @@ source "amazon-ebs" "rhel-arm" { } build { - name = "${var.project_name}" sources = ["source.amazon-ebs.rhel-arm"] provisioner "ansible" { - playbook_file = "${var.ansible_dir}/ansible/rhel-arm-baseline.yaml" + playbook_file = "${var.ansible_dir}/rhel-arm-baseline.yaml" } } From 7ce4f449b420e5d428883b75dc4f012b51c8264d Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 18 Jul 2024 17:49:47 -0400 Subject: [PATCH 08/67] Updated pipeline configs and playbooks --- .github/workflows/sync-to-codecommit.yml | 32 +++++++++--------- ansible/rhel-arm-baseline.yaml | 43 +++++++++++++----------- buildspec.yml | 31 ++++------------- 3 files changed, 46 insertions(+), 60 deletions(-) diff --git a/.github/workflows/sync-to-codecommit.yml b/.github/workflows/sync-to-codecommit.yml index cfcd699..68512ce 100644 --- a/.github/workflows/sync-to-codecommit.yml +++ b/.github/workflows/sync-to-codecommit.yml @@ -3,27 +3,29 @@ name: Sync to CodeCommit on: push: branches: - - master + - main jobs: sync: runs-on: ubuntu-latest steps: - - name: Checkout the repository - uses: actions/checkout@v2 + - name: Checkout code + uses: actions/checkout@v2 - - name: Configure Git for CodeCommit - run: | - git config --global credential.helper '!aws codecommit credential-helper $@' - git config --global credential.UseHttpPath true + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-gov-west-1 - - name: Sync to CodeCommit - Goss Testing - run: | - git remote add goss-upstream ssh://git-codecommit.us-gov-west-1.amazonaws.com/v1/repos/image-pipeline-goss-testing - git push goss-upstream master --force + - name: Sync to CodeCommit Goss Testing + run: | + git remote add goss-upstream ssh://git-codecommit.us-gov-west-1.amazonaws.com/v1/repos/image-pipeline-goss-testing + git push goss-upstream main --force - - name: Sync to CodeCommit - Ansible Playbooks - run: | - git remote add ansible-upstream ssh://git-codecommit.us-gov-west-1.amazonaws.com/v1/repos/image-pipeline-ansible-playbooks - git push ansible-upstream master --force \ No newline at end of file + - name: Sync to CodeCommit Ansible Playbooks + run: | + git remote add ansible-upstream ssh://git-codecommit.us-gov-west-1.amazonaws.com/v1/repos/image-pipeline-ansible-playbooks + git push ansible-upstream main --force \ No newline at end of file diff --git a/ansible/rhel-arm-baseline.yaml b/ansible/rhel-arm-baseline.yaml index d01cea0..709c935 100644 --- a/ansible/rhel-arm-baseline.yaml +++ b/ansible/rhel-arm-baseline.yaml @@ -1,21 +1,24 @@ --- -- name: RHEL ARM Baseline Configuration - hosts: all - become: true - tasks: - - name: Ensure latest packages are installed - yum: - name: '*' - state: latest - - name: Install required packages - yum: - name: - - vim - - git - - curl - state: present - - name: Create a user - user: - name: exampleuser - state: present - groups: wheel \ No newline at end of file +name: RHEL ARM Baseline +hosts: all +become: true + +tasks: + - name: Ensure latest packages are installed + yum: + name: '*' + state: latest + + - name: Install required packages + yum: + name: + - vim + - git + - curl + state: present + + - name: Create example user + user: + name: exampleuser + state: present + groups: wheel \ No newline at end of file diff --git a/buildspec.yml b/buildspec.yml index 08c4dcb..140d9b1 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -5,33 +5,14 @@ phases: runtime-versions: python: 3.11 commands: - - echo "Installing Python version 3.11 ..." - - pyenv global $PYTHON_311_VERSION - - echo "Installing Ansible and Packer ..." - - pip install ansible - - curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip - - unzip -o packer.zip - - mv packer /bin - pre_build: - commands: - - echo "Configuring AWS credentials" - - aws configure set region $AWS_REGION - - aws configure set aws_access_key_id `jq -r '.AccessKeyId' aws_credentials.json` - - aws configure set aws_secret_access_key `jq -r '.SecretAccessKey' aws_credentials.json` - - aws configure set aws_session_token `jq -r '.Token' aws_credentials.json` + - echo "Installing dependencies..." + - pip install ansible boto3 + build: commands: - - echo "Building HashiCorp Packer template, build.pkr.hcl" - - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} - - /bin/packer init build.pkr.hcl - - ln -s ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/roles - - /bin/packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl - post_build: - commands: - - echo "Build completed" - - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} - - test -s ami_id.txt || exit 1 + - echo "Running Packer build..." + - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl artifacts: files: - - '**/*' \ No newline at end of file + - '**/*' From a88ed68562dbc1bade7c85618d3ebf2594379f41 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 14:29:47 -0400 Subject: [PATCH 09/67] Updated Baseline --- README.md | 9 +++++- ansible/rhel-arm-baseline.yaml | 53 +++++++++++++++++++++++++++++++++- 2 files changed, 60 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c6b12d1..c486fcb 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,11 @@ Terraform Workspace for creating and managing AWS Image Pipelines To SSO Login: -aws sso login --profile 229685449397-csvd-dev-gov.inf-admin-t2 \ No newline at end of file +aws sso login --profile 229685449397-csvd-dev-gov.inf-admin-t2 + +export AWS_PROFILE=229685449397-csvd-dev-gov.inf-admin-t2 + +aws sts get-caller-identity + + +rebecaa linn : She does x86 (get context for ARM) \ No newline at end of file diff --git a/ansible/rhel-arm-baseline.yaml b/ansible/rhel-arm-baseline.yaml index 709c935..48551e5 100644 --- a/ansible/rhel-arm-baseline.yaml +++ b/ansible/rhel-arm-baseline.yaml @@ -1,9 +1,13 @@ --- + name: RHEL ARM Baseline + hosts: all + become: true tasks: + - name: Ensure latest packages are installed yum: name: '*' @@ -15,10 +19,57 @@ tasks: - vim - git - curl + - wget + - net-tools + - unzip + - epel-release + - htop state: present - name: Create example user user: name: exampleuser state: present - groups: wheel \ No newline at end of file + groups: wheel + shell: /bin/bash + password: "{{ 'password' | password_hash('sha512') }}" # Need to change password here + + - name: Configure SSH for exampleuser + authorized_key: + user: exampleuser + state: present + key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key + + - name: Ensure firewalld is installed and running + yum: + name: firewalld + state: present + + - name: Start and enable firewalld + service: + name: firewalld + state: started + enabled: yes + + - name: Open SSH port in firewall + firewalld: + service: ssh + permanent: true + state: enabled + immediate: yes + + - name: Disable SELinux + selinux: + state: disabled + + - name: Set timezone to UTC + command: timedatectl set-timezone UTC + + - name: Reboot the system to apply changes + reboot: + msg: "Reboot initiated by Ansible for baseline setup" + connect_timeout: 5 + reboot_timeout: 600 + pre_reboot_delay: 0 + post_reboot_delay: 30 + test_command: whoami \ No newline at end of file From f843e5fffb2b797dc05e1ac7233969f87e1004c4 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 14:55:44 -0400 Subject: [PATCH 10/67] Updated --- README.md | 10 +++++++++- ansible/rhel-arm-baseline.yaml | 3 ++- buildspec.yml | 16 +++++++-------- modules/image-pipeline/build.pkr.hcl | 29 +++++++++++----------------- 4 files changed, 29 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index c486fcb..1035740 100644 --- a/README.md +++ b/README.md @@ -10,5 +10,13 @@ export AWS_PROFILE=229685449397-csvd-dev-gov.inf-admin-t2 aws sts get-caller-identity +git push origin main --force +git push ansible-upstream main --force +git push goss-upstream main --force + +rebecaa linn : She does x86 (get context for ARM) + + +cd ~/.aws/ + -rebecaa linn : She does x86 (get context for ARM) \ No newline at end of file diff --git a/ansible/rhel-arm-baseline.yaml b/ansible/rhel-arm-baseline.yaml index 48551e5..3eb6b5e 100644 --- a/ansible/rhel-arm-baseline.yaml +++ b/ansible/rhel-arm-baseline.yaml @@ -1,3 +1,4 @@ + --- name: RHEL ARM Baseline @@ -32,7 +33,7 @@ tasks: state: present groups: wheel shell: /bin/bash - password: "{{ 'password' | password_hash('sha512') }}" # Need to change password here + password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash - name: Configure SSH for exampleuser authorized_key: diff --git a/buildspec.yml b/buildspec.yml index 140d9b1..5609c65 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -5,14 +5,12 @@ phases: runtime-versions: python: 3.11 commands: - - echo "Installing dependencies..." - - pip install ansible boto3 - + - echo "Installing Python version 3.11 ... + - pyenv global $PYTHON_311_VERSION + - echo "Installing Ansible ..." + - pip3 install ansible build: commands: - - echo "Running Packer build..." - - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl - -artifacts: - files: - - '**/*' + - echo "Building with Packer ..." + - packer init build.pkr.hcl + - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR}/ansible build.pkr.hcl \ No newline at end of file diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index c72da85..ffc5da8 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -1,18 +1,5 @@ -packer { - required_plugins { - amazon = { - version = ">= 1.0.0" - source = "github.com/hashicorp/amazon" - } - ansible = { - version = ">= 1.0.0" - source = "github.com/hashicorp/ansible" - } - } -} - -source "amazon-ebs" "rhel-arm" { - ami_name = "${var.project_name}-${timestamp()}" +source "amazon-ebs" "rhel" { + ami_name = "rhel-arm-{{timestamp}}" instance_type = "t4g.micro" region = "us-gov-west-1" source_ami = "ami-0ce8fc041db68907c" @@ -20,9 +7,15 @@ source "amazon-ebs" "rhel-arm" { } build { - sources = ["source.amazon-ebs.rhel-arm"] + sources = ["source.amazon-ebs.rhel"] provisioner "ansible" { - playbook_file = "${var.ansible_dir}/rhel-arm-baseline.yaml" + playbook_file = "ansible/rhel-arm-baseline.yaml" } -} + + post-processor "shell-local" { + inline = [ + "echo 'Build finished!'", + ] + } +} \ No newline at end of file From 0a89965d5539af08b72ae8ebc57035daa04ec082 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 15:21:19 -0400 Subject: [PATCH 11/67] Updated Testing --- buildspec.yml | 9 +++++++-- modules/image-pipeline/build.pkr.hcl | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/buildspec.yml b/buildspec.yml index 5609c65..b7c5348 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -5,7 +5,7 @@ phases: runtime-versions: python: 3.11 commands: - - echo "Installing Python version 3.11 ... + - echo "Installing Python version 3.11 ..." - pyenv global $PYTHON_311_VERSION - echo "Installing Ansible ..." - pip3 install ansible @@ -13,4 +13,9 @@ phases: commands: - echo "Building with Packer ..." - packer init build.pkr.hcl - - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR}/ansible build.pkr.hcl \ No newline at end of file + - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR}/ansible build.pkr.hcl + post_build: + commands: + - echo "Saving AMI ID ..." + - packer build -machine-readable build.pkr.hcl | tee >(grep 'artifact,0,id' | cut -d, -f6 | cut -d: -f2 > ami_id.txt) + - test -s ami_id.txt || exit 1 \ No newline at end of file diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index ffc5da8..ad15649 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -2,7 +2,7 @@ source "amazon-ebs" "rhel" { ami_name = "rhel-arm-{{timestamp}}" instance_type = "t4g.micro" region = "us-gov-west-1" - source_ami = "ami-0ce8fc041db68907c" + source_ami = "ami-06ac1fe9004042996" ssh_username = "ec2-user" } From 19ed3edd4ce966f74e9bf14c5ec41a59b006474f Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 15:41:00 -0400 Subject: [PATCH 12/67] Updated and testing --- README.md | 7 +++++++ main.tf | 6 +++--- modules/image-pipeline/build.pkr.hcl | 2 +- ansible/rhel-arm-baseline.yaml => rhel-arm-baseline.yaml | 0 4 files changed, 11 insertions(+), 4 deletions(-) rename ansible/rhel-arm-baseline.yaml => rhel-arm-baseline.yaml (100%) diff --git a/README.md b/README.md index 1035740..e9b46e3 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,13 @@ export AWS_PROFILE=229685449397-csvd-dev-gov.inf-admin-t2 aws sts get-caller-identity + +Git Syncing / Mirroring: + +git remote add ansible-upstream https://git-codecommit.us-gov-west-1.amazonaws.com/v1/repos/image-pipeline-ansible-playbooks + +git remote add goss-upstream https://git-codecommit.us-gov-west-1.amazonaws.com/v1/repos/image-pipeline-goss-testing + git push origin main --force git push ansible-upstream main --force git push goss-upstream main --force diff --git a/main.tf b/main.tf index aaa5963..5ff36f6 100644 --- a/main.tf +++ b/main.tf @@ -127,7 +127,7 @@ module "rhel-arm" { create_new_role = true create_vpc_endpoint = false ssh_user = "ec2-user" - playbook = "ansible/rhel-arm-baseline.yaml" # Ensure the path is correct + playbook = "rhel-arm-baseline.yaml" # Updated path to main directory terraform_version = "1.8.5" build_permissions_iam_doc = data.aws_iam_policy_document.s3_access build_environment_variables = [ @@ -142,8 +142,8 @@ module "rhel-arm" { goss_profile = "rhel-arm-base-test" state = local.state_config vpc_config = local.vpc_config - source_ami = "ami-0ce8fc041db68907c" - instance_type = "t4g.micro" + source_ami = "ami-06ac1fe9004042996" # Updated AMI ID for RHEL 9 ARM + instance_type = "t4g.micro" # Ensure the instance type is ARM64 compatible } diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index ad15649..8a66da3 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -2,7 +2,7 @@ source "amazon-ebs" "rhel" { ami_name = "rhel-arm-{{timestamp}}" instance_type = "t4g.micro" region = "us-gov-west-1" - source_ami = "ami-06ac1fe9004042996" + source_ami = "ami-06ac1fe9004042996" # Updated AMI ID for RHEL 9 ARM ssh_username = "ec2-user" } diff --git a/ansible/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml similarity index 100% rename from ansible/rhel-arm-baseline.yaml rename to rhel-arm-baseline.yaml From 960a0be765fe18d05f61a8692870c6ff1531f4a7 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 15:55:43 -0400 Subject: [PATCH 13/67] Updated to test --- rhel-arm-baseline.yaml | 125 ++++++++++++++++++++--------------------- 1 file changed, 60 insertions(+), 65 deletions(-) diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index 3eb6b5e..9049e43 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -1,76 +1,71 @@ - --- +- name: RHEL ARM Baseline + hosts: all + become: true -name: RHEL ARM Baseline - -hosts: all - -become: true - -tasks: - - - name: Ensure latest packages are installed - yum: - name: '*' - state: latest + tasks: + - name: Ensure latest packages are installed + yum: + name: '*' + state: latest - - name: Install required packages - yum: - name: - - vim - - git - - curl - - wget - - net-tools - - unzip - - epel-release - - htop - state: present + - name: Install required packages + yum: + name: + - vim + - git + - curl + - wget + - net-tools + - unzip + - epel-release + - htop + state: present - - name: Create example user - user: - name: exampleuser - state: present - groups: wheel - shell: /bin/bash - password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash + - name: Create example user + user: + name: exampleuser + state: present + groups: wheel + shell: /bin/bash + password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash - - name: Configure SSH for exampleuser - authorized_key: - user: exampleuser - state: present - key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key + - name: Configure SSH for exampleuser + authorized_key: + user: exampleuser + state: present + key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key - - name: Ensure firewalld is installed and running - yum: - name: firewalld - state: present + - name: Ensure firewalld is installed and running + yum: + name: firewalld + state: present - - name: Start and enable firewalld - service: - name: firewalld - state: started - enabled: yes + - name: Start and enable firewalld + service: + name: firewalld + state: started + enabled: yes - - name: Open SSH port in firewall - firewalld: - service: ssh - permanent: true - state: enabled - immediate: yes + - name: Open SSH port in firewall + firewalld: + service: ssh + permanent: true + state: enabled + immediate: yes - - name: Disable SELinux - selinux: - state: disabled + - name: Disable SELinux + selinux: + state: disabled - - name: Set timezone to UTC - command: timedatectl set-timezone UTC + - name: Set timezone to UTC + command: timedatectl set-timezone UTC - - name: Reboot the system to apply changes - reboot: - msg: "Reboot initiated by Ansible for baseline setup" - connect_timeout: 5 - reboot_timeout: 600 - pre_reboot_delay: 0 - post_reboot_delay: 30 - test_command: whoami \ No newline at end of file + - name: Reboot the system to apply changes + reboot: + msg: "Reboot initiated by Ansible for baseline setup" + connect_timeout: 5 + reboot_timeout: 600 + pre_reboot_delay: 0 + post_reboot_delay: 30 + test_command: whoami \ No newline at end of file From b40a7e3f0b4a8b8ba9a29d9a9bcdbb144e69927b Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 16:19:08 -0400 Subject: [PATCH 14/67] Updated AMI --- main.tf | 4 ++-- modules/image-pipeline/build.pkr.hcl | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/main.tf b/main.tf index 5ff36f6..4314491 100644 --- a/main.tf +++ b/main.tf @@ -142,8 +142,8 @@ module "rhel-arm" { goss_profile = "rhel-arm-base-test" state = local.state_config vpc_config = local.vpc_config - source_ami = "ami-06ac1fe9004042996" # Updated AMI ID for RHEL 9 ARM - instance_type = "t4g.micro" # Ensure the instance type is ARM64 compatible + source_ami = "ami-0fac797136d219c79" # Updated AMI ID for RHEL 9 ARM + instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible } diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index 8a66da3..b24e3e6 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -2,7 +2,7 @@ source "amazon-ebs" "rhel" { ami_name = "rhel-arm-{{timestamp}}" instance_type = "t4g.micro" region = "us-gov-west-1" - source_ami = "ami-06ac1fe9004042996" # Updated AMI ID for RHEL 9 ARM + source_ami = "ami-0fac797136d219c79" # Updated AMI ID for RHEL 9 ARM ssh_username = "ec2-user" } From 2fe52359e495dff23ad1d340a4625a0013af9a6b Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 16:41:45 -0400 Subject: [PATCH 15/67] Updated --- main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.tf b/main.tf index 4314491..73ff95e 100644 --- a/main.tf +++ b/main.tf @@ -143,7 +143,7 @@ module "rhel-arm" { state = local.state_config vpc_config = local.vpc_config source_ami = "ami-0fac797136d219c79" # Updated AMI ID for RHEL 9 ARM - instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible + instance_type = "t4g.micro" # Ensure the instance type is ARM64 compatible } From 53313d2b914de9ea53e080dcc44de7f21214d02b Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 17:08:21 -0400 Subject: [PATCH 16/67] Updated AMI --- main.tf | 2 +- modules/image-pipeline/build.pkr.hcl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/main.tf b/main.tf index 73ff95e..694be33 100644 --- a/main.tf +++ b/main.tf @@ -142,7 +142,7 @@ module "rhel-arm" { goss_profile = "rhel-arm-base-test" state = local.state_config vpc_config = local.vpc_config - source_ami = "ami-0fac797136d219c79" # Updated AMI ID for RHEL 9 ARM + source_ami = "ami-014172793a1595e6c" # Updated AMI ID for RHEL 9 ARM instance_type = "t4g.micro" # Ensure the instance type is ARM64 compatible } diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index b24e3e6..f8f1b07 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -2,7 +2,7 @@ source "amazon-ebs" "rhel" { ami_name = "rhel-arm-{{timestamp}}" instance_type = "t4g.micro" region = "us-gov-west-1" - source_ami = "ami-0fac797136d219c79" # Updated AMI ID for RHEL 9 ARM + source_ami = "ami-014172793a1595e6c" # Updated AMI ID for RHEL 9 ARM ssh_username = "ec2-user" } From 27b6e585781946d1044b20242f49e8d52c9c42c2 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 17:18:22 -0400 Subject: [PATCH 17/67] x86 updated and ami --- main.tf | 4 ++-- modules/image-pipeline/build.pkr.hcl | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/main.tf b/main.tf index 694be33..7e31615 100644 --- a/main.tf +++ b/main.tf @@ -142,8 +142,8 @@ module "rhel-arm" { goss_profile = "rhel-arm-base-test" state = local.state_config vpc_config = local.vpc_config - source_ami = "ami-014172793a1595e6c" # Updated AMI ID for RHEL 9 ARM - instance_type = "t4g.micro" # Ensure the instance type is ARM64 compatible + source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM + instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible } diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index f8f1b07..4c13377 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -1,8 +1,8 @@ source "amazon-ebs" "rhel" { ami_name = "rhel-arm-{{timestamp}}" - instance_type = "t4g.micro" + instance_type = "t3.micro" region = "us-gov-west-1" - source_ami = "ami-014172793a1595e6c" # Updated AMI ID for RHEL 9 ARM + source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM ssh_username = "ec2-user" } From 88b13060cc28dbcb4469c17f129102d8f1670ce5 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 17:49:29 -0400 Subject: [PATCH 18/67] Updated KMS --- iam_policy.tf | 62 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 56 insertions(+), 6 deletions(-) diff --git a/iam_policy.tf b/iam_policy.tf index 8fcfbfd..b557853 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -1,6 +1,6 @@ -resource "aws_iam_policy" "rhel_arm_codepipeline_permissions" { - name = "rhel-arm-codepipeline-permissions" - description = "IAM policy for RHEL ARM CodePipeline to access necessary CodeCommit repositories" +resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { + name = "rhel-x86-codepipeline-permissions" + description = "IAM policy for RHEL x86 CodePipeline to access necessary AWS services" policy = jsonencode({ Version = "2012-10-17" Statement = [ @@ -25,12 +25,62 @@ resource "aws_iam_policy" "rhel_arm_codepipeline_permissions" { "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-ansible-playbooks", "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-goss-testing" ] + }, + { + Effect = "Allow" + Action = [ + "ec2:DescribeInstances", + "ec2:DescribeImages", + "ec2:DescribeInstanceStatus", + "ec2:RunInstances", + "ec2:TerminateInstances", + "ec2:CreateTags", + "ec2:DescribeKeyPairs", + "ec2:DescribeSecurityGroups", + "ec2:DescribeSubnets", + "ec2:DescribeVpcs", + "ec2:DescribeVolumes", + "ec2:DescribeSnapshots", + "ec2:CreateImage", + "ec2:CreateSnapshot", + "ec2:RegisterImage" + ] + Resource = "*" + }, + { + Effect = "Allow" + Action = [ + "s3:GetObject", + "s3:PutObject", + "s3:ListBucket" + ] + Resource = [ + "arn:aws-us-gov:s3:::your-bucket-name", + "arn:aws-us-gov:s3:::your-bucket-name/*" + ] + }, + { + Effect = "Allow" + Action = [ + "kms:Encrypt", + "kms:Decrypt", + "kms:GenerateDataKey", + "kms:DescribeKey" + ] + Resource = "arn:aws:kms:us-gov-west-1:229685449397:key/your-key-id" + }, + { + Effect = "Allow" + Action = [ + "iam:PassRole" + ] + Resource = "arn:aws:iam::229685449397:role/rhel-x86-image-pipeline-demo-codepipeline-role" } ] }) } -resource "aws_iam_role_policy_attachment" "rhel_arm_codepipeline_role_attachment" { - role = "rhel-arm-image-pipeline-demo-codepipeline-role" - policy_arn = aws_iam_policy.rhel_arm_codepipeline_permissions.arn +resource "aws_iam_role_policy_attachment" "rhel_x86_codepipeline_role_attachment" { + role = "rhel-x86-image-pipeline-demo-codepipeline-role" + policy_arn = aws_iam_policy.rhel_x86_codepipeline_permissions.arn } From ad8788037ea195a09c5241c75b43cde6845ad16a Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 18:05:42 -0400 Subject: [PATCH 19/67] Updated KMS --- iam_policy.tf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/iam_policy.tf b/iam_policy.tf index b557853..c55e2a5 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -67,14 +67,14 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { "kms:GenerateDataKey", "kms:DescribeKey" ] - Resource = "arn:aws:kms:us-gov-west-1:229685449397:key/your-key-id" + Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/your-key-id" }, { Effect = "Allow" Action = [ "iam:PassRole" ] - Resource = "arn:aws:iam::229685449397:role/rhel-x86-image-pipeline-demo-codepipeline-role" + Resource = "arn:aws-us-gov:iam::229685449397:role/rhel-x86-image-pipeline-demo-codepipeline-role" } ] }) @@ -83,4 +83,4 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { resource "aws_iam_role_policy_attachment" "rhel_x86_codepipeline_role_attachment" { role = "rhel-x86-image-pipeline-demo-codepipeline-role" policy_arn = aws_iam_policy.rhel_x86_codepipeline_permissions.arn -} +} \ No newline at end of file From 5f0d6aa7d24896f4f7b9d32e58a8fac89267716a Mon Sep 17 00:00:00 2001 From: lolli001 Date: Fri, 19 Jul 2024 19:39:23 -0400 Subject: [PATCH 20/67] Updated to test --- iam_policy.tf | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/iam_policy.tf b/iam_policy.tf index c55e2a5..75df451 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -1,3 +1,20 @@ +resource "aws_iam_role" "rhel_x86_codepipeline_role" { + name = "rhel-x86-image-pipeline-demo-codepipeline-role" + + assume_role_policy = jsonencode({ + Version = "2012-10-17" + Statement = [ + { + Effect = "Allow" + Principal = { + Service = "codepipeline.amazonaws.com" + } + Action = "sts:AssumeRole" + } + ] + }) +} + resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { name = "rhel-x86-codepipeline-permissions" description = "IAM policy for RHEL x86 CodePipeline to access necessary AWS services" @@ -81,6 +98,6 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { } resource "aws_iam_role_policy_attachment" "rhel_x86_codepipeline_role_attachment" { - role = "rhel-x86-image-pipeline-demo-codepipeline-role" + role = aws_iam_role.rhel_x86_codepipeline_role.name policy_arn = aws_iam_policy.rhel_x86_codepipeline_permissions.arn -} \ No newline at end of file +} From 2324789bc202a9f909b09cc8582cf9bc0c94b41c Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 23 Jul 2024 13:54:02 -0400 Subject: [PATCH 21/67] Updated KMS --- iam_policy.tf | 2 +- modules/image-pipeline/build.pkr.hcl | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/iam_policy.tf b/iam_policy.tf index 75df451..964bc08 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -84,7 +84,7 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { "kms:GenerateDataKey", "kms:DescribeKey" ] - Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/your-key-id" + Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/02684d21-d541-4d83-8e0b-e8c95877d8cb" }, { Effect = "Allow" diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index 4c13377..b489581 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -1,3 +1,8 @@ +variable "kms_key_id" { + type = string + default = "k-kms-csvd-dev-dssasdas-ugw1" +} + source "amazon-ebs" "rhel" { ami_name = "rhel-arm-{{timestamp}}" instance_type = "t3.micro" From f2f7bb4281c594a7b587d049e9ffa046d39c8cb3 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 23 Jul 2024 14:16:43 -0400 Subject: [PATCH 22/67] Updated --- modules/image-pipeline/build.pkr.hcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index b489581..cd3361c 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -1,6 +1,6 @@ variable "kms_key_id" { type = string - default = "k-kms-csvd-dev-dssasdas-ugw1" + default = "02684d21-d541-4d83-8e0b-e8c95877d8cb" } source "amazon-ebs" "rhel" { From 16c7a7536e206564a28d10c7ca114ee43ba6ae26 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 23 Jul 2024 16:18:24 -0400 Subject: [PATCH 23/67] KMS/IAM/S3 Updated --- iam_policy.tf | 113 ++++++++++++++++++++++++++++++++++++++++++-------- kms.tf | 44 ++++++++++++++++++++ s3.tf | 14 +++++++ 3 files changed, 153 insertions(+), 18 deletions(-) create mode 100644 kms.tf create mode 100644 s3.tf diff --git a/iam_policy.tf b/iam_policy.tf index 964bc08..d676520 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -2,13 +2,13 @@ resource "aws_iam_role" "rhel_x86_codepipeline_role" { name = "rhel-x86-image-pipeline-demo-codepipeline-role" assume_role_policy = jsonencode({ - Version = "2012-10-17" + Version = "2012-10-17", Statement = [ { - Effect = "Allow" + Effect = "Allow", Principal = { Service = "codepipeline.amazonaws.com" - } + }, Action = "sts:AssumeRole" } ] @@ -18,11 +18,12 @@ resource "aws_iam_role" "rhel_x86_codepipeline_role" { resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { name = "rhel-x86-codepipeline-permissions" description = "IAM policy for RHEL x86 CodePipeline to access necessary AWS services" - policy = jsonencode({ - Version = "2012-10-17" + + policy = jsonencode({ + Version = "2012-10-17", Statement = [ { - Effect = "Allow" + Effect = "Allow", Action = [ "codecommit:GetBranch", "codecommit:GetCommit", @@ -36,7 +37,7 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { "codecommit:CreateCommit", "codecommit:BatchGetRepositories", "codecommit:BatchGetCommits" - ] + ], Resource = [ "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:linux-image-pipeline", "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-ansible-playbooks", @@ -44,7 +45,7 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { ] }, { - Effect = "Allow" + Effect = "Allow", Action = [ "ec2:DescribeInstances", "ec2:DescribeImages", @@ -61,36 +62,36 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { "ec2:CreateImage", "ec2:CreateSnapshot", "ec2:RegisterImage" - ] + ], Resource = "*" }, { - Effect = "Allow" + Effect = "Allow", Action = [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" - ] + ], Resource = [ - "arn:aws-us-gov:s3:::your-bucket-name", - "arn:aws-us-gov:s3:::your-bucket-name/*" + "arn:aws-us-gov:s3:::${aws_s3_bucket.rhel_x86_codepipeline_bucket.bucket}", + "arn:aws-us-gov:s3:::${aws_s3_bucket.rhel_x86_codepipeline_bucket.bucket}/*" ] }, { - Effect = "Allow" + Effect = "Allow", Action = [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey" - ] - Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/02684d21-d541-4d83-8e0b-e8c95877d8cb" + ], + Resource = aws_kms_key.rhel_x86_codepipeline_key.arn }, { - Effect = "Allow" + Effect = "Allow", Action = [ "iam:PassRole" - ] + ], Resource = "arn:aws-us-gov:iam::229685449397:role/rhel-x86-image-pipeline-demo-codepipeline-role" } ] @@ -101,3 +102,79 @@ resource "aws_iam_role_policy_attachment" "rhel_x86_codepipeline_role_attachment role = aws_iam_role.rhel_x86_codepipeline_role.name policy_arn = aws_iam_policy.rhel_x86_codepipeline_permissions.arn } + +resource "aws_iam_role" "rhel_x86_ec2_role" { + name = "rhel-x86-image-pipeline-demo-ec2-role" + + assume_role_policy = jsonencode({ + Version = "2012-10-17", + Statement = [ + { + Effect = "Allow", + Principal = { + Service = "ec2.amazonaws.com" + }, + Action = "sts:AssumeRole" + } + ] + }) +} + +resource "aws_iam_policy" "rhel_x86_ec2_permissions" { + name = "rhel-x86-ec2-permissions" + description = "IAM policy for RHEL x86 EC2 to access necessary AWS services" + + policy = jsonencode({ + Version = "2012-10-17", + Statement = [ + { + Effect = "Allow", + Action = [ + "ec2:DescribeInstances", + "ec2:DescribeImages", + "ec2:DescribeInstanceStatus", + "ec2:RunInstances", + "ec2:TerminateInstances", + "ec2:CreateTags", + "ec2:DescribeKeyPairs", + "ec2:DescribeSecurityGroups", + "ec2:DescribeSubnets", + "ec2:DescribeVpcs", + "ec2:DescribeVolumes", + "ec2:DescribeSnapshots", + "ec2:CreateImage", + "ec2:CreateSnapshot", + "ec2:RegisterImage" + ], + Resource = "*" + }, + { + Effect = "Allow", + Action = [ + "s3:GetObject", + "s3:PutObject", + "s3:ListBucket" + ], + Resource = [ + "arn:aws-us-gov:s3:::${aws_s3_bucket.rhel_x86_codepipeline_bucket.bucket}", + "arn:aws-us-gov:s3:::${aws_s3_bucket.rhel_x86_codepipeline_bucket.bucket}/*" + ] + }, + { + Effect = "Allow", + Action = [ + "kms:Encrypt", + "kms:Decrypt", + "kms:GenerateDataKey", + "kms:DescribeKey" + ], + Resource = aws_kms_key.rhel_x86_codepipeline_key.arn + } + ] + }) +} + +resource "aws_iam_role_policy_attachment" "rhel_x86_ec2_role_attachment" { + role = aws_iam_role.rhel_x86_ec2_role.name + policy_arn = aws_iam_policy.rhel_x86_ec2_permissions.arn +} \ No newline at end of file diff --git a/kms.tf b/kms.tf new file mode 100644 index 0000000..a70a69e --- /dev/null +++ b/kms.tf @@ -0,0 +1,44 @@ +resource "aws_kms_key" "rhel_x86_codepipeline_key" { + description = "KMS key for RHEL x86 CodePipeline" + policy = < Date: Tue, 23 Jul 2024 16:24:47 -0400 Subject: [PATCH 24/67] Updated --- s3.tf | 5 ----- 1 file changed, 5 deletions(-) diff --git a/s3.tf b/s3.tf index 6762c9b..5459f3d 100644 --- a/s3.tf +++ b/s3.tf @@ -2,11 +2,6 @@ resource "aws_s3_bucket" "rhel_x86_codepipeline_bucket" { bucket = "rhel-x86-codepipeline-bucket-${random_string.suffix.result}" } -resource "aws_s3_bucket_acl" "rhel_x86_codepipeline_bucket_acl" { - bucket = aws_s3_bucket.rhel_x86_codepipeline_bucket.bucket - acl = "private" -} - resource "random_string" "suffix" { length = 8 special = false From a110047f6d00533a057ac6029dd76941e1846e03 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 23 Jul 2024 16:54:08 -0400 Subject: [PATCH 25/67] Updated --- kms.tf | 1 + s3.tf | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/kms.tf b/kms.tf index a70a69e..6828142 100644 --- a/kms.tf +++ b/kms.tf @@ -1,5 +1,6 @@ resource "aws_kms_key" "rhel_x86_codepipeline_key" { description = "KMS key for RHEL x86 CodePipeline" + policy = < Date: Tue, 23 Jul 2024 17:30:56 -0400 Subject: [PATCH 26/67] Updated --- iam_policy.tf | 4 ++-- kms.tf | 11 ++++------- modules/image-pipeline/build.pkr.hcl | 13 +++++++------ 3 files changed, 13 insertions(+), 15 deletions(-) diff --git a/iam_policy.tf b/iam_policy.tf index d676520..8f29ce0 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -85,7 +85,7 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { "kms:GenerateDataKey", "kms:DescribeKey" ], - Resource = aws_kms_key.rhel_x86_codepipeline_key.arn + Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/${aws_kms_key.rhel_x86_codepipeline_key.id}" }, { Effect = "Allow", @@ -168,7 +168,7 @@ resource "aws_iam_policy" "rhel_x86_ec2_permissions" { "kms:GenerateDataKey", "kms:DescribeKey" ], - Resource = aws_kms_key.rhel_x86_codepipeline_key.arn + Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/${aws_kms_key.rhel_x86_codepipeline_key.id}" } ] }) diff --git a/kms.tf b/kms.tf index 6828142..ac84978 100644 --- a/kms.tf +++ b/kms.tf @@ -1,6 +1,5 @@ resource "aws_kms_key" "rhel_x86_codepipeline_key" { description = "KMS key for RHEL x86 CodePipeline" - policy = < Date: Tue, 23 Jul 2024 17:57:48 -0400 Subject: [PATCH 27/67] Updated --- iam_policy.tf | 4 ++-- kms.tf | 9 +++++---- modules/image-pipeline/build.pkr.hcl | 9 ++------- 3 files changed, 9 insertions(+), 13 deletions(-) diff --git a/iam_policy.tf b/iam_policy.tf index 8f29ce0..75f243a 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -85,7 +85,7 @@ resource "aws_iam_policy" "rhel_x86_codepipeline_permissions" { "kms:GenerateDataKey", "kms:DescribeKey" ], - Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/${aws_kms_key.rhel_x86_codepipeline_key.id}" + Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" }, { Effect = "Allow", @@ -168,7 +168,7 @@ resource "aws_iam_policy" "rhel_x86_ec2_permissions" { "kms:GenerateDataKey", "kms:DescribeKey" ], - Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/${aws_kms_key.rhel_x86_codepipeline_key.id}" + Resource = "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" } ] }) diff --git a/kms.tf b/kms.tf index ac84978..e0491c1 100644 --- a/kms.tf +++ b/kms.tf @@ -1,5 +1,6 @@ resource "aws_kms_key" "rhel_x86_codepipeline_key" { description = "KMS key for RHEL x86 CodePipeline" + key_id = "ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" # Static KMS Key ID policy = < Date: Tue, 23 Jul 2024 18:02:05 -0400 Subject: [PATCH 28/67] Stopping the creation of an existing kms key --- iam_policy.tf | 3 ++- kms.tf | 3 +-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/iam_policy.tf b/iam_policy.tf index 75f243a..67c6f0f 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -177,4 +177,5 @@ resource "aws_iam_policy" "rhel_x86_ec2_permissions" { resource "aws_iam_role_policy_attachment" "rhel_x86_ec2_role_attachment" { role = aws_iam_role.rhel_x86_ec2_role.name policy_arn = aws_iam_policy.rhel_x86_ec2_permissions.arn -} \ No newline at end of file +} + diff --git a/kms.tf b/kms.tf index e0491c1..ac978bf 100644 --- a/kms.tf +++ b/kms.tf @@ -1,6 +1,5 @@ resource "aws_kms_key" "rhel_x86_codepipeline_key" { description = "KMS key for RHEL x86 CodePipeline" - key_id = "ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" # Static KMS Key ID policy = < Date: Wed, 24 Jul 2024 13:08:35 -0400 Subject: [PATCH 29/67] MAss Update --- backend.tf | 2 +- iam_policy.tf | 3 +-- modules/image-pipeline/build.pkr.hcl | 5 +++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/backend.tf b/backend.tf index a4e98d2..9fc2bbc 100644 --- a/backend.tf +++ b/backend.tf @@ -6,4 +6,4 @@ terraform { dynamodb_table = "tf_remote_state" profile = "229685449397-csvd-dev-gov.inf-admin-t2" } -} +} \ No newline at end of file diff --git a/iam_policy.tf b/iam_policy.tf index 67c6f0f..75f243a 100644 --- a/iam_policy.tf +++ b/iam_policy.tf @@ -177,5 +177,4 @@ resource "aws_iam_policy" "rhel_x86_ec2_permissions" { resource "aws_iam_role_policy_attachment" "rhel_x86_ec2_role_attachment" { role = aws_iam_role.rhel_x86_ec2_role.name policy_arn = aws_iam_policy.rhel_x86_ec2_permissions.arn -} - +} \ No newline at end of file diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index fe5f278..b1677f5 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -1,6 +1,6 @@ source "amazon-ebs" "rhel" { ami_name = "rhel-arm-{{timestamp}}" - instance_type = "t3.micro" + instance_type = "t4g.micro" # Ensure the instance type is ARM64 compatible region = "us-gov-west-1" source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM ssh_username = "ec2-user" @@ -15,8 +15,9 @@ build { } post-processor "shell-local" { + inline_shebang = "/bin/sh" inline = [ "echo 'Build finished!'", ] } -} +} \ No newline at end of file From de6dbae0b977400ec8e55f4b2310cd41d87fb62c Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 24 Jul 2024 13:30:41 -0400 Subject: [PATCH 30/67] Updated --- kms.tf | 8 +-- main.tf | 147 +++++++++++++++++++++++++------------------------------- 2 files changed, 70 insertions(+), 85 deletions(-) diff --git a/kms.tf b/kms.tf index ac978bf..6df8ceb 100644 --- a/kms.tf +++ b/kms.tf @@ -20,7 +20,7 @@ resource "aws_kms_key" "rhel_x86_codepipeline_key" { "kms:GenerateDataKey*", "kms:DescribeKey" ], - "Resource": "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" + "Resource": "*" }, { "Sid": "Allow admin actions", @@ -29,7 +29,7 @@ resource "aws_kms_key" "rhel_x86_codepipeline_key" { "AWS": "arn:aws-us-gov:iam::229685449397:root" }, "Action": "kms:*", - "Resource": "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" + "Resource": "*" } ] } @@ -38,5 +38,5 @@ EOF resource "aws_kms_alias" "rhel_x86_codepipeline_alias" { name = "alias/rhel-x86-codepipeline-key" - target_key_id = "ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" # Static KMS Key ID -} + target_key_id = aws_kms_key.rhel_x86_codepipeline_key.id +} \ No newline at end of file diff --git a/main.tf b/main.tf index 7e31615..442c96c 100644 --- a/main.tf +++ b/main.tf @@ -1,55 +1,59 @@ provider "aws" { - region = "us-gov-west-1" + region = "us-gov-west-1" profile = "229685449397-csvd-dev-gov.inf-admin-t2" } - locals { - proxy_env_vars = { - HTTP_PROXY = "http://proxy.tco.census.gov:3128" - NO_PROXY = ".census.gov,169.254.169.254,148.129.*,10.*,172.18.*,172.22.*,172.23.*,172.24.*,172.25.*,.eks.amazonaws.com,.s3.amazonaws.com,.amazonaws.com,.gcr.io,.pkg.dev,${local._vpc_config.region}.compute.internal,.${local._vpc_config.region}.compute.internal" - HTTPS_PROXY = "http://proxy.tco.census.gov:3128" - } - source_repo = "linux-image-pipeline" - project_name = "linux-image-pipeline-demo" - environment = "dev" - _vpc_config = { - vpc_id = "vpc-00576a396ec570b94" - region = "us-gov-west-1" - security_group_ids = [ - "sg-0d828d223df9834a6" - ] - subnets = [ - # "subnet-0b1992a84536c581b" - "subnet-062189d742937204e" - ] + proxy_env_vars = { + HTTP_PROXY = "http://proxy.tco.census.gov:3128" + NO_PROXY = ".census.gov,169.254.169.254,148.129.*,10.*,172.18.*,172.22.*,172.23.*,172.24.*,172.25.*,.eks.amazonaws.com,.s3.amazonaws.com,.amazonaws.com,.gcr.io,.pkg.dev,${local._vpc_config.region}.compute.internal,.${local._vpc_config.region}.compute.internal" + HTTPS_PROXY = "http://proxy.tco.census.gov:3128" + } + source_repo = "linux-image-pipeline" + project_name = "linux-image-pipeline-demo" + environment = "dev" + _vpc_config = { + vpc_id = "vpc-00576a396ec570b94" + region = "us-gov-west-1" + security_group_ids = ["sg-0d828d223df9834a6"] + subnets = ["subnet-062189d742937204e"] + } + vpc_config = merge( + local._vpc_config, + { + security_group_ids = concat( + local._vpc_config.security_group_ids, + [aws_security_group.allow_amznlinux_cdn.id] + ) } - vpc_config = merge( - local._vpc_config, - { - security_group_ids = concat( - local._vpc_config.security_group_ids, - [ - aws_security_group.allow_amznlinux_cdn.id - ]) - } - ) - state_config = { - bucket = aws_s3_bucket.state_bucket.bucket - key = "csvd-dev-gov/common/apps/${local.environment}/${local.project_name}" - region = local.vpc_config.region - dynamodb_table = "tf_remote_state" - } + ) + state_config = { + bucket = aws_s3_bucket.state_bucket.bucket + key = "csvd-dev-gov/common/apps/${local.environment}/${local.project_name}" + region = local.vpc_config.region + dynamodb_table = "tf_remote_state" + } } -resource random_uuid random {} -resource aws_s3_bucket state_bucket { +resource "random_uuid" "random" {} + +resource "aws_s3_bucket" "state_bucket" { bucket = "inf-test-${random_uuid.random.result}" } +resource "aws_s3_bucket_server_side_encryption_configuration" "state_bucket_encryption" { + bucket = aws_s3_bucket.state_bucket.bucket + + rule { + apply_server_side_encryption_by_default { + sse_algorithm = "aws:kms" + } + } +} + data "aws_iam_policy_document" "s3_access" { statement { - effect = "Allow" + effect = "Allow" actions = ["s3:*"] resources = ["*"] } @@ -67,14 +71,13 @@ resource "aws_security_group" "allow_amznlinux_cdn" { resource "aws_vpc_security_group_egress_rule" "allow_all_traffic_ipv4" { security_group_id = aws_security_group.allow_amznlinux_cdn.id cidr_ipv4 = "0.0.0.0/0" - ip_protocol = "-1" # semantically equivalent to all ports + ip_protocol = "-1" } -# referenced_security_group_id resource "aws_vpc_security_group_ingress_rule" "allow_all_between_self" { - security_group_id = aws_security_group.allow_amznlinux_cdn.id - ip_protocol = "-1" # semantically equivalent to all ports - referenced_security_group_id = aws_security_group.allow_amznlinux_cdn.id + security_group_id = aws_security_group.allow_amznlinux_cdn.id + ip_protocol = "-1" + referenced_security_group_id = aws_security_group.allow_amznlinux_cdn.id } data "aws_codecommit_repository" "ansible" { @@ -85,7 +88,6 @@ data "aws_codecommit_repository" "goss" { repository_name = "image-pipeline-goss-testing" } - module "main" { source = "HappyPathway/image-pipeline/aws" project_name = local.project_name @@ -99,24 +101,22 @@ module "main" { playbook = "hello-world.yaml" terraform_version = "1.8.5" build_permissions_iam_doc = data.aws_iam_policy_document.s3_access - build_environment_variables = [ - for proxy_var in keys(local.proxy_env_vars) : - { - name=proxy_var, - value=lookup(local.proxy_env_vars, proxy_var), - type = "PLAINTEXT" - } + build_environment_variables = [ + for proxy_var in keys(local.proxy_env_vars) : { + name = proxy_var + value = lookup(local.proxy_env_vars, proxy_var) + type = "PLAINTEXT" + } ] ansible_repo = data.aws_codecommit_repository.ansible goss_repo = data.aws_codecommit_repository.goss goss_profile = "base-test" - state = local.state_config - vpc_config = local.vpc_config - source_ami = "ami-03fadeeea589a106b" - instance_type = "t2.micro" + state = local.state_config + vpc_config = local.vpc_config + source_ami = "ami-03fadeeea589a106b" + instance_type = "t2.micro" } - module "rhel-arm" { source = "HappyPathway/image-pipeline/aws" project_name = "rhel-arm-image-pipeline-demo" @@ -127,13 +127,13 @@ module "rhel-arm" { create_new_role = true create_vpc_endpoint = false ssh_user = "ec2-user" - playbook = "rhel-arm-baseline.yaml" # Updated path to main directory + playbook = "rhel-arm-baseline.yaml" terraform_version = "1.8.5" build_permissions_iam_doc = data.aws_iam_policy_document.s3_access build_environment_variables = [ for proxy_var in keys(local.proxy_env_vars) : { - name = proxy_var, - value = lookup(local.proxy_env_vars, proxy_var), + name = proxy_var + value = lookup(local.proxy_env_vars, proxy_var) type = "PLAINTEXT" } ] @@ -142,19 +142,17 @@ module "rhel-arm" { goss_profile = "rhel-arm-base-test" state = local.state_config vpc_config = local.vpc_config - source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM - instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible + source_ami = "ami-03f5c6b8195c66b04" + instance_type = "t4g.micro" } - - -resource random_password winrm { +resource "random_password" "winrm" { length = 24 override_special = "$*!" - special = true + special = true } -output password { +output "password" { value = nonsensitive(random_password.winrm.result) } @@ -189,17 +187,4 @@ module "windows" { vpc_config = local.vpc_config source_ami = "ami-012fffaddacaa52ff" instance_type = "t2.xlarge" -} - -output iam_arn { - value = module.main.iam_arn -} - -output codebuild_user { - value = module.main.build_user.name -} - -output parameters { - value = keys(module.main.parameters) - sensitive = true -} +} \ No newline at end of file From 80bcd07c67ecf945c15e9cce64dc5091caff925d Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 24 Jul 2024 14:07:48 -0400 Subject: [PATCH 31/67] Updated --- buildspec.yml | 29 ++++++++++++++++++++++++---- main.tf | 2 +- modules/image-pipeline/build.pkr.hcl | 2 +- 3 files changed, 27 insertions(+), 6 deletions(-) diff --git a/buildspec.yml b/buildspec.yml index b7c5348..c4870b1 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -9,13 +9,34 @@ phases: - pyenv global $PYTHON_311_VERSION - echo "Installing Ansible ..." - pip3 install ansible + pre_build: + commands: + - echo "Setting up environment ..." + - which pip3 || curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py + - which pip3 || python3 get-pip.py --user + - stat $(python -m site --user-base)/bin/ansible-playbook || python3 -m pip install --user ansible pywinrm + - export PATH=$PATH:$(python -m site --user-base)/bin + - stat /bin/packer || curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip + - stat /bin/packer || unzip -o packer.zip && mv packer /bin && rm packer.zip + - stat ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh && bash ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh ${CODEBUILD_SRC_DIR_SourceAnsibleOutput} || echo "No init.sh script found" build: commands: - - echo "Building with Packer ..." - - packer init build.pkr.hcl - - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR}/ansible build.pkr.hcl + - echo "Configuring AWS credentials" + - curl -qL -o aws_credentials.json http://169.254.170.2/${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI} > aws_credentials.json + - aws configure set region $AWS_REGION + - aws configure set aws_access_key_id `jq -r '.AccessKeyId' aws_credentials.json` + - export AWS_ACCESS_KEY_ID=`jq -r '.AccessKeyId' aws_credentials.json` + - aws configure set aws_secret_access_key `jq -r '.SecretAccessKey' aws_credentials.json` + - export AWS_SECRET_ACCESS_KEY=`jq -r '.SecretAccessKey' aws_credentials.json` + - aws configure set aws_session_token `jq -r '.Token' aws_credentials.json` + - export AWS_SESSION_TOKEN=`jq -r '.Token' aws_credentials.json` + - echo "Building HashiCorp Packer template, build.pkr.hcl" + - cd ${CODEBUILD_SRC_DIR} + - /bin/packer init build.pkr.hcl + - ln -s ${CODEBUILD_SRC_DIR}/roles + - /bin/packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR} build.pkr.hcl post_build: commands: - echo "Saving AMI ID ..." - - packer build -machine-readable build.pkr.hcl | tee >(grep 'artifact,0,id' | cut -d, -f6 | cut -d: -f2 > ami_id.txt) + - /bin/packer build -machine-readable build.pkr.hcl | tee >(grep 'artifact,0,id' | cut -d, -f6 | cut -d: -f2 > ami_id.txt) - test -s ami_id.txt || exit 1 \ No newline at end of file diff --git a/main.tf b/main.tf index 442c96c..2010187 100644 --- a/main.tf +++ b/main.tf @@ -143,7 +143,7 @@ module "rhel-arm" { state = local.state_config vpc_config = local.vpc_config source_ami = "ami-03f5c6b8195c66b04" - instance_type = "t4g.micro" + instance_type = "t3.micro" } resource "random_password" "winrm" { diff --git a/modules/image-pipeline/build.pkr.hcl b/modules/image-pipeline/build.pkr.hcl index b1677f5..d6efea1 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/modules/image-pipeline/build.pkr.hcl @@ -1,6 +1,6 @@ source "amazon-ebs" "rhel" { ami_name = "rhel-arm-{{timestamp}}" - instance_type = "t4g.micro" # Ensure the instance type is ARM64 compatible + instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible region = "us-gov-west-1" source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM ssh_username = "ec2-user" From 7b69b308db81e6a608084c84a0d2f7188cab8f04 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 24 Jul 2024 14:31:42 -0400 Subject: [PATCH 32/67] Updated --- buildspec.yml | 41 ++++++++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/buildspec.yml b/buildspec.yml index c4870b1..5c015f6 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -1,27 +1,28 @@ version: 0.2 +env: + variables: + AWS_REGION: "us-gov-west-1" + CODE_SRC_DIR: "source" + CODEBUILD_SRC_DIR_SourceAnsibleOutput: "/codebuild/output/src3467/src/s3/01" + phases: install: - runtime-versions: - python: 3.11 commands: - echo "Installing Python version 3.11 ..." - pyenv global $PYTHON_311_VERSION - - echo "Installing Ansible ..." - - pip3 install ansible - pre_build: - commands: - - echo "Setting up environment ..." + - stat ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh && bash ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh ${CODEBUILD_SRC_DIR_SourceAnsibleOutput} || echo "No init.sh script found" - which pip3 || curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py - which pip3 || python3 get-pip.py --user - stat $(python -m site --user-base)/bin/ansible-playbook || python3 -m pip install --user ansible pywinrm - - export PATH=$PATH:$(python -m site --user-base)/bin - stat /bin/packer || curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip - - stat /bin/packer || unzip -o packer.zip && mv packer /bin && rm packer.zip - - stat ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh && bash ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh ${CODEBUILD_SRC_DIR_SourceAnsibleOutput} || echo "No init.sh script found" - build: + - stat /bin/packer || unzip -o packer.zip + - stat /bin/packer || $(mv packer /bin && rm packer.zip) + pre_build: commands: - echo "Configuring AWS credentials" + - echo "Fetching AWS credentials from ECS metadata service" + - echo "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI}" - curl -qL -o aws_credentials.json http://169.254.170.2/${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI} > aws_credentials.json - aws configure set region $AWS_REGION - aws configure set aws_access_key_id `jq -r '.AccessKeyId' aws_credentials.json` @@ -30,13 +31,19 @@ phases: - export AWS_SECRET_ACCESS_KEY=`jq -r '.SecretAccessKey' aws_credentials.json` - aws configure set aws_session_token `jq -r '.Token' aws_credentials.json` - export AWS_SESSION_TOKEN=`jq -r '.Token' aws_credentials.json` + build: + commands: - echo "Building HashiCorp Packer template, build.pkr.hcl" - - cd ${CODEBUILD_SRC_DIR} + - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} - /bin/packer init build.pkr.hcl - - ln -s ${CODEBUILD_SRC_DIR}/roles - - /bin/packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR} build.pkr.hcl + - ln -s ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/roles + - /bin/packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl post_build: commands: - - echo "Saving AMI ID ..." - - /bin/packer build -machine-readable build.pkr.hcl | tee >(grep 'artifact,0,id' | cut -d, -f6 | cut -d: -f2 > ami_id.txt) - - test -s ami_id.txt || exit 1 \ No newline at end of file + - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} + - test -s ami_id.txt || exit 1 + +artifacts: + files: + - '**/*' + discard-paths: yes \ No newline at end of file From 860215517ce88ebd21c0cb8c3a7392e65216eeab Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 24 Jul 2024 15:22:43 -0400 Subject: [PATCH 33/67] Updated --- .../build.pkr.hcl => build.pkr.hcl | 15 ++++-- buildspec.yml | 48 ++++++++----------- 2 files changed, 33 insertions(+), 30 deletions(-) rename modules/image-pipeline/build.pkr.hcl => build.pkr.hcl (62%) diff --git a/modules/image-pipeline/build.pkr.hcl b/build.pkr.hcl similarity index 62% rename from modules/image-pipeline/build.pkr.hcl rename to build.pkr.hcl index d6efea1..e7a135c 100644 --- a/modules/image-pipeline/build.pkr.hcl +++ b/build.pkr.hcl @@ -1,5 +1,14 @@ +variable "project_name" { + type = string + default = "rhel-arm-image-pipeline-demo" +} + +variable "ansible_dir" { + type = string +} + source "amazon-ebs" "rhel" { - ami_name = "rhel-arm-{{timestamp}}" + ami_name = "${var.project_name}-{{timestamp}}" instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible region = "us-gov-west-1" source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM @@ -11,13 +20,13 @@ build { sources = ["source.amazon-ebs.rhel"] provisioner "ansible" { - playbook_file = "ansible/rhel-arm-baseline.yaml" + playbook_file = "${var.ansible_dir}/rhel-arm-baseline.yaml" } post-processor "shell-local" { inline_shebang = "/bin/sh" inline = [ - "echo 'Build finished!'", + "echo '${build.amis}' > ami_id.txt", ] } } \ No newline at end of file diff --git a/buildspec.yml b/buildspec.yml index 5c015f6..4e3a192 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -1,29 +1,24 @@ version: 0.2 -env: - variables: - AWS_REGION: "us-gov-west-1" - CODE_SRC_DIR: "source" - CODEBUILD_SRC_DIR_SourceAnsibleOutput: "/codebuild/output/src3467/src/s3/01" - phases: install: + runtime-versions: + python: 3.x commands: - - echo "Installing Python version 3.11 ..." - - pyenv global $PYTHON_311_VERSION - - stat ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh && bash ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh ${CODEBUILD_SRC_DIR_SourceAnsibleOutput} || echo "No init.sh script found" - - which pip3 || curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py - - which pip3 || python3 get-pip.py --user - - stat $(python -m site --user-base)/bin/ansible-playbook || python3 -m pip install --user ansible pywinrm - - stat /bin/packer || curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip - - stat /bin/packer || unzip -o packer.zip - - stat /bin/packer || $(mv packer /bin && rm packer.zip) + - echo "Installing pip, Ansible, and Packer" + - which pip3 || curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && python3 get-pip.py --user + - stat $(python3 -m site --user-base)/bin/ansible-playbook || python3 -m pip install --user ansible pywinrm + - export PATH=$PATH:/root/.local/bin + - if ! stat /bin/packer; then + curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip; + unzip -o packer.zip; + mv packer /bin; + rm packer.zip; + fi + pre_build: commands: - - echo "Configuring AWS credentials" - - echo "Fetching AWS credentials from ECS metadata service" - - echo "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI}" - - curl -qL -o aws_credentials.json http://169.254.170.2/${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI} > aws_credentials.json + - echo "Configuring AWS CLI" - aws configure set region $AWS_REGION - aws configure set aws_access_key_id `jq -r '.AccessKeyId' aws_credentials.json` - export AWS_ACCESS_KEY_ID=`jq -r '.AccessKeyId' aws_credentials.json` @@ -31,19 +26,18 @@ phases: - export AWS_SECRET_ACCESS_KEY=`jq -r '.SecretAccessKey' aws_credentials.json` - aws configure set aws_session_token `jq -r '.Token' aws_credentials.json` - export AWS_SESSION_TOKEN=`jq -r '.Token' aws_credentials.json` + build: commands: - - echo "Building HashiCorp Packer template, build.pkr.hcl" - - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} - - /bin/packer init build.pkr.hcl - - ln -s ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/roles - - /bin/packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl + - echo "Running Packer build" + - packer init build.pkr.hcl + - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl + post_build: commands: - - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} + - echo "Checking for the AMI ID file" - test -s ami_id.txt || exit 1 artifacts: files: - - '**/*' - discard-paths: yes \ No newline at end of file + - ami_id.txt \ No newline at end of file From b84996678a39881b007ae926569be0f652dcdc4a Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 24 Jul 2024 15:37:01 -0400 Subject: [PATCH 34/67] Updated --- build.pkr.hcl | 13 +++++++------ buildspec.yml | 27 +++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index e7a135c..7fdfa66 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -8,12 +8,12 @@ variable "ansible_dir" { } source "amazon-ebs" "rhel" { - ami_name = "${var.project_name}-{{timestamp}}" - instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible - region = "us-gov-west-1" - source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM - ssh_username = "ec2-user" - kms_key_id = "ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" # Static KMS Key ID + ami_name = "${var.project_name}-{{timestamp}}" + instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible + region = "us-gov-west-1" + source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM + ssh_username = "ec2-user" + kms_key_id = "ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" # Static KMS Key ID } build { @@ -26,6 +26,7 @@ build { post-processor "shell-local" { inline_shebang = "/bin/sh" inline = [ + "echo 'Build finished!'", "echo '${build.amis}' > ami_id.txt", ] } diff --git a/buildspec.yml b/buildspec.yml index 4e3a192..fd6792c 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -1,10 +1,25 @@ version: 0.2 +env: + variables: + AWS_REGION: "us-gov-west-1" + CODE_SRC_DIR: "source" + CODEBUILD_SRC_DIR_SourceAnsibleOutput: "/codebuild/output/src3467/src/s3/01" + phases: install: runtime-versions: python: 3.x commands: + - echo "Installing Python version 3.11 ..." + - pyenv global $PYTHON_311_VERSION + - stat ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh && bash ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh ${CODEBUILD_SRC_DIR_SourceAnsibleOutput} || echo "No init.sh script found" + - which pip3 || curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py + - which pip3 || python3 get-pip.py --user + - stat $(python3 -m site --user-base)/bin/ansible-playbook || python3 -m pip install --user ansible pywinrm + - stat /bin/packer || curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip + - stat /bin/packer || unzip -o packer.zip + - stat /bin/packer || $(mv packer /bin && rm packer.zip) - echo "Installing pip, Ansible, and Packer" - which pip3 || curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && python3 get-pip.py --user - stat $(python3 -m site --user-base)/bin/ansible-playbook || python3 -m pip install --user ansible pywinrm @@ -18,6 +33,10 @@ phases: pre_build: commands: + - echo "Configuring AWS credentials" + - echo "Fetching AWS credentials from ECS metadata service" + - echo "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI}" + - curl -qL -o aws_credentials.json http://169.254.170.2/${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI} > aws_credentials.json - echo "Configuring AWS CLI" - aws configure set region $AWS_REGION - aws configure set aws_access_key_id `jq -r '.AccessKeyId' aws_credentials.json` @@ -29,15 +48,23 @@ phases: build: commands: + - echo "Building HashiCorp Packer template, build.pkr.hcl" + - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} + - /bin/packer init build.pkr.hcl + - ln -s ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/roles + - /bin/packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl - echo "Running Packer build" - packer init build.pkr.hcl - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl post_build: commands: + - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} - echo "Checking for the AMI ID file" - test -s ami_id.txt || exit 1 artifacts: files: + - '**/*' + discard-paths: yes - ami_id.txt \ No newline at end of file From d7b7ac5d50462db7d95f6f3158edaa9cefd70674 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 24 Jul 2024 15:48:58 -0400 Subject: [PATCH 35/67] Updated --- build.pkr.hcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index 7fdfa66..29b43f5 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -4,7 +4,7 @@ variable "project_name" { } variable "ansible_dir" { - type = string + type = string } source "amazon-ebs" "rhel" { From 7647ee4b5d69b5747669ee55b7f2b8c305dd9835 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Mon, 29 Jul 2024 11:47:57 -0400 Subject: [PATCH 36/67] Updated AMI Amazon Linux --- build.pkr.hcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index 29b43f5..9213cb2 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -11,7 +11,7 @@ source "amazon-ebs" "rhel" { ami_name = "${var.project_name}-{{timestamp}}" instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible region = "us-gov-west-1" - source_ami = "ami-03f5c6b8195c66b04" # Updated AMI ID for RHEL 9 ARM + source_ami = "ami-01c116d3e0152a132" # Updated AMI ID for Amazon-Linux ssh_username = "ec2-user" kms_key_id = "ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" # Static KMS Key ID } From 6dbee8822dc0f12d6f025d3be8d652aa55e9da86 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Mon, 29 Jul 2024 12:25:22 -0400 Subject: [PATCH 37/67] Updated KMS --- build.pkr.hcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index 9213cb2..e3791bd 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -13,7 +13,7 @@ source "amazon-ebs" "rhel" { region = "us-gov-west-1" source_ami = "ami-01c116d3e0152a132" # Updated AMI ID for Amazon-Linux ssh_username = "ec2-user" - kms_key_id = "ba7dabdd-0f5a-44aa-9a90-a36c246a29a4" # Static KMS Key ID + kms_key_id = "3b7f8ca7-6212-4b47-859d-bde50b75f501" # Static KMS Key ID } build { From a91ae35a1cfa9a8baf37f00c5f2f94e5b93fa73d Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 30 Jul 2024 11:24:48 -0400 Subject: [PATCH 38/67] Updated KMS, apply and get ID later. --- README.md | 3 ++ build.pkr.hcl | 2 +- kms.tf | 111 +++++++++++++++++++++++++++++++++----------------- main.tf | 2 +- 4 files changed, 78 insertions(+), 40 deletions(-) diff --git a/README.md b/README.md index e9b46e3..3197b43 100644 --- a/README.md +++ b/README.md @@ -27,3 +27,6 @@ rebecaa linn : She does x86 (get context for ARM) cd ~/.aws/ +Update KMS.tf with key policy code (Teams) +Set AMI everywhere +Update \ No newline at end of file diff --git a/build.pkr.hcl b/build.pkr.hcl index e3791bd..f55a864 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -13,7 +13,7 @@ source "amazon-ebs" "rhel" { region = "us-gov-west-1" source_ami = "ami-01c116d3e0152a132" # Updated AMI ID for Amazon-Linux ssh_username = "ec2-user" - kms_key_id = "3b7f8ca7-6212-4b47-859d-bde50b75f501" # Static KMS Key ID +# kms_key_id = "3b7f8ca7-6212-4b47-859d-bde50b75f501" # Static KMS Key ID } build { diff --git a/kms.tf b/kms.tf index 6df8ceb..a287c22 100644 --- a/kms.tf +++ b/kms.tf @@ -1,42 +1,77 @@ -resource "aws_kms_key" "rhel_x86_codepipeline_key" { - description = "KMS key for RHEL x86 CodePipeline" - policy = < Date: Tue, 30 Jul 2024 11:46:57 -0400 Subject: [PATCH 39/67] Updated KMS --- README.md | 4 -- kms.tf | 134 +++++++++++++++++++++++++++++++++--------------------- s3.tf | 16 +++---- 3 files changed, 90 insertions(+), 64 deletions(-) diff --git a/README.md b/README.md index 3197b43..922db07 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,3 @@ rebecaa linn : She does x86 (get context for ARM) cd ~/.aws/ - -Update KMS.tf with key policy code (Teams) -Set AMI everywhere -Update \ No newline at end of file diff --git a/kms.tf b/kms.tf index a287c22..150eba7 100644 --- a/kms.tf +++ b/kms.tf @@ -1,77 +1,109 @@ locals { - kms_key_name = "rhel-pipeline-kms-key" - kms_admin_root = ["arn:aws-us-gov:iam::229685449397:root"] - kms_admin_roles = [ - "arn:aws-us-gov:iam::229685449397:role/rhel-arm-image-pipeline-demo-codepipeline-role", - "arn:aws-us-gov:iam::229685449397:role/rhel-x86-image-pipeline-demo-ec2-role", - "arn:aws-us-gov:iam::229685449397:role/rhel-x86-image-pipeline-demo-codepipeline-role" - ] - multi_region = false + kms_key_name = "rhel-x86-codepipeline-key" # Name for the KMS key alias + account_id = "229685449397" # Replace with your AWS account ID + partition = "aws-us-gov" } -# Create a KMS key with key rotation enabled -resource "aws_kms_key" "key" { - description = "KMS CMK for RHEL Pipeline" +# Define the KMS Key resource +resource "aws_kms_key" "rhel_x86_codepipeline_key" { + description = "KMS key for RHEL x86 CodePipeline" enable_key_rotation = true - policy = data.aws_iam_policy_document.key_policy_combined.json - multi_region = local.multi_region - tags = { - Name = local.kms_key_name - } + policy = data.aws_iam_policy_document.key_policy_combined.json } -# Create a KMS alias -resource "aws_kms_alias" "key" { +# Define the KMS Key Alias +resource "aws_kms_alias" "rhel_x86_codepipeline_alias" { name = "alias/${local.kms_key_name}" - target_key_id = aws_kms_key.key.id + target_key_id = aws_kms_key.rhel_x86_codepipeline_key.key_id } -# KMS Policy for allowing usage of the key -data "aws_iam_policy_document" "kms_outbound-main_policy" { +# Define the key policy document +data "aws_iam_policy_document" "key_policy_combined" { statement { - sid = "S3AccessEncryptionKey" - effect = "Allow" - actions = [ - "kms:ReEncrypt*", + sid = "Enable IAM User Permissions" + effect = "Allow" + principals { + type = "AWS" + identifiers = ["arn:${local.partition}:iam::${local.account_id}:root"] + } + actions = ["kms:*"] + resources = ["*"] + } + + statement { + sid = "Allow access for Key Administrators" + effect = "Allow" + principals { + type = "AWS" + identifiers = [ + "arn:${local.partition}:iam::${local.account_id}:role/rhel-arm-image-pipeline-demo-codepipeline-role", + "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-ec2-role", + "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-codepipeline-role" + ] + } + actions = [ + "kms:Create*", + "kms:Describe*", + "kms:Enable*", + "kms:List*", + "kms:Put*", + "kms:Update*", + "kms:Revoke*", + "kms:Disable*", + "kms:Get*", + "kms:Delete*", + "kms:TagResource", + "kms:UntagResource", + "kms:ScheduleKeyDeletion", + "kms:CancelKeyDeletion", + "kms:RotateKeyOnDemand" + ] + resources = ["*"] + } + + statement { + sid = "Allow use of the key" + effect = "Allow" + principals { + type = "AWS" + identifiers = [ + "arn:${local.partition}:iam::${local.account_id}:role/rhel-arm-image-pipeline-demo-codepipeline-role", + "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-ec2-role", + "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-codepipeline-role" + ] + } + actions = [ "kms:Encrypt", "kms:Decrypt", + "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ] resources = ["*"] + } + + statement { + sid = "Allow attachment of persistent resources" + effect = "Allow" principals { type = "AWS" - identifiers = local.kms_admin_roles + identifiers = [ + "arn:${local.partition}:iam::${local.account_id}:role/rhel-arm-image-pipeline-demo-codepipeline-role", + "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-ec2-role", + "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-codepipeline-role" + ] } + actions = [ + "kms:CreateGrant", + "kms:ListGrants", + "kms:RevokeGrant" + ] + resources = ["*"] condition { test = "Bool" variable = "kms:GrantIsForAWSResource" values = ["true"] } } -} - -# Admin permissions for the KMS key -data "aws_iam_policy_document" "key_admin" { - statement { - sid = "BuiltinKMSAdminRoles" - effect = "Allow" - actions = ["kms:*"] - resources = ["*"] - principals { - type = "AWS" - identifiers = local.kms_admin_roles - } - } -} - -# Combine all policies into one for the KMS key -data "aws_iam_policy_document" "key_policy_combined" { - source_policy_documents = [ - data.aws_iam_policy_document.kms_outbound-main_policy.json, - data.aws_iam_policy_document.key_admin.json - ] -} - -data "aws_iam_policy_document" "empty" {} \ No newline at end of file +} \ No newline at end of file diff --git a/s3.tf b/s3.tf index aa6d04e..bdcef9b 100644 --- a/s3.tf +++ b/s3.tf @@ -1,7 +1,7 @@ resource "aws_s3_bucket" "rhel_x86_codepipeline_bucket" { - bucket = "rhel-x86-codepipeline-bucket-${random_string.suffix.result}" - force_destroy = true - + bucket = "rhel-x86-codepipeline-bucket" + acl = "private" + server_side_encryption_configuration { rule { apply_server_side_encryption_by_default { @@ -10,10 +10,8 @@ resource "aws_s3_bucket" "rhel_x86_codepipeline_bucket" { } } } -} - -resource "random_string" "suffix" { - length = 8 - special = false - upper = false + + tags = { + Name = "RHEL x86 CodePipeline Bucket" + } } \ No newline at end of file From cf239c5b00dfda6eb791cfb2051f2feef4a41e6c Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 30 Jul 2024 11:48:20 -0400 Subject: [PATCH 40/67] Updated s3 --- s3.tf | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/s3.tf b/s3.tf index bdcef9b..ba3f6f8 100644 --- a/s3.tf +++ b/s3.tf @@ -1,17 +1,21 @@ +# Define the S3 bucket resource "aws_s3_bucket" "rhel_x86_codepipeline_bucket" { bucket = "rhel-x86-codepipeline-bucket" acl = "private" - - server_side_encryption_configuration { - rule { - apply_server_side_encryption_by_default { - sse_algorithm = "aws:kms" - kms_master_key_id = aws_kms_key.rhel_x86_codepipeline_key.arn - } - } - } - + tags = { Name = "RHEL x86 CodePipeline Bucket" } +} + +# Define the server-side encryption configuration for the S3 bucket +resource "aws_s3_bucket_server_side_encryption_configuration" "rhel_x86_codepipeline_bucket_sse" { + bucket = aws_s3_bucket.rhel_x86_codepipeline_bucket.bucket + + rule { + apply_server_side_encryption_by_default { + sse_algorithm = "aws:kms" + kms_master_key_id = aws_kms_key.rhel_x86_codepipeline_key.arn + } + } } \ No newline at end of file From 545974ecf06d49c65f27e8beab6c125e7d06dd91 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 30 Jul 2024 11:50:50 -0400 Subject: [PATCH 41/67] Updated --- s3.tf | 1 - 1 file changed, 1 deletion(-) diff --git a/s3.tf b/s3.tf index ba3f6f8..06c9520 100644 --- a/s3.tf +++ b/s3.tf @@ -1,7 +1,6 @@ # Define the S3 bucket resource "aws_s3_bucket" "rhel_x86_codepipeline_bucket" { bucket = "rhel-x86-codepipeline-bucket" - acl = "private" tags = { Name = "RHEL x86 CodePipeline Bucket" From edc292ef410c81d09e99aeb676af8ccd933d28f6 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 30 Jul 2024 11:56:08 -0400 Subject: [PATCH 42/67] added region --- kms.tf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kms.tf b/kms.tf index 150eba7..bffb2ee 100644 --- a/kms.tf +++ b/kms.tf @@ -1,7 +1,8 @@ locals { kms_key_name = "rhel-x86-codepipeline-key" # Name for the KMS key alias account_id = "229685449397" # Replace with your AWS account ID - partition = "aws-us-gov" + partition = "aws-us-gov" + region = "us-gov-west-1" } # Define the KMS Key resource From e75abe2744ac5e951975436c2f2220a4e9237b34 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 30 Jul 2024 13:18:48 -0400 Subject: [PATCH 43/67] Mass Updated Curl Issues --- build.pkr.hcl | 7 +-- buildspec.yml | 35 +++--------- main.tf | 51 ++++------------- rhel-arm-baseline.yaml | 126 ++++++++++++++++++++++------------------- 4 files changed, 90 insertions(+), 129 deletions(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index f55a864..830b06c 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -9,18 +9,17 @@ variable "ansible_dir" { source "amazon-ebs" "rhel" { ami_name = "${var.project_name}-{{timestamp}}" - instance_type = "t3.micro" # Ensure the instance type is ARM64 compatible + instance_type = "t3.micro" # Instance type supporting x86_64 region = "us-gov-west-1" - source_ami = "ami-01c116d3e0152a132" # Updated AMI ID for Amazon-Linux + source_ami = "ami-03fadeeea589a106b" # Updated AMI ID for RHEL x86_64 ssh_username = "ec2-user" -# kms_key_id = "3b7f8ca7-6212-4b47-859d-bde50b75f501" # Static KMS Key ID } build { sources = ["source.amazon-ebs.rhel"] provisioner "ansible" { - playbook_file = "${var.ansible_dir}/rhel-arm-baseline.yaml" + playbook_file = "${var.ansible_dir}/rhel-baseline.yml" } post-processor "shell-local" { diff --git a/buildspec.yml b/buildspec.yml index fd6792c..d091010 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -13,37 +13,23 @@ phases: commands: - echo "Installing Python version 3.11 ..." - pyenv global $PYTHON_311_VERSION - - stat ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh && bash ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/init.sh ${CODEBUILD_SRC_DIR_SourceAnsibleOutput} || echo "No init.sh script found" - - which pip3 || curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py - - which pip3 || python3 get-pip.py --user - - stat $(python3 -m site --user-base)/bin/ansible-playbook || python3 -m pip install --user ansible pywinrm - - stat /bin/packer || curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip - - stat /bin/packer || unzip -o packer.zip - - stat /bin/packer || $(mv packer /bin && rm packer.zip) - - echo "Installing pip, Ansible, and Packer" - - which pip3 || curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && python3 get-pip.py --user - - stat $(python3 -m site --user-base)/bin/ansible-playbook || python3 -m pip install --user ansible pywinrm - - export PATH=$PATH:/root/.local/bin - - if ! stat /bin/packer; then - curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip; - unzip -o packer.zip; - mv packer /bin; - rm packer.zip; - fi + - curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && python3 get-pip.py --user + - python3 -m pip install --user ansible pywinrm + - curl -s -qL -o packer.zip https://releases.hashicorp.com/packer/1.10.3/packer_1.10.3_linux_amd64.zip + - unzip -o packer.zip -d /bin + - rm packer.zip + - echo "Installed pip, Ansible, and Packer" pre_build: commands: - echo "Configuring AWS credentials" - - echo "Fetching AWS credentials from ECS metadata service" - - echo "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI}" - - curl -qL -o aws_credentials.json http://169.254.170.2/${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI} > aws_credentials.json - - echo "Configuring AWS CLI" + - curl -qL -o aws_credentials.json http://169.254.170.2/${AWS_CONTAINER_CREDENTIALS_RELATIVE_URI} - aws configure set region $AWS_REGION - aws configure set aws_access_key_id `jq -r '.AccessKeyId' aws_credentials.json` - - export AWS_ACCESS_KEY_ID=`jq -r '.AccessKeyId' aws_credentials.json` - aws configure set aws_secret_access_key `jq -r '.SecretAccessKey' aws_credentials.json` - - export AWS_SECRET_ACCESS_KEY=`jq -r '.SecretAccessKey' aws_credentials.json` - aws configure set aws_session_token `jq -r '.Token' aws_credentials.json` + - export AWS_ACCESS_KEY_ID=`jq -r '.AccessKeyId' aws_credentials.json` + - export AWS_SECRET_ACCESS_KEY=`jq -r '.SecretAccessKey' aws_credentials.json` - export AWS_SESSION_TOKEN=`jq -r '.Token' aws_credentials.json` build: @@ -53,9 +39,6 @@ phases: - /bin/packer init build.pkr.hcl - ln -s ${CODEBUILD_SRC_DIR_SourceAnsibleOutput}/roles - /bin/packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl - - echo "Running Packer build" - - packer init build.pkr.hcl - - packer build -var project_name=rhel-arm-image-pipeline-demo -var ansible_dir=${CODEBUILD_SRC_DIR_SourceAnsibleOutput} build.pkr.hcl post_build: commands: diff --git a/main.tf b/main.tf index fe37153..50d40cb 100644 --- a/main.tf +++ b/main.tf @@ -88,38 +88,9 @@ data "aws_codecommit_repository" "goss" { repository_name = "image-pipeline-goss-testing" } -module "main" { +module "rhel" { source = "HappyPathway/image-pipeline/aws" - project_name = local.project_name - source_repo_name = local.source_repo - source_repo_branch = "main" - builder_image = "aws/codebuild/standard:7.0" - create_new_repo = false - create_new_role = true - create_vpc_endpoint = true - ssh_user = "ec2-user" - playbook = "hello-world.yaml" - terraform_version = "1.8.5" - build_permissions_iam_doc = data.aws_iam_policy_document.s3_access - build_environment_variables = [ - for proxy_var in keys(local.proxy_env_vars) : { - name = proxy_var - value = lookup(local.proxy_env_vars, proxy_var) - type = "PLAINTEXT" - } - ] - ansible_repo = data.aws_codecommit_repository.ansible - goss_repo = data.aws_codecommit_repository.goss - goss_profile = "base-test" - state = local.state_config - vpc_config = local.vpc_config - source_ami = "ami-03fadeeea589a106b" - instance_type = "t2.micro" -} - -module "rhel-arm" { - source = "HappyPathway/image-pipeline/aws" - project_name = "rhel-arm-image-pipeline-demo" + project_name = "rhel-image-pipeline-demo" source_repo_name = local.source_repo source_repo_branch = "main" builder_image = "aws/codebuild/standard:7.0" @@ -127,7 +98,7 @@ module "rhel-arm" { create_new_role = true create_vpc_endpoint = false ssh_user = "ec2-user" - playbook = "rhel-arm-baseline.yaml" + playbook = "rhel-baseline.yml" terraform_version = "1.8.5" build_permissions_iam_doc = data.aws_iam_policy_document.s3_access build_environment_variables = [ @@ -139,11 +110,11 @@ module "rhel-arm" { ] ansible_repo = data.aws_codecommit_repository.ansible goss_repo = data.aws_codecommit_repository.goss - goss_profile = "rhel-arm-base-test" + goss_profile = "rhel-base-test" state = local.state_config vpc_config = local.vpc_config - source_ami = "ami-01c116d3e0152a132" - instance_type = "t3.micro" + source_ami = "ami-03fadeeea589a106b" # x86_64 compatible AMI + instance_type = "t3.micro" # x86_64 compatible instance type } resource "random_password" "winrm" { @@ -172,10 +143,10 @@ module "windows" { password = random_password.winrm.result } userdata = "userdata/winrm.ps1" - build_environment_variables = [ + build_environment_variables = [ for proxy_var in keys(local.proxy_env_vars) : - { - name=proxy_var, + { + name=proxy_var, value=lookup(local.proxy_env_vars, proxy_var), type = "PLAINTEXT" } @@ -185,6 +156,6 @@ module "windows" { goss_profile = "windows-base-test" state = local.state_config vpc_config = local.vpc_config - source_ami = "ami-012fffaddacaa52ff" - instance_type = "t2.xlarge" + source_ami = "ami-012fffaddacaa52ff" # x86_64 compatible AMI + instance_type = "t2.xlarge" # x86_64 compatible instance type } \ No newline at end of file diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index 9049e43..fb54232 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -1,71 +1,79 @@ --- - name: RHEL ARM Baseline - hosts: all - become: true +  hosts: all +  become: true +  tasks: +    - name: Ensure latest packages are installed +      package: +        name: '*' +        state: latest - tasks: - - name: Ensure latest packages are installed - yum: - name: '*' - state: latest +    - name: Install required packages +      package: +        name: +          - vim +          - git +          - wget +          - net-tools +          - unzip +          - epel-release +          - htop +        state: present - - name: Install required packages - yum: - name: - - vim - - git - - curl - - wget - - net-tools - - unzip - - epel-release - - htop - state: present +    - name: Remove curl-minimal if installed +      package: +        name: curl-minimal +        state: absent - - name: Create example user - user: - name: exampleuser - state: present - groups: wheel - shell: /bin/bash - password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash +    - name: Install curl +      package: +        name: curl +        state: present - - name: Configure SSH for exampleuser - authorized_key: - user: exampleuser - state: present - key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key +    - name: Create example user +      user: +        name: exampleuser +        state: present +        groups: wheel +        shell: /bin/bash +        password: "{{ 'password' | password_hash('sha512') }}"  # Change 'password' to a secure password or hash - - name: Ensure firewalld is installed and running - yum: - name: firewalld - state: present +    - name: Configure SSH for exampleuser +      authorized_key: +        user: exampleuser +        state: present +        key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}"  # Replace with the actual path to the public key - - name: Start and enable firewalld - service: - name: firewalld - state: started - enabled: yes +    - name: Ensure firewalld is installed and running +      package: +        name: firewalld +        state: present - - name: Open SSH port in firewall - firewalld: - service: ssh - permanent: true - state: enabled - immediate: yes +    - name: Start and enable firewalld +      service: +        name: firewalld +        state: started +        enabled: yes - - name: Disable SELinux - selinux: - state: disabled +    - name: Open SSH port in firewall +      firewalld: +        service: ssh +        permanent: true +        state: enabled +        immediate: yes - - name: Set timezone to UTC - command: timedatectl set-timezone UTC +    - name: Disable SELinux +      selinux: +        state: disabled - - name: Reboot the system to apply changes - reboot: - msg: "Reboot initiated by Ansible for baseline setup" - connect_timeout: 5 - reboot_timeout: 600 - pre_reboot_delay: 0 - post_reboot_delay: 30 - test_command: whoami \ No newline at end of file +    - name: Set timezone to UTC +      command: timedatectl set-timezone UTC + +    - name: Reboot the system to apply changes +      reboot: +        msg: "Reboot initiated by Ansible for baseline setup" +        connect_timeout: 5 +        reboot_timeout: 600 +        pre_reboot_delay: 0 +        post_reboot_delay: 30 +        test_command: whoami \ No newline at end of file From ca73e7ab20c528f6a9c67e2240b0bc34bec6bad9 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 30 Jul 2024 14:59:13 -0400 Subject: [PATCH 44/67] lifecycle change --- main.tf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/main.tf b/main.tf index 50d40cb..5477f44 100644 --- a/main.tf +++ b/main.tf @@ -158,4 +158,8 @@ module "windows" { vpc_config = local.vpc_config source_ami = "ami-012fffaddacaa52ff" # x86_64 compatible AMI instance_type = "t2.xlarge" # x86_64 compatible instance type + + lifecycle { + prevent_destroy = true + } } \ No newline at end of file From 904197e8264888aec634e0a205cc46eeac7e9026 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 14:02:42 -0400 Subject: [PATCH 45/67] Took Windows Pipe out to run test --- main.tf | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/main.tf b/main.tf index 5477f44..7eb4a04 100644 --- a/main.tf +++ b/main.tf @@ -127,6 +127,7 @@ output "password" { value = nonsensitive(random_password.winrm.result) } +/* module "windows" { source = "HappyPathway/image-pipeline/aws" project_name = "windows-image-pipeline-demo" @@ -146,19 +147,19 @@ module "windows" { build_environment_variables = [ for proxy_var in keys(local.proxy_env_vars) : { - name=proxy_var, - value=lookup(local.proxy_env_vars, proxy_var), - type = "PLAINTEXT" + name = proxy_var, + value = lookup(local.proxy_env_vars, proxy_var), + type = "PLAINTEXT" } ] ansible_repo = data.aws_codecommit_repository.ansible goss_repo = data.aws_codecommit_repository.goss goss_profile = "windows-base-test" - state = local.state_config - vpc_config = local.vpc_config - source_ami = "ami-012fffaddacaa52ff" # x86_64 compatible AMI - instance_type = "t2.xlarge" # x86_64 compatible instance type - + state = local.state_config + vpc_config = local.vpc_config + source_ami = "ami-012fffaddacaa52ff" # x86_64 compatible AMI + instance_type = "t2.xlarge" # x86_64 compatible instance type + lifecycle { prevent_destroy = true } From 4f6d21ba836c324d140d6cbfc05df4cdd6b03768 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 14:04:10 -0400 Subject: [PATCH 46/67] Syntax fix --- main.tf | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/main.tf b/main.tf index 7eb4a04..b135b6b 100644 --- a/main.tf +++ b/main.tf @@ -163,4 +163,6 @@ module "windows" { lifecycle { prevent_destroy = true } -} \ No newline at end of file +} + +*/ \ No newline at end of file From cdc4bc33b248be7fc169cc40a0a43275489e2902 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 14:22:27 -0400 Subject: [PATCH 47/67] Updated --- main.tf | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/main.tf b/main.tf index b135b6b..8ad0b24 100644 --- a/main.tf +++ b/main.tf @@ -127,7 +127,7 @@ output "password" { value = nonsensitive(random_password.winrm.result) } -/* + module "windows" { source = "HappyPathway/image-pipeline/aws" project_name = "windows-image-pipeline-demo" @@ -164,5 +164,3 @@ module "windows" { prevent_destroy = true } } - -*/ \ No newline at end of file From 77d4e9cb73bdba3dfd57cf385f3d2bdb98193962 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 14:27:06 -0400 Subject: [PATCH 48/67] Syntax fix --- main.tf | 4 ---- 1 file changed, 4 deletions(-) diff --git a/main.tf b/main.tf index 8ad0b24..2cf4540 100644 --- a/main.tf +++ b/main.tf @@ -159,8 +159,4 @@ module "windows" { vpc_config = local.vpc_config source_ami = "ami-012fffaddacaa52ff" # x86_64 compatible AMI instance_type = "t2.xlarge" # x86_64 compatible instance type - - lifecycle { - prevent_destroy = true - } } From 8796f839b117cd290e38b25cb87b818e92e1189d Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 15:04:34 -0400 Subject: [PATCH 49/67] Updated --- README.md | 3 + main.tf | 13 +- plan.out | Bin 0 -> 131025 bytes terraform_plan.log | 734 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 743 insertions(+), 7 deletions(-) create mode 100644 plan.out create mode 100644 terraform_plan.log diff --git a/README.md b/README.md index 922db07..14392f4 100644 --- a/README.md +++ b/README.md @@ -26,3 +26,6 @@ rebecaa linn : She does x86 (get context for ARM) cd ~/.aws/ +terraform plan -out=plan.out | tee terraform_plan.log + + diff --git a/main.tf b/main.tf index 2cf4540..998ba99 100644 --- a/main.tf +++ b/main.tf @@ -145,12 +145,11 @@ module "windows" { } userdata = "userdata/winrm.ps1" build_environment_variables = [ - for proxy_var in keys(local.proxy_env_vars) : - { - name = proxy_var, - value = lookup(local.proxy_env_vars, proxy_var), - type = "PLAINTEXT" - } + for proxy_var in keys(local.proxy_env_vars) : { + name = proxy_var + value = lookup(local.proxy_env_vars, proxy_var) + type = "PLAINTEXT" + } ] ansible_repo = data.aws_codecommit_repository.ansible goss_repo = data.aws_codecommit_repository.goss @@ -159,4 +158,4 @@ module "windows" { vpc_config = local.vpc_config source_ami = "ami-012fffaddacaa52ff" # x86_64 compatible AMI instance_type = "t2.xlarge" # x86_64 compatible instance type -} +} \ No newline at end of file diff --git a/plan.out b/plan.out new file mode 100644 index 0000000000000000000000000000000000000000..af85f38374efab7eae17c603a416932a8f092dac GIT binary patch literal 131025 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 null + - force_destroy = false -> null + - id = "linux-image-pipeline-demo" -> null + - name = "linux-image-pipeline-demo" -> null + - path = "/tf-pipeline/" -> null + - tags = { + - "Account_ID" = "229685449397" + - "Project_Name" = "linux-image-pipeline-demo" + - "Region" = "us-gov-west-1" + } -> null + - tags_all = { + - "Account_ID" = "229685449397" + - "Project_Name" = "linux-image-pipeline-demo" + - "Region" = "us-gov-west-1" + } -> null + - unique_id = "AIDATK6SR2K2UPEEDXTG7" -> null + # (1 unchanged attribute hidden) + } + + # module.rhel.aws_secretsmanager_secret.credentials will be created + + resource "aws_secretsmanager_secret" "credentials" { + + arn = (known after apply) + + force_overwrite_replica_secret = false + + id = (known after apply) + + name = "rhel-image-pipeline-demo-aws-credentials" + + name_prefix = (known after apply) + + policy = (known after apply) + + recovery_window_in_days = 30 + + tags_all = (known after apply) + + + replica (known after apply) + } + + # module.rhel.aws_secretsmanager_secret_version.credentials will be created + + resource "aws_secretsmanager_secret_version" "credentials" { + + arn = (known after apply) + + id = (known after apply) + + secret_id = (known after apply) + + secret_string = (sensitive value) + + version_id = (known after apply) + + version_stages = (known after apply) + } + + # module.windows.aws_secretsmanager_secret.credentials will be created + + resource "aws_secretsmanager_secret" "credentials" { + + arn = (known after apply) + + force_overwrite_replica_secret = false + + id = (known after apply) + + name = "windows-image-pipeline-demo-aws-credentials" + + name_prefix = (known after apply) + + policy = (known after apply) + + recovery_window_in_days = 30 + + tags_all = (known after apply) + + + replica (known after apply) + } + + # module.windows.aws_secretsmanager_secret.secrets["winrm_credentials"] will be created + + resource "aws_secretsmanager_secret" "secrets" { + + arn = (known after apply) + + force_overwrite_replica_secret = false + + id = (known after apply) + + name = "/image-pipeline/windows-image-pipeline-demo/winrm_credentials" + + name_prefix = (known after apply) + + policy = (known after apply) + + recovery_window_in_days = 30 + + tags_all = (known after apply) + + + replica (known after apply) + } + + # module.windows.aws_secretsmanager_secret_version.credentials will be created + + resource "aws_secretsmanager_secret_version" "credentials" { + + arn = (known after apply) + + id = (known after apply) + + secret_id = (known after apply) + + secret_string = (sensitive value) + + version_id = (known after apply) + + version_stages = (known after apply) + } + + # module.windows.aws_secretsmanager_secret_version.secrets["winrm_credentials"] will be created + + resource "aws_secretsmanager_secret_version" "secrets" { + + arn = (known after apply) + + id = (known after apply) + + secret_id = (known after apply) + + secret_string = (sensitive value) + + version_id = (known after apply) + + version_stages = (known after apply) + } + + # module.rhel.module.codepipeline_iam_role.data.aws_iam_policy_document.codepipeline_policy will be read during apply + # (config refers to values not yet known) + <= data "aws_iam_policy_document" "codepipeline_policy" { + + id = (known after apply) + + json = (known after apply) + + minified_json = (known after apply) + + + statement { + + actions = [ + + "secretsmanager:GetSecretValue", + ] + + effect = "Allow" + + resources = [ + + (known after apply), + ] + } + + statement { + + actions = [ + + "s3:*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:s3:::inf-test-08230846-acc4-7788-94df-5730ed20c008/*", + + "arn:aws-us-gov:s3:::rhel-image-pipeline-demo20240731182105707600000002/*", + ] + } + + statement { + + actions = [ + + "ssm:*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:ssm:us-gov-west-1:229685449397:parameter/image-pipeline/rhel-image-pipeline-demo/*", + ] + } + + statement { + + actions = [ + + "secretsmanager:*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:secretsmanager:us-gov-west-1:229685449397:secret:/image-pipeline/rhel-image-pipeline-demo/*", + ] + } + + statement { + + actions = [ + + "kms:Decrypt", + + "kms:DescribeKey", + + "kms:Encrypt", + + "kms:GenerateDataKey*", + + "kms:ReEncrypt*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/87f2048e-dba4-449f-b12e-47c9315f7fd8", + ] + } + + statement { + + actions = [ + + "ec2:ImportKeyPair", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:ec2:us-gov-west-1:229685449397:key-pair/rhel-image-pipeline-demo-deployer-key", + ] + } + + statement { + + actions = [ + + "codecommit:BatchGetCommits", + + "codecommit:BatchGetRepositories", + + "codecommit:CreateCommit", + + "codecommit:GetBranch", + + "codecommit:GetCommit", + + "codecommit:GetRepository", + + "codecommit:GetUploadArchiveStatus", + + "codecommit:GitPull", + + "codecommit:GitPush", + + "codecommit:ListBranches", + + "codecommit:ListRepositories", + + "codecommit:UploadArchive", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-ansible-playbooks", + + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-goss-testing", + + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:linux-image-pipeline", + ] + } + + statement { + + actions = [ + + "codebuild:BatchGetBuilds", + + "codebuild:BatchGetProjects", + + "codebuild:StartBuild", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:codebuild:us-gov-west-1:229685449397:project/rhel-image-pipeline-demo*", + ] + } + + statement { + + actions = [ + + "codebuild:BatchPutTestCases", + + "codebuild:CreateReport", + + "codebuild:CreateReportGroup", + + "codebuild:UpdateReport", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:codebuild:us-gov-west-1:229685449397:report-group/rhel-image-pipeline-demo*", + ] + } + + statement { + + actions = [ + + "dynamodb:*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:dynamodb:us-gov-west-1:229685449397:table/tf_remote_state", + ] + } + + statement { + + actions = [ + + "logs:CreateLogGroup", + + "logs:CreateLogStream", + + "logs:PutLogEvents", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:logs:us-gov-west-1:229685449397:log-group:*", + ] + } + + statement { + + actions = [ + + "ec2:*", + ] + + effect = "Allow" + + resources = [ + + "*", + ] + } + } + + # module.rhel.module.codepipeline_iam_role.aws_iam_policy.codepipeline_policy[0] will be created + + resource "aws_iam_policy" "codepipeline_policy" { + + arn = (known after apply) + + attachment_count = (known after apply) + + description = "Policy to allow codepipeline to execute" + + id = (known after apply) + + name = "rhel-image-pipeline-demo-codepipeline-policy" + + name_prefix = (known after apply) + + path = "/" + + policy = (known after apply) + + policy_id = (known after apply) + + tags = { + + "Account_ID" = "229685449397" + + "Project_Name" = "rhel-image-pipeline-demo" + + "Region" = "us-gov-west-1" + } + + tags_all = { + + "Account_ID" = "229685449397" + + "Project_Name" = "rhel-image-pipeline-demo" + + "Region" = "us-gov-west-1" + } + } + + # module.rhel.module.codepipeline_iam_role.aws_iam_role_policy_attachment.codepipeline_role_attach[0] will be created + + resource "aws_iam_role_policy_attachment" "codepipeline_role_attach" { + + id = (known after apply) + + policy_arn = (known after apply) + + role = "rhel-image-pipeline-demo-codepipeline-role" + } + + # module.windows.module.codepipeline_iam_role.data.aws_iam_policy_document.codepipeline_policy will be read during apply + # (config refers to values not yet known) + <= data "aws_iam_policy_document" "codepipeline_policy" { + + id = (known after apply) + + json = (known after apply) + + minified_json = (known after apply) + + + statement { + + actions = [ + + "secretsmanager:GetSecretValue", + ] + + effect = "Allow" + + resources = [ + + (known after apply), + ] + } + + statement { + + actions = [ + + "s3:*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:s3:::inf-test-08230846-acc4-7788-94df-5730ed20c008/*", + + "arn:aws-us-gov:s3:::windows-image-pipeline-demo20240731183313147900000004/*", + ] + } + + statement { + + actions = [ + + "ssm:*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:ssm:us-gov-west-1:229685449397:parameter/image-pipeline/windows-image-pipeline-demo/*", + ] + } + + statement { + + actions = [ + + "secretsmanager:*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:secretsmanager:us-gov-west-1:229685449397:secret:/image-pipeline/windows-image-pipeline-demo/*", + ] + } + + statement { + + actions = [ + + "kms:Decrypt", + + "kms:DescribeKey", + + "kms:Encrypt", + + "kms:GenerateDataKey*", + + "kms:ReEncrypt*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:kms:us-gov-west-1:229685449397:key/498724ae-3fb1-46b0-bc26-1481e0551e24", + ] + } + + statement { + + actions = [ + + "ec2:ImportKeyPair", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:ec2:us-gov-west-1:229685449397:key-pair/windows-image-pipeline-demo-deployer-key", + ] + } + + statement { + + actions = [ + + "codecommit:BatchGetCommits", + + "codecommit:BatchGetRepositories", + + "codecommit:CreateCommit", + + "codecommit:GetBranch", + + "codecommit:GetCommit", + + "codecommit:GetRepository", + + "codecommit:GetUploadArchiveStatus", + + "codecommit:GitPull", + + "codecommit:GitPush", + + "codecommit:ListBranches", + + "codecommit:ListRepositories", + + "codecommit:UploadArchive", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-ansible-playbooks", + + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:image-pipeline-goss-testing", + + "arn:aws-us-gov:codecommit:us-gov-west-1:229685449397:windows-image-pipeline", + ] + } + + statement { + + actions = [ + + "codebuild:BatchGetBuilds", + + "codebuild:BatchGetProjects", + + "codebuild:StartBuild", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:codebuild:us-gov-west-1:229685449397:project/windows-image-pipeline-demo*", + ] + } + + statement { + + actions = [ + + "codebuild:BatchPutTestCases", + + "codebuild:CreateReport", + + "codebuild:CreateReportGroup", + + "codebuild:UpdateReport", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:codebuild:us-gov-west-1:229685449397:report-group/windows-image-pipeline-demo*", + ] + } + + statement { + + actions = [ + + "dynamodb:*", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:dynamodb:us-gov-west-1:229685449397:table/tf_remote_state", + ] + } + + statement { + + actions = [ + + "logs:CreateLogGroup", + + "logs:CreateLogStream", + + "logs:PutLogEvents", + ] + + effect = "Allow" + + resources = [ + + "arn:aws-us-gov:logs:us-gov-west-1:229685449397:log-group:*", + ] + } + + statement { + + actions = [ + + "ec2:*", + ] + + effect = "Allow" + + resources = [ + + "*", + ] + } + } + + # module.windows.module.codepipeline_iam_role.aws_iam_policy.codepipeline_policy[0] will be created + + resource "aws_iam_policy" "codepipeline_policy" { + + arn = (known after apply) + + attachment_count = (known after apply) + + description = "Policy to allow codepipeline to execute" + + id = (known after apply) + + name = "windows-image-pipeline-demo-codepipeline-policy" + + name_prefix = (known after apply) + + path = "/" + + policy = (known after apply) + + policy_id = (known after apply) + + tags = { + + "Account_ID" = "229685449397" + + "Project_Name" = "windows-image-pipeline-demo" + + "Region" = "us-gov-west-1" + } + + tags_all = { + + "Account_ID" = "229685449397" + + "Project_Name" = "windows-image-pipeline-demo" + + "Region" = "us-gov-west-1" + } + } + + # module.windows.module.codepipeline_iam_role.aws_iam_role_policy_attachment.codepipeline_role_attach[0] will be created + + resource "aws_iam_role_policy_attachment" "codepipeline_role_attach" { + + id = (known after apply) + + policy_arn = (known after apply) + + role = "windows-image-pipeline-demo-codepipeline-role" + } + +Plan: 13 to add, 0 to change, 1 to destroy. + +───────────────────────────────────────────────────────────────────────────── + +Saved the plan to: plan.out + +To perform exactly these actions, run the following command to apply: + terraform apply "plan.out" From bfe71ee426437426c7f7502447b3f5b5447fe36c Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 17:05:45 -0400 Subject: [PATCH 50/67] Non performing update --- plan.out | Bin 131025 -> 0 bytes terraform.tfstate | 0 tfplan | Bin 190344 -> 0 bytes 3 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 plan.out delete mode 100644 terraform.tfstate delete mode 100644 tfplan diff --git a/plan.out b/plan.out deleted file mode 100644 index af85f38374efab7eae17c603a416932a8f092dac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 131025 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%0AhRL;le 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 From f300a8c11302463c93f36d11bb05d1efc90e031b Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 18:50:44 -0400 Subject: [PATCH 51/67] Updated KMS --- kms.tf | 50 ++++++-------------------------------------------- playbook.yml | 0 2 files changed, 6 insertions(+), 44 deletions(-) delete mode 100644 playbook.yml diff --git a/kms.tf b/kms.tf index bffb2ee..4820dfe 100644 --- a/kms.tf +++ b/kms.tf @@ -1,11 +1,10 @@ locals { - kms_key_name = "rhel-x86-codepipeline-key" # Name for the KMS key alias - account_id = "229685449397" # Replace with your AWS account ID - partition = "aws-us-gov" - region = "us-gov-west-1" + kms_key_name = "rhel-x86-codepipeline-key" # Name for the KMS key alias + account_id = "229685449397" # Replace with your AWS account ID + partition = "aws-us-gov" + region = "us-gov-west-1" } -# Define the KMS Key resource resource "aws_kms_key" "rhel_x86_codepipeline_key" { description = "KMS key for RHEL x86 CodePipeline" enable_key_rotation = true @@ -13,13 +12,11 @@ resource "aws_kms_key" "rhel_x86_codepipeline_key" { policy = data.aws_iam_policy_document.key_policy_combined.json } -# Define the KMS Key Alias resource "aws_kms_alias" "rhel_x86_codepipeline_alias" { name = "alias/${local.kms_key_name}" target_key_id = aws_kms_key.rhel_x86_codepipeline_key.key_id } -# Define the key policy document data "aws_iam_policy_document" "key_policy_combined" { statement { sid = "Enable IAM User Permissions" @@ -32,46 +29,13 @@ data "aws_iam_policy_document" "key_policy_combined" { resources = ["*"] } - statement { - sid = "Allow access for Key Administrators" - effect = "Allow" - principals { - type = "AWS" - identifiers = [ - "arn:${local.partition}:iam::${local.account_id}:role/rhel-arm-image-pipeline-demo-codepipeline-role", - "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-ec2-role", - "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-codepipeline-role" - ] - } - actions = [ - "kms:Create*", - "kms:Describe*", - "kms:Enable*", - "kms:List*", - "kms:Put*", - "kms:Update*", - "kms:Revoke*", - "kms:Disable*", - "kms:Get*", - "kms:Delete*", - "kms:TagResource", - "kms:UntagResource", - "kms:ScheduleKeyDeletion", - "kms:CancelKeyDeletion", - "kms:RotateKeyOnDemand" - ] - resources = ["*"] - } - statement { sid = "Allow use of the key" effect = "Allow" principals { type = "AWS" identifiers = [ - "arn:${local.partition}:iam::${local.account_id}:role/rhel-arm-image-pipeline-demo-codepipeline-role", - "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-ec2-role", - "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-codepipeline-role" + "arn:${local.partition}:iam::${local.account_id}:user/tf-pipeline/rhel-image-pipeline-demo" ] } actions = [ @@ -90,9 +54,7 @@ data "aws_iam_policy_document" "key_policy_combined" { principals { type = "AWS" identifiers = [ - "arn:${local.partition}:iam::${local.account_id}:role/rhel-arm-image-pipeline-demo-codepipeline-role", - "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-ec2-role", - "arn:${local.partition}:iam::${local.account_id}:role/rhel-x86-image-pipeline-demo-codepipeline-role" + "arn:${local.partition}:iam::${local.account_id}:user/tf-pipeline/rhel-image-pipeline-demo" ] } actions = [ diff --git a/playbook.yml b/playbook.yml deleted file mode 100644 index e69de29..0000000 From 8fc2f26adc11849838b1b3b678781ecbf443c54c Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 19:00:02 -0400 Subject: [PATCH 52/67] Incorrect yaml name --- build.pkr.hcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index 830b06c..63c860a 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -19,7 +19,7 @@ build { sources = ["source.amazon-ebs.rhel"] provisioner "ansible" { - playbook_file = "${var.ansible_dir}/rhel-baseline.yml" + playbook_file = "${var.ansible_dir}/rhel-arm-baseline.yaml" } post-processor "shell-local" { From 9227adf791631516dd74d07f3ee1c94244f12e7e Mon Sep 17 00:00:00 2001 From: lolli001 Date: Wed, 31 Jul 2024 19:09:16 -0400 Subject: [PATCH 53/67] Updated pipeline name --- main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.tf b/main.tf index 998ba99..8411e57 100644 --- a/main.tf +++ b/main.tf @@ -98,7 +98,7 @@ module "rhel" { create_new_role = true create_vpc_endpoint = false ssh_user = "ec2-user" - playbook = "rhel-baseline.yml" + playbook = "rhel-arm-baseline.yaml" terraform_version = "1.8.5" build_permissions_iam_doc = data.aws_iam_policy_document.s3_access build_environment_variables = [ From 3718635e1e24a87d5122fd24dec70f1e8a694d9e Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 11:31:56 -0400 Subject: [PATCH 54/67] Syntax issues --- README.md | 3 + rhel-arm-baseline.yaml | 132 ++++++++++++++++++++--------------------- 2 files changed, 69 insertions(+), 66 deletions(-) diff --git a/README.md b/README.md index 14392f4..a9cd440 100644 --- a/README.md +++ b/README.md @@ -28,4 +28,7 @@ cd ~/.aws/ terraform plan -out=plan.out | tee terraform_plan.log +#Formatting error command +yamllint 'file name' + diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index fb54232..475aa56 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -1,79 +1,79 @@ --- - name: RHEL ARM Baseline -  hosts: all -  become: true -  tasks: -    - name: Ensure latest packages are installed -      package: -        name: '*' -        state: latest +hosts: all +become: true +tasks: + - name: Ensure latest packages are installed + package: + name: '*' + state: latest -    - name: Install required packages -      package: -        name: -          - vim -          - git -          - wget -          - net-tools -          - unzip -          - epel-release -          - htop -        state: present + -name: Install require packages + package: + name: + - vim + - git + - wget + - net-tools + - unzip + - epel-release + - htop + state: present -    - name: Remove curl-minimal if installed -      package: -        name: curl-minimal -        state: absent +- name: Remove curl-minimal if installed + package: + name: curl-minimal + state: absent -    - name: Install curl -      package: -        name: curl -        state: present +- name: Install curl + package: + name: curl + state: present -    - name: Create example user -      user: -        name: exampleuser -        state: present -        groups: wheel -        shell: /bin/bash -        password: "{{ 'password' | password_hash('sha512') }}"  # Change 'password' to a secure password or hash + - name: Create example user + user: + name: exampleuser + state: present + groups: wheel + shell: /bin/bash + password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash -    - name: Configure SSH for exampleuser -      authorized_key: -        user: exampleuser -        state: present -        key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}"  # Replace with the actual path to the public key + - name: Configure SSH for exampleuser + authorized_key: + user: exampleuser + state: present + key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key -    - name: Ensure firewalld is installed and running -      package: -        name: firewalld -        state: present + - name: Ensure firewalld is installed and running + package: + name: firewalld + state: present -    - name: Start and enable firewalld -      service: -        name: firewalld -        state: started -        enabled: yes + - name: Start and enable firewalld + service: + name: firewalld + state: started + enabled: yes -    - name: Open SSH port in firewall -      firewalld: -        service: ssh -        permanent: true -        state: enabled -        immediate: yes + - name: Open SSH port in firewall + firewalld: + service: ssh + permanent: true + state: enabled + immediate: yes -    - name: Disable SELinux -      selinux: -        state: disabled + - name: Disable SELinux + selinux: + state: disabled -    - name: Set timezone to UTC -      command: timedatectl set-timezone UTC + - name: Set timezone to UTC + command: timedatectl set-timezone UTC -    - name: Reboot the system to apply changes -      reboot: -        msg: "Reboot initiated by Ansible for baseline setup" -        connect_timeout: 5 -        reboot_timeout: 600 -        pre_reboot_delay: 0 -        post_reboot_delay: 30 -        test_command: whoami \ No newline at end of file + - name: Reboot the system to apply changes + reboot: + msg: "Reboot initiated by Ansible for baseline setup" + connect_timeout: 5 + reboot_timeout: 600 + pre_reboot_delay: 0 + post_reboot_delay: 30 + test_command: whoami \ No newline at end of file From b5e4e2fa40c1c7a69269847a017c2007244a959b Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 12:31:04 -0400 Subject: [PATCH 55/67] Syntax fix --- rhel-arm-baseline.yaml | 60 +++++++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index 475aa56..72b926a 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -1,33 +1,33 @@ --- - name: RHEL ARM Baseline -hosts: all -become: true -tasks: - - name: Ensure latest packages are installed - package: - name: '*' - state: latest + hosts: all + become: true + tasks: + - name: Ensure latest packages are installed + package: + name: "*" + state: latest - -name: Install require packages - package: - name: - - vim - - git - - wget - - net-tools - - unzip - - epel-release - - htop - state: present + - name: Install required packages + package: + name: + - vim + - git + - wget + - net-tools + - unzip + - epel-release + - htop + state: present -- name: Remove curl-minimal if installed - package: - name: curl-minimal - state: absent + - name: Remove curl-minimal if installed + package: + name: curl-minimal + state: absent -- name: Install curl - package: - name: curl + - name: Install curl + package: + name: curl state: present - name: Create example user @@ -36,13 +36,13 @@ tasks: state: present groups: wheel shell: /bin/bash - password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash + password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash - name: Configure SSH for exampleuser authorized_key: user: exampleuser state: present - key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key + key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key - name: Ensure firewalld is installed and running package: @@ -57,7 +57,7 @@ tasks: - name: Open SSH port in firewall firewalld: - service: ssh + service: ssh permanent: true state: enabled immediate: yes @@ -70,10 +70,10 @@ tasks: command: timedatectl set-timezone UTC - name: Reboot the system to apply changes - reboot: + reboot: msg: "Reboot initiated by Ansible for baseline setup" connect_timeout: 5 reboot_timeout: 600 pre_reboot_delay: 0 post_reboot_delay: 30 - test_command: whoami \ No newline at end of file + test_command: whoami From b6e39c0d53859b9146a15a2b806a761bb2a6a62c Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 15:11:25 -0400 Subject: [PATCH 56/67] Updated for errors --- buildspec.yml | 7 ------- rhel-arm-baseline.yaml | 14 +++++++------- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/buildspec.yml b/buildspec.yml index d091010..6f29dcb 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -44,10 +44,3 @@ phases: commands: - cd ${CODEBUILD_SRC_DIR}/${CODE_SRC_DIR} - echo "Checking for the AMI ID file" - - test -s ami_id.txt || exit 1 - -artifacts: - files: - - '**/*' - discard-paths: yes - - ami_id.txt \ No newline at end of file diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index 72b926a..9f15bca 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -2,31 +2,31 @@ - name: RHEL ARM Baseline hosts: all become: true + tasks: - name: Ensure latest packages are installed - package: + yum: name: "*" state: latest - name: Install required packages - package: + yum: name: - vim - git - wget - net-tools - unzip - - epel-release - htop state: present - name: Remove curl-minimal if installed - package: + yum: name: curl-minimal state: absent - name: Install curl - package: + yum: name: curl state: present @@ -36,7 +36,7 @@ state: present groups: wheel shell: /bin/bash - password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash + password: "{{ 'secure_password' | password_hash('sha512') }}" # Replace 'secure_password' with a strong password - name: Configure SSH for exampleuser authorized_key: @@ -45,7 +45,7 @@ key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key - name: Ensure firewalld is installed and running - package: + yum: name: firewalld state: present From cc9fcfc6cf68625728f4c3698e86bc843035bb22 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 15:31:26 -0400 Subject: [PATCH 57/67] Updated for errors --- build.pkr.hcl | 1 - rhel-arm-baseline.yaml | 23 +++++++++++++++++------ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index 63c860a..3f3ef12 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -26,7 +26,6 @@ build { inline_shebang = "/bin/sh" inline = [ "echo 'Build finished!'", - "echo '${build.amis}' > ami_id.txt", ] } } \ No newline at end of file diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index 9f15bca..491569b 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -2,15 +2,26 @@ - name: RHEL ARM Baseline hosts: all become: true + vars: + ansible_python_interpreter: /usr/bin/python3.9 # Explicitly define the Python interpreter tasks: + - name: Install pip + package: + name: python3-pip + state: present + + - name: Install passlib + pip: + name: passlib + - name: Ensure latest packages are installed - yum: + package: name: "*" state: latest - name: Install required packages - yum: + package: name: - vim - git @@ -21,12 +32,12 @@ state: present - name: Remove curl-minimal if installed - yum: + package: name: curl-minimal state: absent - name: Install curl - yum: + package: name: curl state: present @@ -36,7 +47,7 @@ state: present groups: wheel shell: /bin/bash - password: "{{ 'secure_password' | password_hash('sha512') }}" # Replace 'secure_password' with a strong password + password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash - name: Configure SSH for exampleuser authorized_key: @@ -45,7 +56,7 @@ key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key - name: Ensure firewalld is installed and running - yum: + package: name: firewalld state: present From 46f10b5e3f39804f6b44d7806c65c1274d6e20ad Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 16:26:01 -0400 Subject: [PATCH 58/67] Updated Proxy settings --- build.pkr.hcl | 25 +++++++++++++++++++++++++ rhel-arm-baseline.yaml | 32 ++++++++++++++++++++------------ 2 files changed, 45 insertions(+), 12 deletions(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index 3f3ef12..3f408e2 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -13,13 +13,38 @@ source "amazon-ebs" "rhel" { region = "us-gov-west-1" source_ami = "ami-03fadeeea589a106b" # Updated AMI ID for RHEL x86_64 ssh_username = "ec2-user" + + # Set environment variables for proxy + user_data = < Date: Thu, 1 Aug 2024 16:35:26 -0400 Subject: [PATCH 59/67] pip fix --- rhel-arm-baseline.yaml | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index 1f5c81f..1747162 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -1,16 +1,17 @@ +--- - name: RHEL ARM Baseline hosts: all become: true - vars: - http_proxy: "http://proxy.tco.census.gov:3128" - https_proxy: "http://proxy.tco.census.gov:3128" - no_proxy: ".census.gov,169.254.169.254,148.129.*,10.*,172.18.*,172.22.*,172.23.*,172.24.*,172.25.*,.eks.amazonaws.com,.s3.amazonaws.com,.amazonaws.com,.gcr.io,.pkg.dev,us-gov-west-1.compute.internal,.us-gov-west-1.compute.internal" tasks: - name: Set proxy environment variables - set_fact: - http_proxy: "{{ http_proxy }}" - https_proxy: "{{ https_proxy }}" - no_proxy: "{{ no_proxy }}" + lineinfile: + path: /etc/environment + line: "{{ item }}" + create: yes + with_items: + - "http_proxy=http://proxy.tco.census.gov:3128" + - "https_proxy=http://proxy.tco.census.gov:3128" + - "no_proxy=.census.gov,169.254.169.254,148.129.*,10.*,172.18.*,172.22.*,172.23.*,172.24.*,172.25.*,.eks.amazonaws.com,.s3.amazonaws.com,.amazonaws.com,.gcr.io,.pkg.dev,us-gov-west-1.compute.internal,.us-gov-west-1.compute.internal" - name: Ensure latest packages are installed package: @@ -28,6 +29,11 @@ - htop state: present + - name: Install pip3 + package: + name: python3-pip + state: present + - name: Remove curl-minimal if installed package: name: curl-minimal @@ -42,12 +48,7 @@ pip: name: passlib state: present - extra_args: "--trusted-host pypi.org --trusted-host files.pythonhosted.org --proxy={{ http_proxy }}" executable: /usr/bin/pip3 - environment: - http_proxy: "{{ http_proxy }}" - https_proxy: "{{ https_proxy }}" - no_proxy: "{{ no_proxy }}" - name: Create example user user: @@ -55,7 +56,7 @@ state: present groups: wheel shell: /bin/bash - password: "{{ 'secure_password' | password_hash('sha512') }}" # Replace 'secure_password' with an actual secure password or hash + password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash - name: Configure SSH for exampleuser authorized_key: From 5de10c9206fdda159bc05c2b524c989623594def Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 16:45:13 -0400 Subject: [PATCH 60/67] install fix --- rhel-arm-baseline.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index 1747162..f14ebe6 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -2,6 +2,8 @@ - name: RHEL ARM Baseline hosts: all become: true + vars: + ansible_python_interpreter: /usr/bin/python3 tasks: - name: Set proxy environment variables lineinfile: From e8a6c43d2c2d32dbfd28f08d7f95b8d32b027668 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 17:54:33 -0400 Subject: [PATCH 61/67] Updates --- build.pkr.hcl | 24 +++++------------------- vpc.tf | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 19 deletions(-) create mode 100644 vpc.tf diff --git a/build.pkr.hcl b/build.pkr.hcl index 3f408e2..e51a67b 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -4,23 +4,17 @@ variable "project_name" { } variable "ansible_dir" { - type = string + type = string + default = "aws-image-pipeline" } source "amazon-ebs" "rhel" { ami_name = "${var.project_name}-{{timestamp}}" - instance_type = "t3.micro" # Instance type supporting x86_64 + instance_type = "t3.micro" region = "us-gov-west-1" - source_ami = "ami-03fadeeea589a106b" # Updated AMI ID for RHEL x86_64 + source_ami = "ami-03fadeeea589a106b" ssh_username = "ec2-user" - - # Set environment variables for proxy - user_data = < Date: Thu, 1 Aug 2024 17:55:55 -0400 Subject: [PATCH 62/67] removed provider --- vpc.tf | 5 ----- 1 file changed, 5 deletions(-) diff --git a/vpc.tf b/vpc.tf index 1f52557..3bd4677 100644 --- a/vpc.tf +++ b/vpc.tf @@ -1,8 +1,3 @@ -provider "aws" { - region = "us-gov-west-1" - profile = "229685449397-csvd-dev-gov.inf-admin-t2" -} - # Create a VPC resource "aws_vpc" "main" { cidr_block = "10.0.0.0/16" From a53381bf38a7a8b7159d3b441cff5c5e632a4a67 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 18:52:58 -0400 Subject: [PATCH 63/67] updates --- build.pkr.hcl | 7 +++++++ vpc.tf | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/build.pkr.hcl b/build.pkr.hcl index e51a67b..14f8c4b 100644 --- a/build.pkr.hcl +++ b/build.pkr.hcl @@ -15,6 +15,13 @@ source "amazon-ebs" "rhel" { source_ami = "ami-03fadeeea589a106b" ssh_username = "ec2-user" profile = "229685449397-csvd-dev-gov.inf-admin-t2" + vpc_id = "vpc-0ce37a45e0ff40df8" + subnet_id = "subnet-0a33be151456808bd" + + tags = { + "Name" = "rhel-image-pipeline-demo-instance" + "Project" = "rhel-image-pipeline-demo" + } } build { diff --git a/vpc.tf b/vpc.tf index 3bd4677..461d95f 100644 --- a/vpc.tf +++ b/vpc.tf @@ -5,7 +5,7 @@ resource "aws_vpc" "main" { enable_dns_hostnames = true tags = { - Name = "main-vpc" + Name = "rhel-pipeline-main-vpc" } } @@ -16,6 +16,6 @@ resource "aws_subnet" "main" { availability_zone = "us-gov-west-1a" tags = { - Name = "main-subnet" + Name = "rhel-pipeline-main-subnet" } } \ No newline at end of file From 81eaf4bdd222dce07c561478fb1e070ce266dade Mon Sep 17 00:00:00 2001 From: lolli001 Date: Thu, 1 Aug 2024 19:11:48 -0400 Subject: [PATCH 64/67] errors , commented out --- rhel-arm-baseline.yaml | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/rhel-arm-baseline.yaml b/rhel-arm-baseline.yaml index f14ebe6..e5b08c3 100644 --- a/rhel-arm-baseline.yaml +++ b/rhel-arm-baseline.yaml @@ -1,4 +1,3 @@ ---- - name: RHEL ARM Baseline hosts: all become: true @@ -46,25 +45,28 @@ name: curl state: present - - name: Install passlib for password hashing - pip: - name: passlib - state: present - executable: /usr/bin/pip3 + # Commenting out due to passlib installation issue + # - name: Install passlib for password hashing + # pip: + # name: passlib + # state: present + # executable: /usr/bin/pip3 - - name: Create example user - user: - name: exampleuser - state: present - groups: wheel - shell: /bin/bash - password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash + # Commenting out due to user creation issue + # - name: Create example user + # user: + # name: exampleuser + # state: present + # groups: wheel + # shell: /bin/bash + # password: "{{ 'password' | password_hash('sha512') }}" # Change 'password' to a secure password or hash - - name: Configure SSH for exampleuser - authorized_key: - user: exampleuser - state: present - key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key + # Commenting out SSH key configuration as it's dependent on user creation + # - name: Configure SSH for exampleuser + # authorized_key: + # user: exampleuser + # state: present + # key: "{{ lookup('file', '/path/to/exampleuser_ssh_key.pub') }}" # Replace with the actual path to the public key - name: Ensure firewalld is installed and running package: From f366b2c4183a283f9c693d1facb80c7cd9d58696 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 6 Aug 2024 12:09:32 -0400 Subject: [PATCH 65/67] Updated AWS_PROFILE --- buildspec.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/buildspec.yml b/buildspec.yml index 6f29dcb..4d1356a 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -5,6 +5,7 @@ env: AWS_REGION: "us-gov-west-1" CODE_SRC_DIR: "source" CODEBUILD_SRC_DIR_SourceAnsibleOutput: "/codebuild/output/src3467/src/s3/01" + AWS_PROFILE: "229685449397-csvd-dev-gov.inf-admin-t2" phases: install: From 03742bcfd693cf428c5d3d99cfe0feae1d235765 Mon Sep 17 00:00:00 2001 From: lolli001 Date: Tue, 6 Aug 2024 12:31:38 -0400 Subject: [PATCH 66/67] Removed AWS_PROFILE --- buildspec.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/buildspec.yml b/buildspec.yml index 4d1356a..6f29dcb 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -5,7 +5,6 @@ env: AWS_REGION: "us-gov-west-1" CODE_SRC_DIR: "source" CODEBUILD_SRC_DIR_SourceAnsibleOutput: "/codebuild/output/src3467/src/s3/01" - AWS_PROFILE: "229685449397-csvd-dev-gov.inf-admin-t2" phases: install: From 006b7329899e85cf9662ca33c707b14f188cbea3 Mon Sep 17 00:00:00 2001 From: David John Arnold Jr Date: Tue, 6 Aug 2024 10:10:48 -0700 Subject: [PATCH 67/67] Update main.tf --- main.tf | 48 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/main.tf b/main.tf index 8411e57..9652181 100644 --- a/main.tf +++ b/main.tf @@ -88,6 +88,37 @@ data "aws_codecommit_repository" "goss" { repository_name = "image-pipeline-goss-testing" } + +module "main" { + source = "HappyPathway/image-pipeline/aws" + project_name = local.project_name + source_repo_name = local.source_repo + source_repo_branch = "main" + builder_image = "aws/codebuild/standard:7.0" + create_new_repo = false + create_new_role = true + create_vpc_endpoint = true + ssh_user = "ec2-user" + playbook = "hello-world.yaml" + terraform_version = "1.8.5" + build_permissions_iam_doc = data.aws_iam_policy_document.s3_access + build_environment_variables = [ + for proxy_var in keys(local.proxy_env_vars) : + { + name=proxy_var, + value=lookup(local.proxy_env_vars, proxy_var), + type = "PLAINTEXT" + } + ] + ansible_repo = data.aws_codecommit_repository.ansible + goss_repo = data.aws_codecommit_repository.goss + goss_profile = "base-test" + state = local.state_config + vpc_config = local.vpc_config + source_ami = "ami-03fadeeea589a106b" + instance_type = "t2.micro" +} + module "rhel" { source = "HappyPathway/image-pipeline/aws" project_name = "rhel-image-pipeline-demo" @@ -158,4 +189,19 @@ module "windows" { vpc_config = local.vpc_config source_ami = "ami-012fffaddacaa52ff" # x86_64 compatible AMI instance_type = "t2.xlarge" # x86_64 compatible instance type -} \ No newline at end of file +} + + + +output iam_arn { + value = module.main.iam_arn +} + +output codebuild_user { + value = module.main.build_user.nam +} + +output parameters { + value = keys(module.main.parameters) + sensitive = true +}