# This file was autogenerated by the 'packer hcl2_upgrade' command. We # recommend double checking that everything is correct before going forward. We # also recommend treating this file as disposable. The HCL2 blocks in this # file can be moved to other files. For example, the variable blocks could be # moved to their own 'variables.pkr.hcl' file, etc. Those files need to be # suffixed with '.pkr.hcl' to be visible to Packer. To use multiple files at # once they also need to be in the same folder. 'packer inspect folder/' # will describe to you what is in that folder. # Avoid mixing go templating calls ( for example ```{{ upper(`string`) }}``` ) # and HCL2 calls (for example '${ var.string_value_example }' ). They won't be # executed together and the outcome will be unknown. # See https://www.packer.io/docs/templates/hcl_templates/blocks/packer for more info packer { required_version = ">= 1.6.0" } # All generated input variables will be of 'string' type as this is how Packer JSON # views them; you can change their type later on. Read the variables type # constraints documentation # https://www.packer.io/docs/templates/hcl_templates/variables#type-constraints for more info. variable "aws_access_key" { type = string default = "" } variable "aws_region" { type = string } variable "aws_secret_key" { type = string default = "" } # source blocks are generated from your builders; a source can be referenced in # build blocks. A build block runs provisioner and post-processors on a # source. Read the documentation for source blocks here: # https://www.packer.io/docs/templates/hcl_templates/blocks/source source "amazon-ebs" "autogenerated_1" { access_key = "${var.aws_access_key}" ami_description = "Ubuntu 16.04 LTS - expand root partition" ami_name = "ubuntu-16-04-test" encrypt_boot = true launch_block_device_mappings { delete_on_termination = true device_name = "/dev/sda1" volume_size = 48 volume_type = "gp2" } region = "${var.aws_region}" secret_key = "${var.aws_secret_key}" source_ami = "ami1234567" spot_instance_types = ["t2.small", "t2.medium", "t2.large"] spot_price = "0.0075" ssh_interface = "session_manager" ssh_username = "ubuntu" temporary_iam_instance_profile_policy_document { Statement { Action = ["*"] Effect = "Allow" Resource = ["*"] } Version = "2012-10-17" } } # a build block invokes sources and runs provisioning steps on them. The # documentation for build blocks can be found here: # https://www.packer.io/docs/templates/hcl_templates/blocks/build build { sources = ["source.amazon-ebs.autogenerated_1"] }