Skip to content

Commit

Permalink
Update build.pkr.hcl to include AWS ECR repository information
Browse files Browse the repository at this point in the history
  • Loading branch information
Dave Arnold committed Aug 30, 2024
1 parent 98c0fc2 commit 2d7aadc
Showing 1 changed file with 24 additions and 17 deletions.
41 changes: 24 additions & 17 deletions build.pkr.hcl
Original file line number Diff line number Diff line change
Expand Up @@ -69,20 +69,22 @@ data amazon-parameterstore playbook {


locals {
aws_account_id = data.amazon-parameterstore.aws_account_id.value
aws_region = data.amazon-parameterstore.aws_region.value
source_image = data.amazon-parameterstore.source_image.value
source_tag = data.amazon-parameterstore.source_tag.value
source_docker_repo = data.amazon-parameterstore.source_docker_repo.value
dest_image = data.amazon-parameterstore.dest_image.value
dest_tag = data.amazon-parameterstore.dest_tag.value
dest_docker_repo = data.amazon-parameterstore.dest_docker_repo.value
aws_account_id = data.amazon-parameterstore.aws_account_id.value
aws_region = data.amazon-parameterstore.aws_region.value
source_image = data.amazon-parameterstore.source_image.value
source_tag = data.amazon-parameterstore.source_tag.value
source_docker_repo = data.amazon-parameterstore.source_docker_repo.value
dest_image = data.amazon-parameterstore.dest_image.value
dest_tag = data.amazon-parameterstore.dest_tag.value
dest_docker_repo = data.amazon-parameterstore.dest_docker_repo.value
aws_access_key_id = jsondecode(data.amazon-secretsmanager.aws_credentials.secret_string)["aws_access_key_id"]
aws_secret_access_key = jsondecode(data.amazon-secretsmanager.aws_credentials.secret_string)["aws_secret_access_key"]
}

source "docker" "docker" {
image = "${local.aws_account_id}.dkr.ecr.${local.aws_region}.amazonaws.com/${local.source_docker_repo}/${local.source_image}:${local.source_tag}"
commit = true
ecr_login = true
image = "${local.aws_account_id}.dkr.ecr.${local.aws_region}.amazonaws.com/${local.source_docker_repo}/${local.source_image}:${local.source_tag}"
commit = true
ecr_login = true
login_server = "${local.aws_account_id}.dkr.ecr.${local.aws_region}.amazonaws.com"
}

Expand All @@ -91,10 +93,15 @@ build {

# Provisioner to run the Ansible playbook
provisioner "ansible" {
command = "/root/.local/bin/ansible-playbook"
playbook_file = "${var.ansible_dir}/${data.amazon-parameterstore.playbook.value}"
roles_path = "${var.ansible_dir}/roles"
ansible_env_vars = ["ANSIBLE_STDOUT_CALLBACK=yaml", "ANSIBLE_NOCOLOR=True"]
command = "/root/.local/bin/ansible-playbook"
playbook_file = "${var.ansible_dir}/${data.amazon-parameterstore.playbook.value}"
roles_path = "${var.ansible_dir}/roles"
ansible_env_vars = [
"ANSIBLE_STDOUT_CALLBACK=yaml",
"ANSIBLE_NOCOLOR=True",
"AWS_ACCESS_KEY_ID=${local.aws_access_key_id}",
"AWS_SECRET_ACCESS_KEY=${local.aws_secret_access_key}"
]
}

post-processors {
Expand All @@ -104,14 +111,14 @@ build {
}

post-processor "docker-push" {
ecr_login = true
ecr_login = true
login_server = "${local.aws_account_id}.dkr.ecr.${local.aws_region}.amazonaws.com"
}
}

# Post-processor to write the build name to a file and print the AMI ID
post-processor "manifest" {
output = "ami_id.json"
output = "ami_id.json"
strip_path = true
}

Expand Down

0 comments on commit 2d7aadc

Please sign in to comment.