packer/manager-ami.pkr.hcl

63 lines
1.2 KiB
HCL

packer {
required_plugins {
amazon = {
version = ">= 1.2.8"
source = "github.com/hashicorp/amazon"
}
}
}
variable "AWSAccessKeyID" {}
variable "AWSSecretAccessKey" {}
source "amazon-ebs" "ubuntu" {
ami_name = "gitlab-runner-manager-packer-ami"
instance_type = "t2.nano"
region = <VALUE>
source_ami_filter {
filters = {
name = "ubuntu/images/*ubuntu-jammy-22.04-amd64-server-*"
root-device-type = "ebs"
virtualization-type = "hvm"
}
most_recent = true
owners = ["099720109477"]
}
ssh_username = "ubuntu"
}
build {
name = "runner-manager-ami-packer"
sources = [
"source.amazon-ebs.ubuntu"
]
provisioner "file" {
source = "privateKey.pem"
destination = "~/.ssh/key.pem"
}
provisioner "shell" {
inline = [
"chmod 400 ~/.ssh/key.pem"
]
}
provisioner "shell" {
script = "install-docker.sh"
}
provisioner "shell" {
inline = [
"mkdir ~/.aws"
]
}
provisioner "file" {
source = "aws-config"
destination = "~/.aws/config"
}
provisioner "file" {
source = "aws-creds"
destination = "~/.aws/credentials"
}
}