remove lingering source files

This commit is contained in:
Jeff Escalante 2020-04-02 19:37:52 -04:00
parent 5719a0a806
commit bac9821016
No known key found for this signature in database
GPG Key ID: 32D23C61AB5450DB
193 changed files with 0 additions and 5332 deletions

View File

@ -1,26 +0,0 @@
<!-- Code generated from the comments of the AlicloudAccessConfig struct in builder/alicloud/ecs/access_config.go; DO NOT EDIT MANUALLY -->
- `access_key` (string) - This is the Alicloud access key. It must be provided when profile not exist, but it can also be
sourced from the ALICLOUD_ACCESS_KEY environment variable.
- `secret_key` (string) - This is the Alicloud secret key. It must be provided when profile not exist, but it can also be
sourced from the ALICLOUD_SECRET_KEY environment variable.
- `region` (string) - This is the Alicloud region. It must be provided when profile not exist, but it can also be
sourced from the ALICLOUD_REGION environment variables.
- `skip_region_validation` (bool) - The region validation can be skipped if this value is true, the default
value is false.
- `skip_image_validation` (bool) - The image validation can be skipped if this value is true, the default
value is false.
- `profile` (string) - This is th Alicloud profile. If access_key not exist, is must be provided, but it can also be
sourced from the ALICLOUD_PROFILE environment variables.
- `shared_credentials_file` (string) - This is the Alicloud shared credentials file path. If this file path exist, os will read access key
and secret key from this file.
- `security_token` (string) - STS access token, can be set through template or by exporting as
environment variable such as `export SECURITY_TOKEN=value`.

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the AlicloudAccessConfig struct in builder/alicloud/ecs/access_config.go; DO NOT EDIT MANUALLY -->
Config of alicloud

View File

@ -1,39 +0,0 @@
<!-- Code generated from the comments of the AlicloudDiskDevice struct in builder/alicloud/ecs/image_config.go; DO NOT EDIT MANUALLY -->
- `disk_name` (string) - The value of disk name is blank by default. [2,
128] English or Chinese characters, must begin with an
uppercase/lowercase letter or Chinese character. Can contain numbers,
., _ and -. The disk name will appear on the console. It cannot
begin with http:// or https://.
- `disk_category` (string) - Category of the system disk. Optional values
are:
- cloud - general cloud disk
- cloud_efficiency - efficiency cloud disk
- cloud_ssd - cloud SSD
- `disk_size` (int) - Size of the system disk, measured in GiB. Value
range: [20, 500]. The specified value must be equal to or greater
than max{20, ImageSize}. Default value: max{40, ImageSize}.
- `disk_snapshot_id` (string) - Snapshots are used to create the data
disk After this parameter is specified, Size is ignored. The actual
size of the created disk is the size of the specified snapshot.
- `disk_description` (string) - The value of disk description is blank by
default. [2, 256] characters. The disk description will appear on the
console. It cannot begin with http:// or https://.
- `disk_delete_with_instance` (bool) - Whether or not the disk is
released along with the instance:
- `disk_device` (string) - Device information of the related instance:
such as /dev/xvdb It is null unless the Status is In_use.
- `disk_encrypted` (boolean) - Whether or not to encrypt the data disk.
If this option is set to true, the data disk will be encryped and corresponding snapshot in the target image will also be encrypted. By
default, if this is an extra data disk, Packer will not encrypt the
data disk. Otherwise, Packer will keep the encryption setting to what
it was in the source image. Please refer to Introduction of ECS disk encryption
for more details.

View File

@ -1,80 +0,0 @@
<!-- Code generated from the comments of the AlicloudDiskDevices struct in builder/alicloud/ecs/image_config.go; DO NOT EDIT MANUALLY -->
- `system_disk_mapping` (AlicloudDiskDevice) - Image disk mapping for system
disk.
- `disk_category` (string) - Category of the system disk. Optional values
are:
- `cloud` - general cloud disk
- `cloud_efficiency` - efficiency cloud disk
- `cloud_ssd` - cloud SSD
For phased-out instance types and non-I/O optimized instances, the
default value is cloud. Otherwise, the default value is
cloud\_efficiency.
- `disk_description` (string) - The value of disk description is blank by
default. \[2, 256\] characters. The disk description will appear on the
console. It cannot begin with `http://` or `https://`.
- `disk_name` (string) - The value of disk name is blank by default. \[2,
128\] English or Chinese characters, must begin with an
uppercase/lowercase letter or Chinese character. Can contain numbers,
`.`, `_` and `-`. The disk name will appear on the console. It cannot
begin with `http://` or `https://`.
- `disk_size` (number) - Size of the system disk, measured in GiB. Value
range: \[20, 500\]. The specified value must be equal to or greater
than max{20, ImageSize}. Default value: max{40, ImageSize}.
- `image_disk_mappings` ([]AlicloudDiskDevice) - Add one or more data
disks to the image.
- `disk_category` (string) - Category of the data disk. Optional values
are:
- `cloud` - general cloud disk
- `cloud_efficiency` - efficiency cloud disk
- `cloud_ssd` - cloud SSD
Default value: cloud.
- `disk_delete_with_instance` (boolean) - Whether or not the disk is
released along with the instance:
- True indicates that when the instance is released, this disk will
be released with it
- False indicates that when the instance is released, this disk will
be retained.
- `disk_description` (string) - The value of disk description is blank by
default. \[2, 256\] characters. The disk description will appear on the
console. It cannot begin with `http://` or `https://`.
- `disk_device` (string) - Device information of the related instance:
such as `/dev/xvdb` It is null unless the Status is In\_use.
- `disk_name` (string) - The value of disk name is blank by default. \[2,
128\] English or Chinese characters, must begin with an
uppercase/lowercase letter or Chinese character. Can contain numbers,
`.`, `_` and `-`. The disk name will appear on the console. It cannot
begin with `http://` or `https://`.
- `disk_size` (number) - Size of the data disk, in GB, values range:
- `cloud` - 5 \~ 2000
- `cloud_efficiency` - 20 \~ 2048
- `cloud_ssd` - 20 \~ 2048
The value should be equal to or greater than the size of the specific
SnapshotId.
- `disk_snapshot_id` (string) - Snapshots are used to create the data
disk After this parameter is specified, Size is ignored. The actual
size of the created disk is the size of the specified snapshot.
Snapshots from on or before July 15, 2013 cannot be used to create a
disk.
- `disk_encrypted` (boolean) - Whether or not to encrypt the data disk.
If this option is set to true, the data disk will be encryped and corresponding snapshot in the target image will also be encrypted. By
default, if this is an extra data disk, Packer will not encrypt the
data disk. Otherwise, Packer will keep the encryption setting to what
it was in the source image. Please refer to Introduction of [ECS disk encryption](https://www.alibabacloud.com/help/doc-detail/59643.htm)
for more details.

View File

@ -1,58 +0,0 @@
<!-- Code generated from the comments of the AlicloudImageConfig struct in builder/alicloud/ecs/image_config.go; DO NOT EDIT MANUALLY -->
- `image_version` (string) - The version number of the image, with a length
limit of 1 to 40 English characters.
- `image_description` (string) - The description of the image, with a length
limit of 0 to 256 characters. Leaving it blank means null, which is the
default value. It cannot begin with http:// or https://.
- `image_share_account` ([]string) - The IDs of to-be-added Aliyun
accounts to which the image is shared. The number of accounts is 1 to 10.
If number of accounts is greater than 10, this parameter is ignored.
- `image_unshare_account` ([]string) - Alicloud Image UN Share Accounts
- `image_copy_regions` ([]string) - Copy to the destination regionIds.
- `image_copy_names` ([]string) - The name of the destination image,
[2, 128] English or Chinese characters. It must begin with an
uppercase/lowercase letter or a Chinese character, and may contain numbers,
_ or -. It cannot begin with http:// or https://.
- `image_encrypted` (boolean) - Whether or not to encrypt the target images, including those copied if image_copy_regions is specified. If this option
is set to true, a temporary image will be created from the provisioned
instance in the main region and an encrypted copy will be generated in the
same region. By default, Packer will keep the encryption setting to what
it was in the source image.
- `image_force_delete` (bool) - If this value is true, when the target image names including those
copied are duplicated with existing images, it will delete the existing
images and then create the target images, otherwise, the creation will
fail. The default value is false. Check `image_name` and
`image_copy_names` options for names of target images. If
[-force](https://packer.io/docs/commands/build.html#force) option is
provided in `build` command, this option can be omitted and taken as
true.
- `image_force_delete_snapshots` (bool) - If this value is true, when delete the duplicated existing images, the
source snapshots of those images will be delete either. If
[-force](https://packer.io/docs/commands/build.html#force) option is
provided in `build` command, this option can be omitted and taken as
true.
- `image_force_delete_instances` (bool) - Alicloud Image Force Delete Instances
- `image_ignore_data_disks` (bool) - If this value is true, the image
created will not include any snapshot of data disks. This option would be
useful for any circumstance that default data disks with instance types are
not concerned. The default value is false.
- `skip_region_validation` (bool) - The region validation can be skipped
if this value is true, the default value is false.
- `tags` (map[string]string) - Tags applied to the destination image and relevant snapshots.
- `tag` ([]{name string, value string}) - Same as [`tags`](#tags) but defined as a singular repeatable block
containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the AlicloudImageConfig struct in builder/alicloud/ecs/image_config.go; DO NOT EDIT MANUALLY -->
- `image_name` (string) - The name of the user-defined image, [2, 128]
English or Chinese characters. It must begin with an uppercase/lowercase
letter or a Chinese character, and may contain numbers, _ or -. It
cannot begin with http:// or https://.

View File

@ -1,94 +0,0 @@
<!-- Code generated from the comments of the RunConfig struct in builder/alicloud/ecs/run_config.go; DO NOT EDIT MANUALLY -->
- `associate_public_ip_address` (bool) - Associate Public Ip Address
- `zone_id` (string) - ID of the zone to which the disk belongs.
- `io_optimized` (boolean) - Whether an ECS instance is I/O optimized or not. If this option is not
provided, the value will be determined by product API according to what
`instance_type` is used.
- `description` (string) - Description
- `force_stop_instance` (bool) - Whether to force shutdown upon device
restart. The default value is `false`.
If it is set to `false`, the system is shut down normally; if it is set to
`true`, the system is forced to shut down.
- `disable_stop_instance` (bool) - If this option is set to true, Packer
will not stop the instance for you, and you need to make sure the instance
will be stopped in the final provisioner command. Otherwise, Packer will
timeout while waiting the instance to be stopped. This option is provided
for some specific scenarios that you want to stop the instance by yourself.
E.g., Sysprep a windows which may shutdown the instance within its command.
The default value is false.
- `security_group_id` (string) - ID of the security group to which a newly
created instance belongs. Mutual access is allowed between instances in one
security group. If not specified, the newly created instance will be added
to the default security group. If the default group doesnt exist, or the
number of instances in it has reached the maximum limit, a new security
group will be created automatically.
- `security_group_name` (string) - The security group name. The default value
is blank. [2, 128] English or Chinese characters, must begin with an
uppercase/lowercase letter or Chinese character. Can contain numbers, .,
_ or -. It cannot begin with http:// or https://.
- `user_data` (string) - User data to apply when launching the instance. Note
that you need to be careful about escaping characters due to the templates
being JSON. It is often more convenient to use user_data_file, instead.
Packer will not automatically wait for a user script to finish before
shutting down the instance this must be handled in a provisioner.
- `user_data_file` (string) - Path to a file that will be used for the user
data when launching the instance.
- `vpc_id` (string) - VPC ID allocated by the system.
- `vpc_name` (string) - The VPC name. The default value is blank. [2, 128]
English or Chinese characters, must begin with an uppercase/lowercase
letter or Chinese character. Can contain numbers, _ and -. The disk
description will appear on the console. Cannot begin with http:// or
https://.
- `vpc_cidr_block` (string) - Value options: 192.168.0.0/16 and
172.16.0.0/16. When not specified, the default value is 172.16.0.0/16.
- `vswitch_id` (string) - The ID of the VSwitch to be used.
- `vswitch_name` (string) - The ID of the VSwitch to be used.
- `instance_name` (string) - Display name of the instance, which is a string of 2 to 128 Chinese or
English characters. It must begin with an uppercase/lowercase letter or
a Chinese character and can contain numerals, `.`, `_`, or `-`. The
instance name is displayed on the Alibaba Cloud console. If this
parameter is not specified, the default value is InstanceId of the
instance. It cannot begin with `http://` or `https://`.
- `internet_charge_type` (string) - Internet charge type, which can be
`PayByTraffic` or `PayByBandwidth`. Optional values:
- `PayByBandwidth`
- `PayByTraffic`
If this parameter is not specified, the default value is `PayByBandwidth`.
For the regions out of China, currently only support `PayByTraffic`, you
must set it manfully.
- `internet_max_bandwidth_out` (int) - Maximum outgoing bandwidth to the
public network, measured in Mbps (Mega bits per second).
Value range:
- `PayByBandwidth`: \[0, 100\]. If this parameter is not specified, API
automatically sets it to 0 Mbps.
- `PayByTraffic`: \[1, 100\]. If this parameter is not specified, an
error is returned.
- `wait_snapshot_ready_timeout` (int) - Timeout of creating snapshot(s).
The default timeout is 3600 seconds if this option is not set or is set
to 0. For those disks containing lots of data, it may require a higher
timeout value.
- `ssh_private_ip` (bool) - If this value is true, packer will connect to
the ECS created through private ip instead of allocating a public ip or an
EIP. The default value is false.

View File

@ -1,12 +0,0 @@
<!-- Code generated from the comments of the RunConfig struct in builder/alicloud/ecs/run_config.go; DO NOT EDIT MANUALLY -->
- `instance_type` (string) - Type of the instance. For values, see [Instance Type
Table](https://www.alibabacloud.com/help/doc-detail/25378.htm?spm=a3c0i.o25499en.a3.9.14a36ac8iYqKRA).
You can also obtain the latest instance type table by invoking the
[Querying Instance Type
Table](https://intl.aliyun.com/help/doc-detail/25620.htm?spm=a3c0i.o25499en.a3.6.Dr1bik)
interface.
- `source_image` (string) - This is the base image id which you want to
create your customized images.

View File

@ -1,135 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/chroot/builder.go; DO NOT EDIT MANUALLY -->
- `ami_block_device_mappings` (awscommon.BlockDevices) - Add one or more [block device
mappings](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html)
to the AMI. If this field is populated, and you are building from an
existing source image, the block device mappings in the source image
will be overwritten. This means you must have a block device mapping
entry for your root volume, `root_volume_size` and `root_device_name`.
See the [BlockDevices](#block-devices-configuration) documentation for
fields.
- `chroot_mounts` ([][]string) - This is a list of devices to mount into the chroot environment. This
configuration parameter requires some additional documentation which is
in the Chroot Mounts section. Please read that section for more
information on how to use this.
- `command_wrapper` (string) - How to run shell commands. This defaults to {{.Command}}. This may be
useful to set if you want to set environmental variables or perhaps run
it with sudo or so on. This is a configuration template where the
.Command variable is replaced with the command to be run. Defaults to
{{.Command}}.
- `copy_files` ([]string) - Paths to files on the running EC2 instance that will be copied into the
chroot environment prior to provisioning. Defaults to /etc/resolv.conf
so that DNS lookups work. Pass an empty list to skip copying
/etc/resolv.conf. You may need to do this if you're building an image
that uses systemd.
- `device_path` (string) - The path to the device where the root volume of the source AMI will be
attached. This defaults to "" (empty string), which forces Packer to
find an open device automatically.
- `nvme_device_path` (string) - When we call the mount command (by default mount -o device dir), the
string provided in nvme_mount_path will replace device in that command.
When this option is not set, device in that command will be something
like /dev/sdf1, mirroring the attached device name. This assumption
works for most instances but will fail with c5 and m5 instances. In
order to use the chroot builder with c5 and m5 instances, you must
manually set nvme_device_path and device_path.
- `from_scratch` (bool) - Build a new volume instead of starting from an existing AMI root volume
snapshot. Default false. If true, source_ami/source_ami_filter are no
longer used and the following options become required:
ami_virtualization_type, pre_mount_commands and root_volume_size.
- `mount_options` ([]string) - Options to supply the mount command when mounting devices. Each option
will be prefixed with -o and supplied to the mount command ran by
Packer. Because this command is ran in a shell, user discretion is
advised. See this manual page for the mount command for valid file
system specific options.
- `mount_partition` (string) - The partition number containing the / partition. By default this is the
first partition of the volume, (for example, xvda1) but you can
designate the entire block device by setting "mount_partition": "0" in
your config, which will mount xvda instead.
- `mount_path` (string) - The path where the volume will be mounted. This is where the chroot
environment will be. This defaults to
/mnt/packer-amazon-chroot-volumes/{{.Device}}. This is a configuration
template where the .Device variable is replaced with the name of the
device where the volume is attached.
- `post_mount_commands` ([]string) - As pre_mount_commands, but the commands are executed after mounting the
root device and before the extra mount and copy steps. The device and
mount path are provided by {{.Device}} and {{.MountPath}}.
- `pre_mount_commands` ([]string) - A series of commands to execute after attaching the root volume and
before mounting the chroot. This is not required unless using
from_scratch. If so, this should include any partitioning and filesystem
creation commands. The path to the device is provided by {{.Device}}.
- `root_device_name` (string) - The root device name. For example, xvda.
- `root_volume_size` (int64) - The size of the root volume in GB for the chroot environment and the
resulting AMI. Default size is the snapshot size of the source_ami
unless from_scratch is true, in which case this field must be defined.
- `root_volume_type` (string) - The type of EBS volume for the chroot environment and resulting AMI. The
default value is the type of the source_ami, unless from_scratch is
true, in which case the default value is gp2. You can only specify io1
if building based on top of a source_ami which is also io1.
- `source_ami_filter` (awscommon.AmiFilterOptions) - Filters used to populate the source_ami field. Example:
```json
{
"source_ami_filter": {
"filters": {
"virtualization-type": "hvm",
"name": "ubuntu/images/*ubuntu-xenial-16.04-amd64-server-*",
"root-device-type": "ebs"
},
"owners": ["099720109477"],
"most_recent": true
}
}
```
This selects the most recent Ubuntu 16.04 HVM EBS AMI from Canonical. NOTE:
This will fail unless *exactly* one AMI is returned. In the above example,
`most_recent` will cause this to succeed by selecting the newest image.
- `filters` (map of strings) - filters used to select a `source_ami`.
NOTE: This will fail unless *exactly* one AMI is returned. Any filter
described in the docs for
[DescribeImages](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html)
is valid.
- `owners` (array of strings) - Filters the images by their owner. You
may specify one or more AWS account IDs, "self" (which will use the
account whose credentials you are using to run Packer), or an AWS owner
alias: for example, "amazon", "aws-marketplace", or "microsoft". This
option is required for security reasons.
- `most_recent` (boolean) - Selects the newest created image when true.
This is most useful for selecting a daily distro build.
You may set this in place of `source_ami` or in conjunction with it. If you
set this in conjunction with `source_ami`, the `source_ami` will be added
to the filter. The provided `source_ami` must meet all of the filtering
criteria provided in `source_ami_filter`; this pins the AMI returned by the
filter, but will cause Packer to fail if the `source_ami` does not exist.
- `root_volume_tags` (map[string]string) - Tags to apply to the volumes that are *launched*. This is a [template
engine](/docs/templates/engine.html), see [Build template
data](#build-template-data) for more information.
- `root_volume_tag` ([]{name string, value string}) - Same as [`root_volume_tags`](#root_volume_tags) but defined as a
singular block containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.
- `ami_architecture` (string) - what architecture to use when registering the final AMI; valid options
are "x86_64" or "arm64". Defaults to "x86_64".

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/chroot/builder.go; DO NOT EDIT MANUALLY -->
- `source_ami` (string) - The source AMI whose root volume will be copied and provisioned on the
currently running instance. This must be an EBS-backed AMI with a root
volume snapshot that you have access to. Note: this is not used when
from_scratch is set to true.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/chroot/builder.go; DO NOT EDIT MANUALLY -->
Config is the configuration that is chained through the steps and settable
from the template.

View File

@ -1,120 +0,0 @@
<!-- Code generated from the comments of the AMIConfig struct in builder/amazon/common/ami_config.go; DO NOT EDIT MANUALLY -->
- `ami_description` (string) - The description to set for the resulting
AMI(s). By default this description is empty. This is a
[template engine](/docs/templates/engine.html), see [Build template
data](#build-template-data) for more information.
- `ami_virtualization_type` (string) - The type of virtualization for the AMI
you are building. This option is required to register HVM images. Can be
paravirtual (default) or hvm.
- `ami_users` ([]string) - A list of account IDs that have access to
launch the resulting AMI(s). By default no additional users other than the
user creating the AMI has permissions to launch it.
- `ami_groups` ([]string) - A list of groups that have access to
launch the resulting AMI(s). By default no groups have permission to launch
the AMI. all will make the AMI publicly accessible.
- `ami_product_codes` ([]string) - A list of product codes to
associate with the AMI. By default no product codes are associated with the
AMI.
- `ami_regions` ([]string) - A list of regions to copy the AMI to.
Tags and attributes are copied along with the AMI. AMI copying takes time
depending on the size of the AMI, but will generally take many minutes.
- `skip_region_validation` (bool) - Set to true if you want to skip
validation of the ami_regions configuration option. Default false.
- `tags` (map[string]string) - Tags applied to the AMI. This is a
[template engine](/docs/templates/engine.html), see [Build template
data](#build-template-data) for more information.
- `tag` ([]{name string, value string}) - Same as [`tags`](#tags) but defined as a singular repeatable block
containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.
- `ena_support` (boolean) - Enable enhanced networking (ENA but not SriovNetSupport) on
HVM-compatible AMIs. If set, add `ec2:ModifyInstanceAttribute` to your
AWS IAM policy.
Note: you must make sure enhanced networking is enabled on your
instance. See [Amazon's documentation on enabling enhanced
networking](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html#enabling_enhanced_networking).
- `sriov_support` (bool) - Enable enhanced networking (SriovNetSupport but not ENA) on
HVM-compatible AMIs. If true, add `ec2:ModifyInstanceAttribute` to your
AWS IAM policy. Note: you must make sure enhanced networking is enabled
on your instance. See [Amazon's documentation on enabling enhanced
networking](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html#enabling_enhanced_networking).
Default `false`.
- `force_deregister` (bool) - Force Packer to first deregister an existing
AMI if one with the same name already exists. Default false.
- `force_delete_snapshot` (bool) - Force Packer to delete snapshots
associated with AMIs, which have been deregistered by force_deregister.
Default false.
- `encrypt_boot` (boolean) - Whether or not to encrypt the resulting AMI when
copying a provisioned instance to an AMI. By default, Packer will keep the
encryption setting to what it was in the source image. Setting false will
result in an unencrypted image, and true will result in an encrypted one.
If you have used the `launch_block_device_mappings` to set an encryption
key and that key is the same as the one you want the image encrypted with
at the end, then you don't need to set this field; leaving it empty will
prevent an unnecessary extra copy step and save you some time.
- `kms_key_id` (string) - ID, alias or ARN of the KMS key to use for boot volume encryption. This
only applies to the main `region`, other regions where the AMI will be
copied will be encrypted by the default EBS KMS key. For valid formats
see *KmsKeyId* in the [AWS API docs -
CopyImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopyImage.html).
This field is validated by Packer, when using an alias, you will have to
prefix `kms_key_id` with `alias/`.
- `region_kms_key_ids` (map[string]string) - regions to copy the ami to, along with the custom kms key id (alias or
arn) to use for encryption for that region. Keys must match the regions
provided in `ami_regions`. If you just want to encrypt using a default
ID, you can stick with `kms_key_id` and `ami_regions`. If you want a
region to be encrypted with that region's default key ID, you can use an
empty string `""` instead of a key id in this map. (e.g. `"us-east-1":
""`) However, you cannot use default key IDs if you are using this in
conjunction with `snapshot_users` -- in that situation you must use
custom keys. For valid formats see *KmsKeyId* in the [AWS API docs -
CopyImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopyImage.html).
This option supercedes the `kms_key_id` option -- if you set both, and
they are different, Packer will respect the value in
`region_kms_key_ids` for your build region and silently disregard the
value provided in `kms_key_id`.
- `skip_save_build_region` (bool) - If true, Packer will not check whether an AMI with the `ami_name` exists
in the region it is building in. It will use an intermediary AMI name,
which it will not convert to an AMI in the build region. It will copy
the intermediary AMI into any regions provided in `ami_regions`, then
delete the intermediary AMI. Default `false`.
- `snapshot_tags` (map[string]string) - Tags to apply to snapshot.
They will override AMI tags if already applied to snapshot. This is a
[template engine](../templates/engine.html), see [Build template
data](#build-template-data) for more information.
- `snapshot_tag` ([]{name string, value string}) - Same as [`snapshot_tags`](#snapshot_tags) but defined as a singular
repeatable block containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.
- `snapshot_users` ([]string) - A list of account IDs that have
access to create volumes from the snapshot(s). By default no additional
users other than the user creating the AMI has permissions to create
volumes from the backing snapshot(s).
- `snapshot_groups` ([]string) - A list of groups that have access to
create volumes from the snapshot(s). By default no groups have permission
to create volumes from the snapshot(s). all will make the snapshot
publicly accessible.

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the AMIConfig struct in builder/amazon/common/ami_config.go; DO NOT EDIT MANUALLY -->
- `ami_name` (string) - The name of the resulting AMI that will appear when managing AMIs in the
AWS console or via APIs. This must be unique. To help make this unique,
use a function like timestamp (see [template
engine](../templates/engine.html) for more info).

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the AMIConfig struct in builder/amazon/common/ami_config.go; DO NOT EDIT MANUALLY -->
AMIConfig is for common configuration related to creating AMIs.

View File

@ -1,71 +0,0 @@
<!-- Code generated from the comments of the AccessConfig struct in builder/amazon/common/access_config.go; DO NOT EDIT MANUALLY -->
- `custom_endpoint_ec2` (string) - This option is useful if you use a cloud
provider whose API is compatible with aws EC2. Specify another endpoint
like this https://ec2.custom.endpoint.com.
- `decode_authorization_messages` (bool) - Enable automatic decoding of any encoded authorization (error) messages
using the `sts:DecodeAuthorizationMessage` API. Note: requires that the
effective user/role have permissions to `sts:DecodeAuthorizationMessage`
on resource `*`. Default `false`.
- `insecure_skip_tls_verify` (bool) - This allows skipping TLS
verification of the AWS EC2 endpoint. The default is false.
- `max_retries` (int) - This is the maximum number of times an API call is retried, in the case
where requests are being throttled or experiencing transient failures.
The delay between the subsequent API calls increases exponentially.
- `mfa_code` (string) - The MFA
[TOTP](https://en.wikipedia.org/wiki/Time-based_One-time_Password_Algorithm)
code. This should probably be a user variable since it changes all the
time.
- `profile` (string) - The profile to use in the shared credentials file for
AWS. See Amazon's documentation on [specifying
profiles](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-profiles)
for more details.
- `skip_region_validation` (bool) - Set to true if you want to skip
validation of the ami_regions configuration option. Default false.
- `skip_metadata_api_check` (bool) - Skip Metadata Api Check
- `token` (string) - The access token to use. This is different from the
access key and secret key. If you're not sure what this is, then you
probably don't need it. This will also be read from the AWS_SESSION_TOKEN
environmental variable.
- `vault_aws_engine` (VaultAWSEngineOptions) - Get credentials from Hashicorp Vault's aws secrets engine. You must
already have created a role to use. For more information about
generating credentials via the Vault engine, see the [Vault
docs.](https://www.vaultproject.io/api/secret/aws/index.html#generate-credentials)
If you set this flag, you must also set the below options:
- `name` (string) - Required. Specifies the name of the role to generate
credentials against. This is part of the request URL.
- `engine_name` (string) - The name of the aws secrets engine. In the
Vault docs, this is normally referred to as "aws", and Packer will
default to "aws" if `engine_name` is not set.
- `role_arn` (string)- The ARN of the role to assume if credential\_type
on the Vault role is assumed\_role. Must match one of the allowed role
ARNs in the Vault role. Optional if the Vault role only allows a single
AWS role ARN; required otherwise.
- `ttl` (string) - Specifies the TTL for the use of the STS token. This
is specified as a string with a duration suffix. Valid only when
credential\_type is assumed\_role or federation\_token. When not
specified, the default\_sts\_ttl set for the role will be used. If that
is also not set, then the default value of 3600s will be used. AWS
places limits on the maximum TTL allowed. See the AWS documentation on
the DurationSeconds parameter for AssumeRole (for assumed\_role
credential types) and GetFederationToken (for federation\_token
credential types) for more details.
```json
{
"vault_aws_engine": {
"name": "myrole",
"role_arn": "myarn",
"ttl": "3600s"
}
}
```

View File

@ -1,15 +0,0 @@
<!-- Code generated from the comments of the AccessConfig struct in builder/amazon/common/access_config.go; DO NOT EDIT MANUALLY -->
- `access_key` (string) - The access key used to communicate with AWS. [Learn how to set this]
(/docs/builders/amazon.html#specifying-amazon-credentials). On EBS, this
is not required if you are using `use_vault_aws_engine` for
authentication instead.
- `region` (string) - The name of the region, such as `us-east-1`, in which
to launch the EC2 instance to create the AMI.
When chroot building, this value is guessed from environment.
- `secret_key` (string) - The secret key used to communicate with AWS. [Learn how to set
this](amazon.html#specifying-amazon-credentials). This is not required
if you are using `use_vault_aws_engine` for authentication instead.

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the AccessConfig struct in builder/amazon/common/access_config.go; DO NOT EDIT MANUALLY -->
AccessConfig is for common configuration related to AWS access

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the AmiFilterOptions struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
- `most_recent` (bool) - Most Recent

View File

@ -1,43 +0,0 @@
<!-- Code generated from the comments of the BlockDevice struct in builder/amazon/common/block_device.go; DO NOT EDIT MANUALLY -->
- `delete_on_termination` (bool) - Indicates whether the EBS volume is deleted on instance termination.
Default false. NOTE: If this value is not explicitly set to true and
volumes are not cleaned up by an alternative method, additional volumes
will accumulate after every build.
- `device_name` (string) - The device name exposed to the instance (for example, /dev/sdh or xvdh).
Required for every device in the block device mapping.
- `encrypted` (boolean) - Indicates whether or not to encrypt the volume. By default, Packer will
keep the encryption setting to what it was in the source image. Setting
false will result in an unencrypted device, and true will result in an
encrypted one.
- `iops` (int64) - The number of I/O operations per second (IOPS) that the volume supports.
See the documentation on
[IOPs](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_EbsBlockDevice.html)
for more information
- `no_device` (bool) - Suppresses the specified device included in the block device mapping of
the AMI.
- `snapshot_id` (string) - The ID of the snapshot.
- `virtual_name` (string) - The virtual device name. See the documentation on Block Device Mapping
for more information.
- `volume_type` (string) - The volume type. gp2 for General Purpose (SSD) volumes, io1 for
Provisioned IOPS (SSD) volumes, st1 for Throughput Optimized HDD, sc1
for Cold HDD, and standard for Magnetic volumes.
- `volume_size` (int64) - The size of the volume, in GiB. Required if not specifying a
snapshot_id.
- `kms_key_id` (string) - ID, alias or ARN of the KMS key to use for boot volume encryption. This
only applies to the main region, other regions where the AMI will be
copied will be encrypted by the default EBS KMS key. For valid formats
see KmsKeyId in the [AWS API docs -
CopyImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopyImage.html)
This field is validated by Packer, when using an alias, you will have to
prefix kms_key_id with alias/.

View File

@ -1,19 +0,0 @@
<!-- Code generated from the comments of the BlockDevice struct in builder/amazon/common/block_device.go; DO NOT EDIT MANUALLY -->
These will be attached when booting a new instance from your AMI. Your
options here may vary depending on the type of VM you use.
Example use case:
The following mapping will tell Packer to encrypt the root volume of the
build instance at launch using a specific non-default kms key:
```json
[{
"device_name": "/dev/sda1",
"encrypted": true,
"kms_key_id": "1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d"
}]
```
Documentation for Block Devices Mappings can be found here:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html

View File

@ -1,317 +0,0 @@
<!-- Code generated from the comments of the RunConfig struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
- `associate_public_ip_address` (bool) - If using a non-default VPC,
public IP addresses are not provided by default. If this is true, your
new instance will get a Public IP. default: false
- `availability_zone` (string) - Destination availability zone to launch
instance in. Leave this empty to allow Amazon to auto-assign.
- `block_duration_minutes` (int64) - Requires spot_price to be set. The
required duration for the Spot Instances (also known as Spot blocks). This
value must be a multiple of 60 (60, 120, 180, 240, 300, or 360). You can't
specify an Availability Zone group or a launch group if you specify a
duration.
- `disable_stop_instance` (bool) - Packer normally stops the build instance after all provisioners have
run. For Windows instances, it is sometimes desirable to [run
Sysprep](http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ami-create-standard.html)
which will stop the instance for you. If this is set to `true`, Packer
*will not* stop the instance but will assume that you will send the stop
signal yourself through your final provisioner. You can do this with a
[windows-shell
provisioner](https://www.packer.io/docs/provisioners/windows-shell.html).
Note that Packer will still wait for the instance to be stopped, and
failing to send the stop signal yourself, when you have set this flag to
`true`, will cause a timeout.
Example of a valid shutdown command:
```json
{
"type": "windows-shell",
"inline": ["\"c:\\Program Files\\Amazon\\Ec2ConfigService\\ec2config.exe\" -sysprep"]
}
```
- `ebs_optimized` (bool) - Mark instance as [EBS
Optimized](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html).
Default `false`.
- `enable_t2_unlimited` (bool) - Enabling T2 Unlimited allows the source instance to burst additional CPU
beyond its available [CPU
Credits](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-credits-baseline-concepts.html)
for as long as the demand exists. This is in contrast to the standard
configuration that only allows an instance to consume up to its
available CPU Credits. See the AWS documentation for [T2
Unlimited](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-unlimited.html)
and the **T2 Unlimited Pricing** section of the [Amazon EC2 On-Demand
Pricing](https://aws.amazon.com/ec2/pricing/on-demand/) document for
more information. By default this option is disabled and Packer will set
up a [T2
Standard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-std.html)
instance instead.
To use T2 Unlimited you must use a T2 instance type, e.g. `t2.micro`.
Additionally, T2 Unlimited cannot be used in conjunction with Spot
Instances, e.g. when the `spot_price` option has been configured.
Attempting to do so will cause an error.
!&gt; **Warning!** Additional costs may be incurred by enabling T2
Unlimited - even for instances that would usually qualify for the
[AWS Free Tier](https://aws.amazon.com/free/).
- `iam_instance_profile` (string) - The name of an [IAM instance
profile](https://docs.aws.amazon.com/IAM/latest/UserGuide/instance-profiles.html)
to launch the EC2 instance with.
- `skip_profile_validation` (bool) - Whether or not to check if the IAM instance profile exists. Defaults to false
- `temporary_iam_instance_profile_policy_document` (\*PolicyDocument) - Temporary IAM instance profile policy document
If IamInstanceProfile is specified it will be used instead. Example:
```json
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"logs:*"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
```
- `shutdown_behavior` (string) - Automatically terminate instances on
shutdown in case Packer exits ungracefully. Possible values are stop and
terminate. Defaults to stop.
- `security_group_filter` (SecurityGroupFilterOptions) - Filters used to populate the `security_group_ids` field. Example:
```json
{
"security_group_filter": {
"filters": {
"tag:Class": "packer"
}
}
}
```
This selects the SG's with tag `Class` with the value `packer`.
- `filters` (map of strings) - filters used to select a
`security_group_ids`. Any filter described in the docs for
[DescribeSecurityGroups](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html)
is valid.
`security_group_ids` take precedence over this.
- `run_tags` (map[string]string) - Tags to apply to the instance that is that is *launched* to create the
EBS volumes. This is a [template engine](/docs/templates/engine.html),
see [Build template data](#build-template-data) for more information.
- `run_tag` ([]{name string, value string}) - Same as [`run_tags`](#run_tags) but defined as a singular repeatable
block containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.
- `security_group_id` (string) - The ID (not the name) of the security
group to assign to the instance. By default this is not set and Packer will
automatically create a new temporary security group to allow SSH access.
Note that if this is specified, you must be sure the security group allows
access to the ssh_port given below.
- `security_group_ids` ([]string) - A list of security groups as
described above. Note that if this is specified, you must omit the
security_group_id.
- `source_ami_filter` (AmiFilterOptions) - Filters used to populate the `source_ami`
field. Example:
```json
{
"source_ami_filter": {
"filters": {
"virtualization-type": "hvm",
"name": "ubuntu/images/\*ubuntu-xenial-16.04-amd64-server-\*",
"root-device-type": "ebs"
},
"owners": ["099720109477"],
"most_recent": true
}
}
```
This selects the most recent Ubuntu 16.04 HVM EBS AMI from Canonical. NOTE:
This will fail unless *exactly* one AMI is returned. In the above example,
`most_recent` will cause this to succeed by selecting the newest image.
- `filters` (map of strings) - filters used to select a `source_ami`.
NOTE: This will fail unless *exactly* one AMI is returned. Any filter
described in the docs for
[DescribeImages](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html)
is valid.
- `owners` (array of strings) - Filters the images by their owner. You
may specify one or more AWS account IDs, "self" (which will use the
account whose credentials you are using to run Packer), or an AWS owner
alias: for example, `amazon`, `aws-marketplace`, or `microsoft`. This
option is required for security reasons.
- `most_recent` (boolean) - Selects the newest created image when true.
This is most useful for selecting a daily distro build.
You may set this in place of `source_ami` or in conjunction with it. If you
set this in conjunction with `source_ami`, the `source_ami` will be added
to the filter. The provided `source_ami` must meet all of the filtering
criteria provided in `source_ami_filter`; this pins the AMI returned by the
filter, but will cause Packer to fail if the `source_ami` does not exist.
- `spot_instance_types` ([]string) - a list of acceptable instance
types to run your build on. We will request a spot instance using the max
price of spot_price and the allocation strategy of "lowest price".
Your instance will be launched on an instance type of the lowest available
price that you have in your list. This is used in place of instance_type.
You may only set either spot_instance_types or instance_type, not both.
This feature exists to help prevent situations where a Packer build fails
because a particular availability zone does not have capacity for the
specific instance_type requested in instance_type.
- `spot_price` (string) - With Spot Instances, you pay the Spot price that's in effect for the
time period your instances are running. Spot Instance prices are set by
Amazon EC2 and adjust gradually based on long-term trends in supply and
demand for Spot Instance capacity.
When this field is set, it represents the maximum hourly price you are
willing to pay for a spot instance. If you do not set this value, it
defaults to a maximum price equal to the on demand price of the
instance. In the situation where the current Amazon-set spot price
exceeds the value set in this field, Packer will not launch an instance
and the build will error. In the situation where the Amazon-set spot
price is less than the value set in this field, Packer will launch and
you will pay the Amazon-set spot price, not this maximum value.
For more information, see the Amazon docs on
[spot pricing](https://aws.amazon.com/ec2/spot/pricing/).
- `spot_price_auto_product` (string) - Required if spot_price is set to
auto. This tells Packer what sort of AMI you're launching to find the
best spot price. This must be one of: Linux/UNIX, SUSE Linux,
Windows, Linux/UNIX (Amazon VPC), SUSE Linux (Amazon VPC),
Windows (Amazon VPC)
- `spot_tags` (map[string]string) - Requires spot_price to be set. This tells Packer to apply tags to the
spot request that is issued.
- `spot_tag` ([]{name string, value string}) - Same as [`spot_tags`](#spot_tags) but defined as a singular repeatable block
containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.
- `subnet_filter` (SubnetFilterOptions) - Filters used to populate the `subnet_id` field.
Example:
```json
{
"subnet_filter": {
"filters": {
"tag:Class": "build"
},
"most_free": true,
"random": false
}
}
```
This selects the Subnet with tag `Class` with the value `build`, which has
the most free IP addresses. NOTE: This will fail unless *exactly* one
Subnet is returned. By using `most_free` or `random` one will be selected
from those matching the filter.
- `filters` (map of strings) - filters used to select a `subnet_id`.
NOTE: This will fail unless *exactly* one Subnet is returned. Any
filter described in the docs for
[DescribeSubnets](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html)
is valid.
- `most_free` (boolean) - The Subnet with the most free IPv4 addresses
will be used if multiple Subnets matches the filter.
- `random` (boolean) - A random Subnet will be used if multiple Subnets
matches the filter. `most_free` have precendence over this.
`subnet_id` take precedence over this.
- `subnet_id` (string) - If using VPC, the ID of the subnet, such as
subnet-12345def, where Packer will launch the EC2 instance. This field is
required if you are using an non-default VPC.
- `temporary_key_pair_name` (string) - The name of the temporary key pair to
generate. By default, Packer generates a name that looks like
`packer_<UUID>`, where &lt;UUID&gt; is a 36 character unique identifier.
- `temporary_security_group_source_cidrs` ([]string) - A list of IPv4 CIDR blocks to be authorized access to the instance, when
packer is creating a temporary security group.
The default is [`0.0.0.0/0`] (i.e., allow any IPv4 source). This is only
used when `security_group_id` or `security_group_ids` is not specified.
- `user_data` (string) - User data to apply when launching the instance. Note
that you need to be careful about escaping characters due to the templates
being JSON. It is often more convenient to use user_data_file, instead.
Packer will not automatically wait for a user script to finish before
shutting down the instance this must be handled in a provisioner.
- `user_data_file` (string) - Path to a file that will be used for the user
data when launching the instance.
- `vpc_filter` (VpcFilterOptions) - Filters used to populate the `vpc_id` field.
Example:
```json
{
"vpc_filter": {
"filters": {
"tag:Class": "build",
"isDefault": "false",
"cidr": "/24"
}
}
}
```
This selects the VPC with tag `Class` with the value `build`, which is not
the default VPC, and have a IPv4 CIDR block of `/24`. NOTE: This will fail
unless *exactly* one VPC is returned.
- `filters` (map of strings) - filters used to select a `vpc_id`. NOTE:
This will fail unless *exactly* one VPC is returned. Any filter
described in the docs for
[DescribeVpcs](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html)
is valid.
`vpc_id` take precedence over this.
- `vpc_id` (string) - If launching into a VPC subnet, Packer needs the VPC ID
in order to create a temporary security group within the VPC. Requires
subnet_id to be set. If this field is left blank, Packer will try to get
the VPC ID from the subnet_id.
- `windows_password_timeout` (duration string | ex: "1h5m2s") - The timeout for waiting for a Windows
password for Windows instances. Defaults to 20 minutes. Example value:
10m
- `ssh_interface` (string) - One of `public_ip`, `private_ip`, `public_dns`, or `private_dns`. If
set, either the public IP address, private IP address, public DNS name
or private DNS name will be used as the host for SSH. The default behaviour
if inside a VPC is to use the public IP address if available, otherwise
the private IP address will be used. If not in a VPC the public DNS name
will be used. Also works for WinRM.
Where Packer is configured for an outbound proxy but WinRM traffic
should be direct, `ssh_interface` must be set to `private_dns` and
`<region>.compute.internal` included in the `NO_PROXY` environment
variable.

View File

@ -1,10 +0,0 @@
<!-- Code generated from the comments of the RunConfig struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
- `instance_type` (string) - The EC2 instance type to use while building the
AMI, such as t2.small.
- `source_ami` (string) - The source AMI whose root volume will be copied and
provisioned on the currently running instance. This must be an EBS-backed
AMI with a root volume snapshot that you have access to. Note: this is not
used when from_scratch is set to true.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the RunConfig struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
RunConfig contains configuration for running an instance from a source
AMI and details on how to access that launched image.

View File

@ -1,4 +0,0 @@
<!-- Code generated from the comments of the SubnetFilterOptions struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
- `most_free` (bool) - Most Free
- `random` (bool) - Random

View File

@ -1,15 +0,0 @@
<!-- Code generated from the comments of the VaultAWSEngineOptions struct in builder/amazon/common/access_config.go; DO NOT EDIT MANUALLY -->
- `name` (string) - Name
- `role_arn` (string) - Role ARN
- `ttl` (string) - Specifies the TTL for the use of the STS token. This
is specified as a string with a duration suffix. Valid only when
credential_type is assumed_role or federation_token. When not
specified, the default_sts_ttl set for the role will be used. If that
is also not set, then the default value of 3600s will be used. AWS
places limits on the maximum TTL allowed. See the AWS documentation on
the DurationSeconds parameter for AssumeRole (for assumed_role
credential types) and GetFederationToken (for federation_token
credential types) for more details.
- `engine_name` (string) - Engine Name

View File

@ -1,34 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/ebs/builder.go; DO NOT EDIT MANUALLY -->
- `ami_block_device_mappings` (awscommon.BlockDevices) - Add one or more block device mappings to the AMI. These will be attached
when booting a new instance from your AMI. To add a block device during
the Packer build see `launch_block_device_mappings` below. Your options
here may vary depending on the type of VM you use. See the
[BlockDevices](#block-devices-configuration) documentation for fields.
- `launch_block_device_mappings` (awscommon.BlockDevices) - Add one or more block devices before the Packer build starts. If you add
instance store volumes or EBS volumes in addition to the root device
volume, the created AMI will contain block device mapping information
for those volumes. Amazon creates snapshots of the source instance's
root volume and any other EBS volumes described here. When you launch an
instance from this new AMI, the instance automatically launches with
these additional volumes, and will restore them from snapshots taken
from the source instance. See the
[BlockDevices](#block-devices-configuration) documentation for fields.
- `run_volume_tags` (awscommon.TagMap) - Tags to apply to the volumes that are *launched* to create the AMI.
These tags are *not* applied to the resulting AMI unless they're
duplicated in `tags`. This is a [template
engine](/docs/templates/engine.html), see [Build template
data](#build-template-data) for more information.
- `no_ephemeral` (bool) - Relevant only to Windows guests: If you set this flag, we'll add clauses
to the launch_block_device_mappings that make sure ephemeral drives
don't show up in the EC2 console. If you launched from the EC2 console,
you'd get this automatically, but the SDK does not provide this service.
For more information, see
https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/InstanceStorage.html.
Because we don't validate the OS type of your guest, it is up to you to
make sure you don't set this for *nix guests; behavior may be
unpredictable.

View File

@ -1,8 +0,0 @@
<!-- Code generated from the comments of the BlockDevice struct in builder/amazon/ebssurrogate/block_device.go; DO NOT EDIT MANUALLY -->
- `omit_from_artifact` (bool) - If true, this block device will not be snapshotted and the created AMI
will not contain block device mapping information for this volume. If
false, the block device will be mapped into the final created AMI. Set
this option to true if you need a block device mounted in the surrogate
AMI but not in the final created AMI.

View File

@ -1,27 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/ebssurrogate/builder.go; DO NOT EDIT MANUALLY -->
- `ami_block_device_mappings` (awscommon.BlockDevices) - Add one or more block device mappings to the AMI. These will be attached
when booting a new instance from your AMI. To add a block device during
the Packer build see `launch_block_device_mappings` below. Your options
here may vary depending on the type of VM you use. See the
[BlockDevices](#block-devices-configuration) documentation for fields.
- `launch_block_device_mappings` (BlockDevices) - Add one or more block devices before the Packer build starts. If you add
instance store volumes or EBS volumes in addition to the root device
volume, the created AMI will contain block device mapping information
for those volumes. Amazon creates snapshots of the source instance's
root volume and any other EBS volumes described here. When you launch an
instance from this new AMI, the instance automatically launches with
these additional volumes, and will restore them from snapshots taken
from the source instance. See the
[BlockDevices](#block-devices-configuration) documentation for fields.
- `run_volume_tags` (awscommon.TagMap) - Tags to apply to the volumes that are *launched* to create the AMI.
These tags are *not* applied to the resulting AMI unless they're
duplicated in `tags`. This is a [template
engine](/docs/templates/engine.html), see [Build template
data](#build-template-data) for more information.
- `ami_architecture` (string) - what architecture to use when registering the
final AMI; valid options are "x86_64" or "arm64". Defaults to "x86_64".

View File

@ -1,10 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/ebssurrogate/builder.go; DO NOT EDIT MANUALLY -->
- `ami_root_device` (RootBlockDevice) - A block device mapping describing the root device of the AMI. This looks
like the mappings in `ami_block_device_mapping`, except with an
additional field:
- `source_device_name` (string) - The device name of the block device on
the source instance to be used as the root device for the AMI. This
must correspond to a block device in `launch_block_device_mapping`.

View File

@ -1,26 +0,0 @@
<!-- Code generated from the comments of the RootBlockDevice struct in builder/amazon/ebssurrogate/root_block_device.go; DO NOT EDIT MANUALLY -->
- `source_device_name` (string) - Source Device Name
- `device_name` (string) - The device name exposed to the instance (for
example, /dev/sdh or xvdh). Required for every device in the block
device mapping.
- `delete_on_termination` (bool) - Indicates whether the EBS volume is
deleted on instance termination. Default false. NOTE: If this
value is not explicitly set to true and volumes are not cleaned up by
an alternative method, additional volumes will accumulate after every
build.
- `iops` (int64) - The number of I/O operations per second (IOPS) that
the volume supports. See the documentation on
IOPs
for more information
- `volume_type` (string) - The volume type. gp2 for General Purpose
(SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, st1 for
Throughput Optimized HDD, sc1 for Cold HDD, and standard for
Magnetic volumes.
- `volume_size` (int64) - The size of the volume, in GiB. Required if
not specifying a snapshot_id.

View File

@ -1,11 +0,0 @@
<!-- Code generated from the comments of the BlockDevice struct in builder/amazon/ebsvolume/block_device.go; DO NOT EDIT MANUALLY -->
- `tags` (map[string]string) - Tags to apply to the volume. These are retained after the builder
completes. This is a [template engine](/docs/templates/engine.html), see
[Build template data](#build-template-data) for more information.
- `tag` ([]{name string, value string}) - Same as [`tags`](#tags) but defined as a singular repeatable block
containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.

View File

@ -1,44 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/ebsvolume/builder.go; DO NOT EDIT MANUALLY -->
- `ena_support` (boolean) - Enable enhanced networking (ENA but not SriovNetSupport) on
HVM-compatible AMIs. If set, add `ec2:ModifyInstanceAttribute` to your
AWS IAM policy. Note: you must make sure enhanced networking is enabled
on your instance. See [Amazon's documentation on enabling enhanced
networking](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html#enabling_enhanced_networking).
- `sriov_support` (bool) - Enable enhanced networking (SriovNetSupport but not ENA) on
HVM-compatible AMIs. If true, add `ec2:ModifyInstanceAttribute` to your
AWS IAM policy. Note: you must make sure enhanced networking is enabled
on your instance. See [Amazon's documentation on enabling enhanced
networking](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html#enabling_enhanced_networking).
Default `false`.
- `ebs_volumes` (BlockDevices) - Add the block device mappings to the AMI. If you add instance store
volumes or EBS volumes in addition to the root device volume, the
created AMI will contain block device mapping information for those
volumes. Amazon creates snapshots of the source instance's root volume
and any other EBS volumes described here. When you launch an instance
from this new AMI, the instance automatically launches with these
additional volumes, and will restore them from snapshots taken from the
source instance. See the [BlockDevices](#block-devices-configuration)
documentation for fields.
- `run_volume_tags` (map[string]string) - Tags to apply to the volumes of the instance that is *launched* to
create EBS Volumes. These tags will *not* appear in the tags of the
resulting EBS volumes unless they're duplicated under `tags` in the
`ebs_volumes` setting. This is a [template
engine](/docs/templates/engine.html), see [Build template
data](#build-template-data) for more information.
Note: The tags specified here will be *temporarily* applied to volumes
specified in `ebs_volumes` - but only while the instance is being
created. Packer will replace all tags on the volume with the tags
configured in the `ebs_volumes` section as soon as the instance is
reported as 'ready'.
- `run_volume_tag` ([]{name string, value string}) - Same as [`run_volume_tags`](#run_volume_tags) but defined as a singular
repeatable block containing a `name` and a `value` field. In HCL2 mode
the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.

View File

@ -1,39 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/instance/builder.go; DO NOT EDIT MANUALLY -->
- `ami_block_device_mappings` (awscommon.BlockDevices) - Add one or more block device mappings to the AMI. These will be attached
when booting a new instance from your AMI. To add a block device during
the Packer build see `launch_block_device_mappings` below. Your options
here may vary depending on the type of VM you use. See the
[BlockDevices](#block-devices-configuration) documentation for fields.
- `launch_block_device_mappings` (awscommon.BlockDevices) - Add one or more block devices before the Packer build starts. If you add
instance store volumes or EBS volumes in addition to the root device
volume, the created AMI will contain block device mapping information
for those volumes. Amazon creates snapshots of the source instance's
root volume and any other EBS volumes described here. When you launch an
instance from this new AMI, the instance automatically launches with
these additional volumes, and will restore them from snapshots taken
from the source instance. See the
[BlockDevices](#block-devices-configuration) documentation for fields.
- `bundle_destination` (string) - The directory on the running instance where the bundled AMI will be
saved prior to uploading. By default this is /tmp. This directory must
exist and be writable.
- `bundle_prefix` (string) - The prefix for files created from bundling the root volume. By default
this is image-{{timestamp}}. The timestamp variable should be used to
make sure this is unique, otherwise it can collide with other created
AMIs by Packer in your account.
- `bundle_upload_command` (string) - The command to use to upload the bundled volume. See the "custom bundle
commands" section below for more information.
- `bundle_vol_command` (string) - The command to use to bundle the volume. See the "custom bundle
commands" section below for more information.
- `x509_upload_path` (string) - The path on the remote machine where the X509 certificate will be
uploaded. This path must already exist and be writable. X509
certificates are uploaded after provisioning is run, so it is perfectly
okay to create this directory as part of the provisioning process.
Defaults to /tmp.

View File

@ -1,16 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/instance/builder.go; DO NOT EDIT MANUALLY -->
- `account_id` (string) - Your AWS account ID. This is required for bundling the AMI. This is not
the same as the access key. You can find your account ID in the security
credentials page of your AWS account.
- `s3_bucket` (string) - The name of the S3 bucket to upload the AMI. This bucket will be created
if it doesn't exist.
- `x509_cert_path` (string) - The local path to a valid X509 certificate for your AWS account. This is
used for bundling the AMI. This X509 certificate must be registered with
your account from the security credentials page in the AWS console.
- `x509_key_path` (string) - The local path to the private key for the X509 certificate specified by
x509_cert_path. This is used for bundling the AMI.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/amazon/instance/builder.go; DO NOT EDIT MANUALLY -->
Config is the configuration that is chained through the steps and settable
from the template.

View File

@ -1,241 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
- `capture_name_prefix` (string) - Capture
- `capture_container_name` (string) - Capture Container Name
- `shared_image_gallery` (SharedImageGallery) - Use a [Shared Gallery
image](https://azure.microsoft.com/en-us/blog/announcing-the-public-preview-of-shared-image-gallery/)
as the source for this build. *VHD targets are incompatible with this
build type* - the target must be a *Managed Image*.
"shared_image_gallery": {
"subscription": "00000000-0000-0000-0000-00000000000",
"resource_group": "ResourceGroup",
"gallery_name": "GalleryName",
"image_name": "ImageName",
"image_version": "1.0.0"
}
"managed_image_name": "TargetImageName",
"managed_image_resource_group_name": "TargetResourceGroup"
- `shared_image_gallery_destination` (SharedImageGalleryDestination) - The name of the Shared Image Gallery under which the managed image will be published as Shared Gallery Image version.
Following is an example.
"shared_image_gallery_destination": {
"resource_group": "ResourceGroup",
"gallery_name": "GalleryName",
"image_name": "ImageName",
"image_version": "1.0.0",
"replication_regions": ["regionA", "regionB", "regionC"]
}
"managed_image_name": "TargetImageName",
"managed_image_resource_group_name": "TargetResourceGroup"
- `shared_image_gallery_timeout` (duration string | ex: "1h5m2s") - How long to wait for an image to be published to the shared image
gallery before timing out. If your Packer build is failing on the
Publishing to Shared Image Gallery step with the error `Original Error:
context deadline exceeded`, but the image is present when you check your
Azure dashboard, then you probably need to increase this timeout from
its default of "60m" (valid time units include `s` for seconds, `m` for
minutes, and `h` for hours.)
- `shared_gallery_image_version_end_of_life_date` (string) - The end of life date (2006-01-02T15:04:05.99Z) of the gallery Image Version. This property
can be used for decommissioning purposes.
- `shared_image_gallery_replica_count` (int32) - The number of replicas of the Image Version to be created per region. This
property would take effect for a region when regionalReplicaCount is not specified.
Replica count must be between 1 and 10.
- `shared_gallery_image_version_exclude_from_latest` (bool) - If set to true, Virtual Machines deployed from the latest version of the
Image Definition won't use this Image Version.
- `image_version` (string) - Specify a specific version of an OS to boot from.
Defaults to `latest`. There may be a difference in versions available
across regions due to image synchronization latency. To ensure a consistent
version across regions set this value to one that is available in all
regions where you are deploying.
CLI example
`az vm image list --location westus --publisher Canonical --offer UbuntuServer --sku 16.04.0-LTS --all`
- `location` (string) - Location
- `vm_size` (string) - Size of the VM used for building. This can be changed when you deploy a
VM from your VHD. See
[pricing](https://azure.microsoft.com/en-us/pricing/details/virtual-machines/)
information. Defaults to `Standard_A1`.
CLI example `az vm list-sizes --location westus`
- `managed_image_resource_group_name` (string) - Specify the managed image resource group name where the result of the
Packer build will be saved. The resource group must already exist. If
this value is set, the value managed_image_name must also be set. See
documentation to learn more about managed images.
- `managed_image_name` (string) - Specify the managed image name where the result of the Packer build will
be saved. The image name must not exist ahead of time, and will not be
overwritten. If this value is set, the value
managed_image_resource_group_name must also be set. See documentation to
learn more about managed images.
- `managed_image_storage_account_type` (string) - Specify the storage account
type for a managed image. Valid values are Standard_LRS and Premium_LRS.
The default is Standard_LRS.
- `managed_image_os_disk_snapshot_name` (string) - If
managed_image_os_disk_snapshot_name is set, a snapshot of the OS disk
is created with the same name as this value before the VM is captured.
- `managed_image_data_disk_snapshot_prefix` (string) - If
managed_image_data_disk_snapshot_prefix is set, snapshot of the data
disk(s) is created with the same prefix as this value before the VM is
captured.
- `managed_image_zone_resilient` (bool) - Store the image in zone-resilient storage. You need to create it in a
region that supports [availability
zones](https://docs.microsoft.com/en-us/azure/availability-zones/az-overview).
- `azure_tags` (map[string]\*string) - the user can define up to 15
tags. Tag names cannot exceed 512 characters, and tag values cannot exceed
256 characters. Tags are applied to every resource deployed by a Packer
build, i.e. Resource Group, VM, NIC, VNET, Public IP, KeyVault, etc.
- `azure_tag` ([]{name string, value string}) - Same as [`azure_tags`](#azure_tags) but defined as a singular repeatable block
containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.
- `resource_group_name` (string) - Resource group under which the final artifact will be stored.
- `storage_account` (string) - Storage account under which the final artifact will be stored.
- `temp_compute_name` (string) - temporary name assigned to the VM. If this
value is not set, a random value will be assigned. Knowing the resource
group and VM name allows one to execute commands to update the VM during a
Packer build, e.g. attach a resource disk to the VM.
- `temp_resource_group_name` (string) - name assigned to the temporary resource group created during the build.
If this value is not set, a random value will be assigned. This resource
group is deleted at the end of the build.
- `build_resource_group_name` (string) - Specify an existing resource group to run the build in.
- `build_key_vault_name` (string) - Specify an existing key vault to use for uploading certificates to the
instance to connect.
- `build_key_vault_sku` (string) - Specify the KeyVault SKU to create during the build. Valid values are
standard or premium. The default value is standard.
- `private_virtual_network_with_public_ip` (bool) - This value allows you to
set a virtual_network_name and obtain a public IP. If this value is not
set and virtual_network_name is defined Packer is only allowed to be
executed from a host on the same subnet / virtual network.
- `virtual_network_name` (string) - Use a pre-existing virtual network for the
VM. This option enables private communication with the VM, no public IP
address is used or provisioned (unless you set
private_virtual_network_with_public_ip).
- `virtual_network_subnet_name` (string) - If virtual_network_name is set,
this value may also be set. If virtual_network_name is set, and this
value is not set the builder attempts to determine the subnet to use with
the virtual network. If the subnet cannot be found, or it cannot be
disambiguated, this value should be set.
- `virtual_network_resource_group_name` (string) - If virtual_network_name is
set, this value may also be set. If virtual_network_name is set, and
this value is not set the builder attempts to determine the resource group
containing the virtual network. If the resource group cannot be found, or
it cannot be disambiguated, this value should be set.
- `custom_data_file` (string) - Specify a file containing custom data to inject into the cloud-init
process. The contents of the file are read and injected into the ARM
template. The custom data will be passed to cloud-init for processing at
the time of provisioning. See
[documentation](http://cloudinit.readthedocs.io/en/latest/topics/examples.html)
to learn more about custom data, and how it can be used to influence the
provisioning process.
- `plan_info` (PlanInformation) - Used for creating images from Marketplace images. Please refer to
[Deploy an image with Marketplace
terms](https://aka.ms/azuremarketplaceapideployment) for more details.
Not all Marketplace images support programmatic deployment, and support
is controlled by the image publisher.
An example plan\_info object is defined below.
```json
{
"plan_info": {
"plan_name": "rabbitmq",
"plan_product": "rabbitmq",
"plan_publisher": "bitnami"
}
}
```
`plan_name` (string) - The plan name, required. `plan_product` (string) -
The plan product, required. `plan_publisher` (string) - The plan publisher,
required. `plan_promotion_code` (string) - Some images accept a promotion
code, optional.
Images created from the Marketplace with `plan_info` **must** specify
`plan_info` whenever the image is deployed. The builder automatically adds
tags to the image to ensure this information is not lost. The following
tags are added.
1. PlanName
2. PlanProduct
3. PlanPublisher
4. PlanPromotionCode
- `polling_duration_timeout` (duration string | ex: "1h5m2s") - The default PollingDuration for azure is 15mins, this property will override
that value. See [Azure DefaultPollingDuration](https://godoc.org/github.com/Azure/go-autorest/autorest#pkg-constants)
If your Packer build is failing on the
ARM deployment step with the error `Original Error:
context deadline exceeded`, then you probably need to increase this timeout from
its default of "15m" (valid time units include `s` for seconds, `m` for
minutes, and `h` for hours.)
- `os_type` (string) - If either Linux or Windows is specified Packer will
automatically configure authentication credentials for the provisioned
machine. For Linux this configures an SSH authorized key. For Windows
this configures a WinRM certificate.
- `os_disk_size_gb` (int32) - Specify the size of the OS disk in GB
(gigabytes). Values of zero or less than zero are ignored.
- `disk_additional_size` ([]int32) - The size(s) of any additional hard disks for the VM in gigabytes. If
this is not specified then the VM will only contain an OS disk. The
number of additional disks and maximum size of a disk depends on the
configuration of your VM. See
[Windows](https://docs.microsoft.com/en-us/azure/virtual-machines/windows/about-disks-and-vhds)
or
[Linux](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/about-disks-and-vhds)
for more information.
For VHD builds the final artifacts will be named
`PREFIX-dataDisk-<n>.UUID.vhd` and stored in the specified capture
container along side the OS disk. The additional disks are included in
the deployment template `PREFIX-vmTemplate.UUID`.
For Managed build the final artifacts are included in the managed image.
The additional disk will have the same storage account type as the OS
disk, as specified with the `managed_image_storage_account_type`
setting.
- `disk_caching_type` (string) - Specify the disk caching type. Valid values
are None, ReadOnly, and ReadWrite. The default value is ReadWrite.
- `allowed_inbound_ip_addresses` ([]string) - Specify the list of IP addresses and CIDR blocks that should be
allowed access to the VM. If provided, an Azure Network Security
Group will be created with corresponding rules and be bound to
the subnet of the VM.
Providing `allowed_inbound_ip_addresses` in combination with
`virtual_network_name` is not allowed.
- `async_resourcegroup_delete` (bool) - If you want packer to delete the
temporary resource group asynchronously set this value. It's a boolean
value and defaults to false. Important Setting this true means that
your builds are faster, however any failed deletes are not reported.

View File

@ -1,38 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
- `image_publisher` (string) - Name of the publisher to use for your base image (Azure Marketplace Images only). See
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
for details.
CLI example `az vm image list-publishers --location westus`
- `image_offer` (string) - Name of the publisher's offer to use for your base image (Azure Marketplace Images only). See
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
for details.
CLI example
`az vm image list-offers --location westus --publisher Canonical`
- `image_sku` (string) - SKU of the image offer to use for your base image (Azure Marketplace Images only). See
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
for details.
CLI example
`az vm image list-skus --location westus --publisher Canonical --offer UbuntuServer`
- `image_url` (string) - URL to a custom VHD to use for your base image. If this value is set, do
not set image_publisher, image_offer, image_sku, or image_version.
- `custom_managed_image_name` (string) - Name of a custom managed image to use for your base image. If this value is set, do
not set image_publisher, image_offer, image_sku, or image_version.
If this value is set, the value
`custom_managed_image_resource_group_name` must also be set. See
[documentation](https://docs.microsoft.com/en-us/azure/storage/storage-managed-disks-overview#images)
to learn more about managed images.
- `custom_managed_image_resource_group_name` (string) - Name of a custom managed image's resource group to use for your base image. If this
value is set, image_publisher, image_offer, image_sku, or image_version.
`custom_managed_image_name` must also be set. See
[documentation](https://docs.microsoft.com/en-us/azure/storage/storage-managed-disks-overview#images)
to learn more about managed images.

View File

@ -1,6 +0,0 @@
<!-- Code generated from the comments of the PlanInformation struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
- `plan_name` (string) - Plan Name
- `plan_product` (string) - Plan Product
- `plan_publisher` (string) - Plan Publisher
- `plan_promotion_code` (string) - Plan Promotion Code

View File

@ -1,12 +0,0 @@
<!-- Code generated from the comments of the SharedImageGallery struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
- `subscription` (string) - Subscription
- `resource_group` (string) - Resource Group
- `gallery_name` (string) - Gallery Name
- `image_name` (string) - Image Name
- `image_version` (string) - Specify a specific version of an OS to boot from.
Defaults to latest. There may be a difference in versions available
across regions due to image synchronization latency. To ensure a consistent
version across regions set this value to one that is available in all
regions where you are deploying.

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the SharedImageGalleryDestination struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
- `resource_group` (string) - Sig Destination Resource Group
- `gallery_name` (string) - Sig Destination Gallery Name
- `image_name` (string) - Sig Destination Image Name
- `image_version` (string) - Sig Destination Image Version
- `replication_regions` ([]string) - Sig Destination Replication Regions

View File

@ -1,50 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/azure/chroot/builder.go; DO NOT EDIT MANUALLY -->
- `from_scratch` (bool) - When set to `true`, starts with an empty, unpartitioned disk. Defaults to `false`.
- `command_wrapper` (string) - How to run shell commands. This may be useful to set environment variables or perhaps run
a command with sudo or so on. This is a configuration template where the `.Command` variable
is replaced with the command to be run. Defaults to `{{.Command}}`.
- `pre_mount_commands` ([]string) - A series of commands to execute after attaching the root volume and before mounting the chroot.
This is not required unless using `from_scratch`. If so, this should include any partitioning
and filesystem creation commands. The path to the device is provided by `{{.Device}}`.
- `mount_options` ([]string) - Options to supply the `mount` command when mounting devices. Each option will be prefixed with
`-o` and supplied to the `mount` command ran by Packer. Because this command is ran in a shell,
user discretion is advised. See this manual page for the `mount` command for valid file system specific options.
- `mount_partition` (string) - The partition number containing the / partition. By default this is the first partition of the volume.
- `mount_path` (string) - The path where the volume will be mounted. This is where the chroot environment will be. This defaults
to `/mnt/packer-amazon-chroot-volumes/{{.Device}}`. This is a configuration template where the `.Device`
variable is replaced with the name of the device where the volume is attached.
- `post_mount_commands` ([]string) - As `pre_mount_commands`, but the commands are executed after mounting the root device and before the
extra mount and copy steps. The device and mount path are provided by `{{.Device}}` and `{{.MountPath}}`.
- `chroot_mounts` ([][]string) - This is a list of devices to mount into the chroot environment. This configuration parameter requires
some additional documentation which is in the "Chroot Mounts" section below. Please read that section
for more information on how to use this.
- `copy_files` ([]string) - Paths to files on the running Azure instance that will be copied into the chroot environment prior to
provisioning. Defaults to `/etc/resolv.conf` so that DNS lookups work. Pass an empty list to skip copying
`/etc/resolv.conf`. You may need to do this if you're building an image that uses systemd.
- `temporary_os_disk_name` (string) - The name of the temporary disk that will be created in the resource group of the VM that Packer is
running on. Will be generated if not set.
- `os_disk_size_gb` (int32) - Try to resize the OS disk to this size on the first copy. Disks can only be englarged. If not specified,
the disk will keep its original size. Required when using `from_scratch`
- `os_disk_storage_account_type` (string) - The [storage SKU](https://docs.microsoft.com/en-us/rest/api/compute/disks/createorupdate#diskstorageaccounttypes)
to use for the OS Disk. Defaults to `Standard_LRS`.
- `os_disk_cache_type` (string) - The [cache type](https://docs.microsoft.com/en-us/rest/api/compute/images/createorupdate#cachingtypes)
specified in the resulting image and for attaching it to the Packer VM. Defaults to `ReadOnly`
- `os_disk_skip_cleanup` (bool) - If set to `true`, leaves the temporary disk behind in the Packer VM resource group. Defaults to `false`
- `image_hyperv_generation` (string) - The [Hyper-V generation type](https://docs.microsoft.com/en-us/rest/api/compute/images/createorupdate#hypervgenerationtypes).
Defaults to `V1`.

View File

@ -1,6 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/azure/chroot/builder.go; DO NOT EDIT MANUALLY -->
- `source` (string) - Either a managed disk resource ID or a publisher:offer:sku:version specifier for plaform image sources.
- `image_resource_id` (string) - The image to create using this build.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/azure/chroot/builder.go; DO NOT EDIT MANUALLY -->
Config is the configuration that is chained through the steps and settable
from the template.

View File

@ -1,26 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/azure/common/client/config.go; DO NOT EDIT MANUALLY -->
- `cloud_environment_name` (string) - One of Public, China, Germany, or
USGovernment. Defaults to Public. Long forms such as
USGovernmentCloud and AzureUSGovernmentCloud are also supported.
- `client_id` (string) - The application ID of the AAD Service Principal.
Requires either `client_secret`, `client_cert_path` or `client_jwt` to be set as well.
- `client_secret` (string) - A password/secret registered for the AAD SP.
- `client_cert_path` (string) - The path to a pem-encoded certificate that will be used to authenticate
as the specified AAD SP.
- `client_jwt` (string) - A JWT bearer token for client auth (RFC 7523, Sec. 2.2) that will be used
to authenticate the AAD SP. Provides more control over token the expiration
when using certificate authentication than when using `client_cert_path`.
- `object_id` (string) - The object ID for the AAD SP. Optional, will be derived from the oAuth token if left empty.
- `tenant_id` (string) - The Active Directory tenant identifier with which your `client_id` and
`subscription_id` are associated. If not specified, `tenant_id` will be
looked up using `subscription_id`.
- `subscription_id` (string) - The subscription to use.

View File

@ -1,9 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/azure/common/client/config.go; DO NOT EDIT MANUALLY -->
Config allows for various ways to authenticate Azure clients.
When `client_id` and `subscription_id` are specified, Packer will use the
specified Azure Active Directoty (AAD) Service Principal (SP).
If only `subscription_id` is specified, Packer will try to interactively
log on the current user (tokens will be cached).
If none of these options are specified, Packer will attempt to use the
Managed Identity and subscription of the VM that Packer is running on.
This will only work if Packer is running on an Azure VM.

View File

@ -1,5 +0,0 @@
<!-- Code generated from the comments of the ArtifactParameter struct in builder/azure/dtl/config.go; DO NOT EDIT MANUALLY -->
- `name` (string) - Name
- `value` (string) - Value
- `type` (string) - Type

View File

@ -1,158 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/azure/dtl/config.go; DO NOT EDIT MANUALLY -->
- `capture_name_prefix` (string) - Capture
- `capture_container_name` (string) - Capture Container Name
- `shared_image_gallery` (SharedImageGallery) - Use a [Shared Gallery
image](https://azure.microsoft.com/en-us/blog/announcing-the-public-preview-of-shared-image-gallery/)
as the source for this build. *VHD targets are incompatible with this
build type* - the target must be a *Managed Image*.
"shared_image_gallery": {
"subscription": "00000000-0000-0000-0000-00000000000",
"resource_group": "ResourceGroup",
"gallery_name": "GalleryName",
"image_name": "ImageName",
"image_version": "1.0.0"
}
"managed_image_name": "TargetImageName",
"managed_image_resource_group_name": "TargetResourceGroup"
- `shared_image_gallery_destination` (SharedImageGalleryDestination) - The name of the Shared Image Gallery under which the managed image will be published as Shared Gallery Image version.
Following is an example.
<!-- -->
"shared_image_gallery_destination": {
"resource_group": "ResourceGroup",
"gallery_name": "GalleryName",
"image_name": "ImageName",
"image_version": "1.0.0",
"replication_regions": ["regionA", "regionB", "regionC"]
}
"managed_image_name": "TargetImageName",
"managed_image_resource_group_name": "TargetResourceGroup"
- `shared_image_gallery_timeout` (duration string | ex: "1h5m2s") - How long to wait for an image to be published to the shared image
gallery before timing out. If your Packer build is failing on the
Publishing to Shared Image Gallery step with the error `Original Error:
context deadline exceeded`, but the image is present when you check your
Azure dashboard, then you probably need to increase this timeout from
its default of "60m" (valid time units include `s` for seconds, `m` for
minutes, and `h` for hours.)
- `image_publisher` (string) - PublisherName for your base image. See
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
for details.
CLI example `az vm image list-publishers --location westus`
- `image_offer` (string) - Offer for your base image. See
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
for details.
CLI example
`az vm image list-offers --location westus --publisher Canonical`
- `image_sku` (string) - SKU for your base image. See
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
for details.
CLI example
`az vm image list-skus --location westus --publisher Canonical --offer UbuntuServer`
- `image_version` (string) - Specify a specific version of an OS to boot from.
Defaults to `latest`. There may be a difference in versions available
across regions due to image synchronization latency. To ensure a consistent
version across regions set this value to one that is available in all
regions where you are deploying.
CLI example
`az vm image list --location westus --publisher Canonical --offer UbuntuServer --sku 16.04.0-LTS --all`
- `image_url` (string) - Specify a custom VHD to use. If this value is set, do
not set image_publisher, image_offer, image_sku, or image_version.
- `custom_managed_image_resource_group_name` (string) - Specify the source managed image's resource group used to use. If this
value is set, do not set image\_publisher, image\_offer, image\_sku, or
image\_version. If this value is set, the value
`custom_managed_image_name` must also be set. See
[documentation](https://docs.microsoft.com/en-us/azure/storage/storage-managed-disks-overview#images)
to learn more about managed images.
- `custom_managed_image_name` (string) - Specify the source managed image's name to use. If this value is set, do
not set image\_publisher, image\_offer, image\_sku, or image\_version.
If this value is set, the value
`custom_managed_image_resource_group_name` must also be set. See
[documentation](https://docs.microsoft.com/en-us/azure/storage/storage-managed-disks-overview#images)
to learn more about managed images.
- `location` (string) - Location
- `vm_size` (string) - Size of the VM used for building. This can be changed when you deploy a
VM from your VHD. See
[pricing](https://azure.microsoft.com/en-us/pricing/details/virtual-machines/)
information. Defaults to `Standard_A1`.
CLI example `az vm list-sizes --location westus`
- `managed_image_resource_group_name` (string) - Specify the managed image resource group name where the result of the
Packer build will be saved. The resource group must already exist. If
this value is set, the value managed_image_name must also be set. See
documentation to learn more about managed images.
- `managed_image_name` (string) - Specify the managed image name where the result of the Packer build will
be saved. The image name must not exist ahead of time, and will not be
overwritten. If this value is set, the value
managed_image_resource_group_name must also be set. See documentation to
learn more about managed images.
- `managed_image_storage_account_type` (string) - Specify the storage account
type for a managed image. Valid values are Standard_LRS and Premium_LRS.
The default is Standard_LRS.
- `azure_tags` (map[string]\*string) - the user can define up to 15
tags. Tag names cannot exceed 512 characters, and tag values cannot exceed
256 characters. Tags are applied to every resource deployed by a Packer
build, i.e. Resource Group, VM, NIC, VNET, Public IP, KeyVault, etc.
- `plan_id` (string) - Used for creating images from Marketplace images. Please refer to
[Deploy an image with Marketplace
terms](https://aka.ms/azuremarketplaceapideployment) for more details.
Not all Marketplace images support programmatic deployment, and support
is controlled by the image publisher.
Plan_id is a string with unique identifier for the plan associated with images.
Ex plan_id="1-12ab"
- `polling_duration_timeout` (duration string | ex: "1h5m2s") - The default PollingDuration for azure is 15mins, this property will override
that value. See [Azure DefaultPollingDuration](https://godoc.org/github.com/Azure/go-autorest/autorest#pkg-constants)
If your Packer build is failing on the
ARM deployment step with the error `Original Error:
context deadline exceeded`, then you probably need to increase this timeout from
its default of "15m" (valid time units include `s` for seconds, `m` for
minutes, and `h` for hours.)
- `os_type` (string) - If either Linux or Windows is specified Packer will
automatically configure authentication credentials for the provisioned
machine. For Linux this configures an SSH authorized key. For Windows
this configures a WinRM certificate.
- `os_disk_size_gb` (int32) - Specify the size of the OS disk in GB
(gigabytes). Values of zero or less than zero are ignored.
- `disk_additional_size` ([]int32) - For Managed build the final artifacts are included in the managed image.
The additional disk will have the same storage account type as the OS
disk, as specified with the `managed_image_storage_account_type`
setting.
- `disk_caching_type` (string) - Specify the disk caching type. Valid values
are None, ReadOnly, and ReadWrite. The default value is ReadWrite.
- `storage_type` (string) - DTL values
- `lab_virtual_network_name` (string) - Lab Virtual Network Name
- `lab_name` (string) - Lab Name
- `lab_subnet_name` (string) - Lab Subnet Name
- `lab_resource_group_name` (string) - Lab Resource Group Name
- `dtl_artifacts` ([]DtlArtifact) - Dtl Artifacts
- `vm_name` (string) - VM Name

View File

@ -1,6 +0,0 @@
<!-- Code generated from the comments of the DtlArtifact struct in builder/azure/dtl/config.go; DO NOT EDIT MANUALLY -->
- `artifact_name` (string) - Artifact Name
- `repository_name` (string) - Repository Name
- `artifact_id` (string) - Artifact Id
- `parameters` ([]ArtifactParameter) - Parameters

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the SharedImageGallery struct in builder/azure/dtl/config.go; DO NOT EDIT MANUALLY -->
- `subscription` (string) - Subscription
- `resource_group` (string) - Resource Group
- `gallery_name` (string) - Gallery Name
- `image_name` (string) - Image Name
- `image_version` (string) - Image Version

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the SharedImageGalleryDestination struct in builder/azure/dtl/config.go; DO NOT EDIT MANUALLY -->
- `resource_group` (string) - Sig Destination Resource Group
- `gallery_name` (string) - Sig Destination Gallery Name
- `image_name` (string) - Sig Destination Image Name
- `image_version` (string) - Sig Destination Image Version
- `replication_regions` ([]string) - Sig Destination Replication Regions

View File

@ -1,108 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/cloudstack/config.go; DO NOT EDIT MANUALLY -->
- `async_timeout` (duration string | ex: "1h5m2s") - The time duration to wait for async calls to
finish. Defaults to 30m.
- `http_get_only` (bool) - Some cloud providers only allow HTTP GET calls
to their CloudStack API. If using such a provider, you need to set this to
true in order for the provider to only make GET calls and no POST calls.
- `ssl_no_verify` (bool) - Set to true to skip SSL verification.
Defaults to false.
- `cidr_list` ([]string) - List of CIDR's that will have access to the new
instance. This is needed in order for any provisioners to be able to
connect to the instance. Defaults to [ "0.0.0.0/0" ]. Only required when
use_local_ip_address is false.
- `create_security_group` (bool) - If true a temporary security group
will be created which allows traffic towards the instance from the
cidr_list. This option will be ignored if security_groups is also
defined. Requires expunge set to true. Defaults to false.
- `disk_offering` (string) - The name or ID of the disk offering used for the
instance. This option is only available (and also required) when using
source_iso.
- `disk_size` (int64) - The size (in GB) of the root disk of the new
instance. This option is only available when using source_template.
- `eject_iso` (bool) - If `true` make a call to the CloudStack API, after loading image to
cache, requesting to check and detach ISO file (if any) currently
attached to a virtual machine. Defaults to `false`. This option is only
available when using `source_iso`.
- `eject_iso_delay` (duration string | ex: "1h5m2s") - Configure the duration time to wait, making sure virtual machine is able
to finish installing OS before it ejects safely. Requires `eject_iso`
set to `true` and this option is only available when using `source_iso`.
- `expunge` (bool) - Set to true to expunge the instance when it is
destroyed. Defaults to false.
- `hypervisor` (string) - The target hypervisor (e.g. XenServer, KVM) for
the new template. This option is required when using source_iso.
- `instance_name` (string) - The name of the instance. Defaults to
"packer-UUID" where UUID is dynamically generated.
- `instance_display_name` (string) - The display name of the instance. Defaults to "Created by Packer".
- `project` (string) - The name or ID of the project to deploy the instance
to.
- `public_ip_address` (string) - The public IP address or it's ID used for
connecting any provisioners to. If not provided, a temporary public IP
address will be associated and released during the Packer run.
- `public_port` (int) - The fixed port you want to configure in the port
forwarding rule. Set this attribute if you do not want to use the a random
public port.
- `security_groups` ([]string) - A list of security group IDs or
names to associate the instance with.
- `prevent_firewall_changes` (bool) - Set to true to prevent network
ACLs or firewall rules creation. Defaults to false.
- `temporary_keypair_name` (string) - The name of the temporary SSH key pair
to generate. By default, Packer generates a name that looks like
packer_<UUID>, where <UUID> is a 36 character unique identifier.
- `use_local_ip_address` (bool) - Set to true to indicate that the
provisioners should connect to the local IP address of the instance.
- `user_data` (string) - User data to launch with the instance. This is a
template engine; see "User Data" bellow for
more details. Packer will not automatically wait for a user script to
finish before shutting down the instance this must be handled in a
provisioner.
- `user_data_file` (string) - Path to a file that will be used for the user
data when launching the instance. This file will be parsed as a template
engine see User Data bellow for more
details.
- `template_name` (string) - The name of the new template. Defaults to
"packer-{{timestamp}}" where timestamp will be the current time.
- `template_display_text` (string) - The display text of the new template.
Defaults to the template_name.
- `template_featured` (bool) - Set to true to indicate that the template
is featured. Defaults to false.
- `template_public` (bool) - Set to true to indicate that the template
is available for all accounts. Defaults to false.
- `template_password_enabled` (bool) - Set to true to indicate the
template should be password enabled. Defaults to false.
- `template_requires_hvm` (bool) - Set to true to indicate the template
requires hardware-assisted virtualization. Defaults to false.
- `template_scalable` (bool) - Set to true to indicate that the template
contains tools to support dynamic scaling of VM cpu/memory. Defaults to
false.
- `template_tag` (string) -
- `tags` (map[string]string) - Tags

View File

@ -1,33 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/cloudstack/config.go; DO NOT EDIT MANUALLY -->
- `api_url` (string) - The CloudStack API endpoint we will connect to. It can
also be specified via environment variable CLOUDSTACK_API_URL, if set.
- `api_key` (string) - The API key used to sign all API requests. It can also
be specified via environment variable CLOUDSTACK_API_KEY, if set.
- `secret_key` (string) - The secret key used to sign all API requests. It
can also be specified via environment variable CLOUDSTACK_SECRET_KEY, if
set.
- `network` (string) - The name or ID of the network to connect the instance
to.
- `service_offering` (string) - The name or ID of the service offering used
for the instance.
- `source_iso` (string) - The name or ID of an ISO that will be mounted
before booting the instance. This option is mutually exclusive with
source_template. When using source_iso, both disk_offering and
hypervisor are required.
- `source_template` (string) - The name or ID of the template used as base
template for the instance. This option is mutually exclusive with
source_iso.
- `zone` (string) - The name or ID of the zone where the instance will be
created.
- `template_os` (string) - The name or ID of the template OS for the new
template that will be created.

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/cloudstack/config.go; DO NOT EDIT MANUALLY -->
Config holds all the details needed to configure the builder.

View File

@ -1,46 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/digitalocean/config.go; DO NOT EDIT MANUALLY -->
- `api_url` (string) - Non standard api endpoint URL. Set this if you are
using a DigitalOcean API compatible service. It can also be specified via
environment variable DIGITALOCEAN_API_URL.
- `private_networking` (bool) - Set to true to enable private networking
for the droplet being created. This defaults to false, or not enabled.
- `monitoring` (bool) - Set to true to enable monitoring for the droplet
being created. This defaults to false, or not enabled.
- `ipv6` (bool) - Set to true to enable ipv6 for the droplet being
created. This defaults to false, or not enabled.
- `snapshot_name` (string) - The name of the resulting snapshot that will
appear in your account. Defaults to "packer-{{timestamp}}" (see
configuration templates for more info).
- `snapshot_regions` ([]string) - The regions of the resulting
snapshot that will appear in your account.
- `state_timeout` (duration string | ex: "1h5m2s") - The time to wait, as a duration string, for a
droplet to enter a desired state (such as "active") before timing out. The
default state timeout is "6m".
- `snapshot_timeout` (duration string | ex: "1h5m2s") - How long to wait for an image to be published to the shared image
gallery before timing out. If your Packer build is failing on the
Publishing to Shared Image Gallery step with the error `Original Error:
context deadline exceeded`, but the image is present when you check your
Azure dashboard, then you probably need to increase this timeout from
its default of "60m" (valid time units include `s` for seconds, `m` for
minutes, and `h` for hours.)
- `droplet_name` (string) - The name assigned to the droplet. DigitalOcean
sets the hostname of the machine to this value.
- `user_data` (string) - User data to launch with the Droplet. Packer will
not automatically wait for a user script to finish before shutting down the
instance this must be handled in a provisioner.
- `user_data_file` (string) - Path to a file that will be used for the user
data when launching the Droplet.
- `tags` ([]string) - Tags to apply to the droplet when it is created

View File

@ -1,21 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/digitalocean/config.go; DO NOT EDIT MANUALLY -->
- `api_token` (string) - The client TOKEN to use to access your account. It
can also be specified via environment variable DIGITALOCEAN_API_TOKEN, if
set.
- `region` (string) - The name (or slug) of the region to launch the droplet
in. Consequently, this is the region where the snapshot will be available.
See
https://developers.digitalocean.com/documentation/v2/#list-all-regions
for the accepted region names/slugs.
- `size` (string) - The name (or slug) of the droplet size to use. See
https://developers.digitalocean.com/documentation/v2/#list-all-sizes
for the accepted size names/slugs.
- `image` (string) - The name (or slug) of the base image to use. This is the
image that will be used to launch a new droplet and provision it. See
https://developers.digitalocean.com/documentation/v2/#list-all-images
for details on how to get a list of the accepted image names/slugs.

View File

@ -1,19 +0,0 @@
<!-- Code generated from the comments of the AwsAccessConfig struct in builder/docker/ecr_login.go; DO NOT EDIT MANUALLY -->
- `aws_access_key` (string) - The AWS access key used to communicate with
AWS. Learn how to set
this.
- `aws_secret_key` (string) - The AWS secret key used to communicate with
AWS. Learn how to set
this.
- `aws_token` (string) - The AWS access token to use. This is different from
the access key and secret key. If you're not sure what this is, then you
probably don't need it. This will also be read from the AWS_SESSION_TOKEN
environmental variable.
- `aws_profile` (string) - The AWS shared credentials profile used to
communicate with AWS. Learn how to set
this.

View File

@ -1,62 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/docker/config.go; DO NOT EDIT MANUALLY -->
- `author` (string) - Set the author (e-mail) of a commit.
- `changes` ([]string) - Dockerfile instructions to add to the commit. Example of instructions
are CMD, ENTRYPOINT, ENV, and EXPOSE. Example: [ "USER ubuntu", "WORKDIR
/app", "EXPOSE 8080" ]
- `container_dir` (string) - The directory inside container to mount temp directory from host server
for work [file provisioner](/docs/provisioners/file.html). This defaults
to c:/packer-files on windows and /packer-files on other systems.
- `exec_user` (string) - Username (UID) to run remote commands with. You can also set the group
name/ID if you want: (UID or UID:GID). You may need this if you get
permission errors trying to run the shell or other provisioners.
- `privileged` (bool) - If true, run the docker container with the `--privileged` flag. This
defaults to false if not set.
- `pull` (bool) - If true, the configured image will be pulled using `docker pull` prior
to use. Otherwise, it is assumed the image already exists and can be
used. This defaults to true if not set.
- `run_command` ([]string) - An array of arguments to pass to docker run in order to run the
container. By default this is set to ["-d", "-i", "-t",
"--entrypoint=/bin/sh", "--", "{{.Image}}"] if you are using a linux
container, and ["-d", "-i", "-t", "--entrypoint=powershell", "--",
"{{.Image}}"] if you are running a windows container. {{.Image}} is a
template variable that corresponds to the image template option. Passing
the entrypoint option this way will make it the default entrypoint of
the resulting image, so running docker run -it --rm will start the
docker image from the /bin/sh shell interpreter; you could run a script
or another shell by running docker run -it --rm -c /bin/bash. If your
docker image embeds a binary intended to be run often, you should
consider changing the default entrypoint to point to it.
- `volumes` (map[string]string) - A mapping of additional volumes to mount into this container. The key of
the object is the host path, the value is the container path.
- `fix_upload_owner` (bool) - If true, files uploaded to the container will be owned by the user the
container is running as. If false, the owner will depend on the version
of docker installed in the system. Defaults to true.
- `windows_container` (bool) - If "true", tells Packer that you are building a Windows container
running on a windows host. This is necessary for building Windows
containers, because our normal docker bindings do not work for them.
- `login` (bool) - This is used to login to dockerhub to pull a private base container. For
pushing to dockerhub, see the docker post-processors
- `login_password` (string) - The password to use to authenticate to login.
- `login_server` (string) - The server address to login to.
- `login_username` (string) - The username to use to authenticate to login.
- `ecr_login` (bool) - Defaults to false. If true, the builder will login in order to pull the
image from Amazon EC2 Container Registry (ECR). The builder only logs in
for the duration of the pull. If true login_server is required and
login, login_username, and login_password will be ignored. For more
information see the section on ECR.

View File

@ -1,15 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/docker/config.go; DO NOT EDIT MANUALLY -->
- `commit` (bool) - If true, the container will be committed to an image rather than exported.
- `discard` (bool) - Throw away the container when the build is complete. This is useful for
the [artifice
post-processor](https://www.packer.io/docs/post-processors/artifice.html).
- `export_path` (string) - The path where the final container will be exported as a tar file.
- `image` (string) - The base image for the Docker container that will be started. This image
will be pulled from the Docker registry if it doesn't already exist.
- `message` (string) - Set a message for the commit.

View File

@ -1,140 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/googlecompute/config.go; DO NOT EDIT MANUALLY -->
- `account_file` (string) - The JSON file containing your account credentials. Not required if you
run Packer on a GCE instance with a service account. Instructions for
creating the file or using service accounts are above.
- `accelerator_type` (string) - Full or partial URL of the guest accelerator type. GPU accelerators can
only be used with `"on_host_maintenance": "TERMINATE"` option set.
Example:
`"projects/project_id/zones/europe-west1-b/acceleratorTypes/nvidia-tesla-k80"`
- `accelerator_count` (int64) - Number of guest accelerator cards to add to the launched instance.
- `address` (string) - The name of a pre-allocated static external IP address. Note, must be
the name and not the actual IP address.
- `disable_default_service_account` (bool) - If true, the default service account will not be used if
service_account_email is not specified. Set this value to true and omit
service_account_email to provision a VM with no service account.
- `disk_name` (string) - The name of the disk, if unset the instance name will be used.
- `disk_size` (int64) - The size of the disk in GB. This defaults to 10, which is 10GB.
- `disk_type` (string) - Type of disk used to back your instance, like pd-ssd or pd-standard.
Defaults to pd-standard.
- `image_name` (string) - The unique name of the resulting image. Defaults to
"packer-{{timestamp}}".
- `image_description` (string) - The description of the resulting image.
- `image_encryption_key` (\*CustomerEncryptionKey) - Image encryption key to apply to the created image. Possible values:
* kmsKeyName - The name of the encryption key that is stored in Google Cloud KMS.
* RawKey: - A 256-bit customer-supplied encryption key, encodes in RFC 4648 base64.
example:
```json
{
"kmsKeyName": "projects/${project}/locations/${region}/keyRings/computeEngine/cryptoKeys/computeEngine/cryptoKeyVersions/4"
}
```
- `image_family` (string) - The name of the image family to which the resulting image belongs. You
can create disks by specifying an image family instead of a specific
image name. The image family always returns its latest image that is not
deprecated.
- `image_labels` (map[string]string) - Key/value pair labels to apply to the created image.
- `image_licenses` ([]string) - Licenses to apply to the created image.
- `instance_name` (string) - A name to give the launched instance. Beware that this must be unique.
Defaults to "packer-{{uuid}}".
- `labels` (map[string]string) - Key/value pair labels to apply to the launched instance.
- `machine_type` (string) - The machine type. Defaults to "n1-standard-1".
- `metadata` (map[string]string) - Metadata applied to the launched instance.
- `metadata_files` (map[string]string) - Metadata applied to the launched instance. Values are files.
- `min_cpu_platform` (string) - A Minimum CPU Platform for VM Instance. Availability and default CPU
platforms vary across zones, based on the hardware available in each GCP
zone.
[Details](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
- `network` (string) - The Google Compute network id or URL to use for the launched instance.
Defaults to "default". If the value is not a URL, it will be
interpolated to
projects/((network_project_id))/global/networks/((network)). This value
is not required if a subnet is specified.
- `network_project_id` (string) - The project ID for the network and subnetwork to use for launched
instance. Defaults to project_id.
- `omit_external_ip` (bool) - If true, the instance will not have an external IP. use_internal_ip must
be true if this property is true.
- `on_host_maintenance` (string) - Sets Host Maintenance Option. Valid choices are `MIGRATE` and
`TERMINATE`. Please see [GCE Instance Scheduling
Options](https://cloud.google.com/compute/docs/instances/setting-instance-scheduling-options),
as not all machine\_types support `MIGRATE` (i.e. machines with GPUs).
If preemptible is true this can only be `TERMINATE`. If preemptible is
false, it defaults to `MIGRATE`
- `preemptible` (bool) - If true, launch a preemptible instance.
- `state_timeout` (duration string | ex: "1h5m2s") - The time to wait for instance state changes. Defaults to "5m".
- `region` (string) - The region in which to launch the instance. Defaults to the region
hosting the specified zone.
- `scopes` ([]string) - The service account scopes for launched
instance. Defaults to:
```json
[
"https://www.googleapis.com/auth/userinfo.email",
"https://www.googleapis.com/auth/compute",
"https://www.googleapis.com/auth/devstorage.full_control"
]
```
- `service_account_email` (string) - The service account to be used for launched instance. Defaults to the
project's default service account unless disable_default_service_account
is true.
- `source_image_project_id` ([]string) - A list of project IDs to search for the source image. Packer will search the first
project ID in the list first, and fall back to the next in the list, until it finds the source image.
- `startup_script_file` (string) - The path to a startup script to run on the VM from which the image will
be made.
- `subnetwork` (string) - The Google Compute subnetwork id or URL to use for the launched
instance. Only required if the network has been created with custom
subnetting. Note, the region of the subnetwork must match the region or
zone in which the VM is launched. If the value is not a URL, it will be
interpolated to
projects/((network_project_id))/regions/((region))/subnetworks/((subnetwork))
- `tags` ([]string) - Assign network tags to apply firewall rules to VM instance.
- `use_internal_ip` (bool) - If true, use the instance's internal IP instead of its external IP
during building.
- `vault_gcp_oauth_engine` (string) - Can be set instead of account_file. If set, this builder will use
HashiCorp Vault to generate an Oauth token for authenticating against
Google's cloud. The value should be the path of the token generator
within vault.
For information on how to configure your Vault + GCP engine to produce
Oauth tokens, see https://www.vaultproject.io/docs/auth/gcp.html
You must have the environment variables VAULT_ADDR and VAULT_TOKEN set,
along with any other relevant variables for accessing your vault
instance. For more information, see the Vault docs:
https://www.vaultproject.io/docs/commands/#environment-variables
Example:`"vault_gcp_oauth_engine": "gcp/token/my-project-editor",`

View File

@ -1,16 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/googlecompute/config.go; DO NOT EDIT MANUALLY -->
- `project_id` (string) - The project ID that will be used to launch instances and store images.
- `source_image` (string) - The source image to use to create the new image from. You can also
specify source_image_family instead. If both source_image and
source_image_family are specified, source_image takes precedence.
Example: "debian-8-jessie-v20161027"
- `source_image_family` (string) - The source image family to use to create the new image from. The image
family always returns its latest image that is not deprecated. Example:
"debian-8".
- `zone` (string) - The zone in which to launch the instance used to create the image.
Example: "us-central1-a"

View File

@ -1,4 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/googlecompute/config.go; DO NOT EDIT MANUALLY -->
Config is the configuration structure for the GCE builder. It stores
both the publicly settable state as well as the privately generated
state of the config object.

View File

@ -1,82 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/hyperone/config.go; DO NOT EDIT MANUALLY -->
- `api_url` (string) - Custom API endpoint URL, compatible with HyperOne.
It can also be specified via environment variable HYPERONE_API_URL.
- `token_login` (string) - Login (an e-mail) on HyperOne platform. Set this
if you want to fetch the token by SSH authentication.
- `state_timeout` (duration string | ex: "1h5m2s") - Timeout for waiting on the API to complete
a request. Defaults to 5m.
- `image_name` (string) - The name of the resulting image. Defaults to
"packer-{{timestamp}}"
(see configuration templates for more info).
- `image_description` (string) - The description of the resulting image.
- `image_tags` (map[string]string) - Key/value pair tags to add to the created image.
- `image_tag` ([]{name string, value string}) - Same as [`image_tags`](#image_tags) but defined as a singular repeatable
block containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.
- `image_service` (string) - The service of the resulting image.
- `vm_name` (string) - The name of the created server.
- `vm_tags` (map[string]string) - Key/value pair tags to
add to the created server.
- `vm_tag` ([]{name string, value string}) - Same as [`vm_tags`](#vm_tags) but defined as a singular repeatable block
containing a `name` and a `value` field. In HCL2 mode the
[`dynamic_block`](https://packer.io/docs/configuration/from-1.5/expressions.html#dynamic-blocks)
will allow you to create those programatically.
- `disk_name` (string) - The name of the created disk.
- `disk_type` (string) - The type of the created disk. Defaults to ssd.
- `network` (string) - The ID of the network to attach to the created server.
- `private_ip` (string) - The ID of the private IP within chosen network
that should be assigned to the created server.
- `public_ip` (string) - The ID of the public IP that should be assigned to
the created server. If network is chosen, the public IP will be associated
with server's private IP.
- `public_netadp_service` (string) - Custom service of public network adapter.
Can be useful when using custom api_url. Defaults to public.
- `chroot_disk` (bool) - Chroot Disk
- `chroot_disk_size` (float32) - Chroot Disk Size
- `chroot_disk_type` (string) - Chroot Disk Type
- `chroot_mount_path` (string) - Chroot Mount Path
- `chroot_mounts` ([][]string) - Chroot Mounts
- `chroot_copy_files` ([]string) - Chroot Copy Files
- `chroot_command_wrapper` (string) - How to run shell commands. This defaults to {{.Command}}. This may be
useful to set if you want to set environmental variables or perhaps run
it with sudo or so on. This is a configuration template where the
.Command variable is replaced with the command to be run. Defaults to
{{.Command}}.
- `mount_options` ([]string) - Mount Options
- `mount_partition` (string) - Mount Partition
- `pre_mount_commands` ([]string) - A series of commands to execute after attaching the root volume and
before mounting the chroot. This is not required unless using
from_scratch. If so, this should include any partitioning and filesystem
creation commands. The path to the device is provided by {{.Device}}.
- `post_mount_commands` ([]string) - As pre_mount_commands, but the commands are executed after mounting the
root device and before the extra mount and copy steps. The device and
mount path are provided by {{.Device}} and {{.MountPath}}.
- `ssh_keys` ([]string) - List of SSH keys by name or id to be added
to the server on launch.
- `user_data` (string) - User data to launch with the server. Packer will not
automatically wait for a user script to finish before shutting down the
instance, this must be handled in a provisioner.

View File

@ -1,16 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/hyperone/config.go; DO NOT EDIT MANUALLY -->
- `token` (string) - The authentication token used to access your account.
This can be either a session token or a service account token.
If not defined, the builder will attempt to find it in the following order:
- `project` (string) - The id or name of the project. This field is required
only if using session tokens. It should be skipped when using service
account authentication.
- `source_image` (string) - ID or name of the image to launch server from.
- `vm_type` (string) - ID or name of the type this server should be created with.
- `disk_size` (float32) - Size of the created disk, in GiB.

View File

@ -1,127 +0,0 @@
<!-- Code generated from the comments of the CommonConfig struct in builder/hyperv/common/config.go; DO NOT EDIT MANUALLY -->
- `disk_block_size` (uint) - The block size of the VHD to be created.
Recommended disk block size for Linux hyper-v guests is 1 MiB. This
defaults to "32" MiB.
- `memory` (uint) - The amount, in megabytes, of RAM to assign to the
VM. By default, this is 1 GB.
- `secondary_iso_images` ([]string) - A list of ISO paths to
attach to a VM when it is booted. This is most useful for unattended
Windows installs, which look for an Autounattend.xml file on removable
media. By default, no secondary ISO will be attached.
- `disk_additional_size` ([]uint) - The size or sizes of any
additional hard disks for the VM in megabytes. If this is not specified
then the VM will only contain a primary hard disk. Additional drives
will be attached to the SCSI interface only. The builder uses
expandable rather than fixed-size virtual hard disks, so the actual
file representing the disk will not use the full size unless it is
full.
- `guest_additions_mode` (string) - If set to attach then attach and
mount the ISO image specified in guest_additions_path. If set to
none then guest additions are not attached and mounted; This is the
default.
- `guest_additions_path` (string) - The path to the ISO image for guest
additions.
- `vm_name` (string) - This is the name of the new virtual machine,
without the file extension. By default this is "packer-BUILDNAME",
where "BUILDNAME" is the name of the build.
- `switch_name` (string) - The name of the switch to connect the virtual
machine to. By default, leaving this value unset will cause Packer to
try and determine the switch to use by looking for an external switch
that is up and running.
- `switch_vlan_id` (string) - This is the VLAN of the virtual switch's
network card. By default none is set. If none is set then a VLAN is not
set on the switch's network card. If this value is set it should match
the VLAN specified in by vlan_id.
- `mac_address` (string) - This allows a specific MAC address to be used on
the default virtual network card. The MAC address must be a string with
no delimiters, for example "0000deadbeef".
- `vlan_id` (string) - This is the VLAN of the virtual machine's network
card for the new virtual machine. By default none is set. If none is set
then VLANs are not set on the virtual machine's network card.
- `cpus` (uint) - The number of CPUs the virtual machine should use. If
this isn't specified, the default is 1 CPU.
- `generation` (uint) - The Hyper-V generation for the virtual machine. By
default, this is 1. Generation 2 Hyper-V virtual machines do not support
floppy drives. In this scenario use secondary_iso_images instead. Hard
drives and DVD drives will also be SCSI and not IDE.
- `enable_mac_spoofing` (bool) - If true enable MAC address spoofing
for the virtual machine. This defaults to false.
- `enable_dynamic_memory` (bool) - If true enable dynamic memory for
the virtual machine. This defaults to false.
- `enable_secure_boot` (bool) - If true enable secure boot for the
virtual machine. This defaults to false. See secure_boot_template
below for additional settings.
- `secure_boot_template` (string) - The secure boot template to be
configured. Valid values are "MicrosoftWindows" (Windows) or
"MicrosoftUEFICertificateAuthority" (Linux). This only takes effect if
enable_secure_boot is set to "true". This defaults to "MicrosoftWindows".
- `enable_virtualization_extensions` (bool) - If true enable
virtualization extensions for the virtual machine. This defaults to
false. For nested virtualization you need to enable MAC spoofing,
disable dynamic memory and have at least 4GB of RAM assigned to the
virtual machine.
- `temp_path` (string) - The location under which Packer will create a directory to house all the
VM files and folders during the build. By default `%TEMP%` is used
which, for most systems, will evaluate to
`%USERPROFILE%/AppData/Local/Temp`.
The build directory housed under `temp_path` will have a name similar to
`packerhv1234567`. The seven digit number at the end of the name is
automatically generated by Packer to ensure the directory name is
unique.
- `configuration_version` (string) - This allows you to set the vm version when calling New-VM to generate
the vm.
- `keep_registered` (bool) - If "true", Packer will not delete the VM from
The Hyper-V manager.
- `communicator` (string) - Communicator
- `skip_compaction` (bool) - If true skip compacting the hard disk for
the virtual machine when exporting. This defaults to false.
- `skip_export` (bool) - If true Packer will skip the export of the VM.
If you are interested only in the VHD/VHDX files, you can enable this
option. The resulting VHD/VHDX file will be output to
<output_directory>/Virtual Hard Disks. By default this option is false
and Packer will export the VM to output_directory.
- `headless` (bool) - Packer defaults to building Hyper-V virtual
machines by launching a GUI that shows the console of the machine being
built. When this value is set to true, the machine will start without a
console.
- `first_boot_device` (string) - When configured, determines the device or device type that is given preferential
treatment when choosing a boot device.
For Generation 1:
- `IDE`
- `CD` *or* `DVD`
- `Floppy`
- `NET`
For Generation 2:
- `IDE:x:y`
- `SCSI:x:y`
- `CD` *or* `DVD`
- `NET`

View File

@ -1,10 +0,0 @@
<!-- Code generated from the comments of the OutputConfig struct in builder/hyperv/common/output_config.go; DO NOT EDIT MANUALLY -->
- `output_directory` (string) - This setting specifies the directory that
artifacts from the build, such as the virtual machine files and disks,
will be output to. The path to the directory may be relative or
absolute. If relative, the path is relative to the working directory
packer is executed from. This directory must not exist or, if
created, must be empty prior to running the builder. By default this is
"output-BUILDNAME" where "BUILDNAME" is the name of the build.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the Builder struct in builder/hyperv/iso/builder.go; DO NOT EDIT MANUALLY -->
Builder implements packer.Builder and builds the actual Hyperv
images.

View File

@ -1,23 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/hyperv/iso/builder.go; DO NOT EDIT MANUALLY -->
- `disk_size` (uint) - The size, in megabytes, of the hard disk to create
for the VM. By default, this is 40 GB.
- `use_legacy_network_adapter` (bool) - If true use a legacy network adapter as the NIC.
This defaults to false. A legacy network adapter is fully emulated NIC, and is thus
supported by various exotic operating systems, but this emulation requires
additional overhead and should only be used if absolutely necessary.
- `differencing_disk` (bool) - If true enables differencing disks. Only
the changes will be written to the new disk. This is especially useful if
your source is a VHD/VHDX. This defaults to false.
- `use_fixed_vhd_format` (bool) - If true, creates the boot disk on the
virtual machine as a fixed VHD format disk. The default is false, which
creates a dynamic VHDX format disk. This option requires setting
generation to 1, skip_compaction to true, and
differencing_disk to false. Additionally, any value entered for
disk_block_size will be ignored. The most likely use case for this
option is outputing a disk that is in the format required for upload to
Azure.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the Builder struct in builder/hyperv/vmcx/builder.go; DO NOT EDIT MANUALLY -->
Builder implements packer.Builder and builds the actual Hyperv
images.

View File

@ -1,24 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/hyperv/vmcx/builder.go; DO NOT EDIT MANUALLY -->
- `clone_from_vmcx_path` (string) - This is the path to a directory containing an exported virtual machine.
- `clone_from_vm_name` (string) - This is the name of the virtual machine to clone from.
- `clone_from_snapshot_name` (string) - The name of a snapshot in the
source machine to use as a starting point for the clone. If the value
given is an empty string, the last snapshot present in the source will
be chosen as the starting point for the new VM.
- `clone_all_snapshots` (bool) - If set to true all snapshots
present in the source machine will be copied when the machine is
cloned. The final result of the build will be an exported virtual
machine that contains all the snapshots of the parent.
- `differencing_disk` (bool) - If true enables differencing disks. Only
the changes will be written to the new disk. This is especially useful if
your source is a VHD/VHDX. This defaults to false.
- `copy_in_compare` (bool) - When cloning a vm to build from, we run a powershell
Compare-VM command, which, depending on your version of Windows, may need
the "Copy" flag to be set to true or false. Defaults to "false". Command:

View File

@ -1,41 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/lxc/config.go; DO NOT EDIT MANUALLY -->
- `output_directory` (string) - The directory in which to save the exported
tar.gz. Defaults to output-<BuildName> in the current directory.
- `container_name` (string) - The name of the LXC container. Usually stored
in /var/lib/lxc/containers/<container_name>. Defaults to
packer-<BuildName>.
- `command_wrapper` (string) - Allows you to specify a wrapper command, such
as ssh so you can execute packer builds on a remote host. Defaults to
`{{.Command}}`; i.e. no wrapper.
- `init_timeout` (duration string | ex: "1h5m2s") - The timeout in seconds to wait for the the
container to start. Defaults to 20 seconds.
- `create_options` ([]string) - Options to pass to lxc-create. For
instance, you can specify a custom LXC container configuration file with
["-f", "/path/to/lxc.conf"]. Defaults to []. See man 1 lxc-create for
available options.
- `start_options` ([]string) - Options to pass to lxc-start. For
instance, you can override parameters from the LXC container configuration
file via ["--define", "KEY=VALUE"]. Defaults to []. See
man 1 lxc-start for available options.
- `attach_options` ([]string) - Options to pass to lxc-attach. For
instance, you can prevent the container from inheriting the host machine's
environment by specifying ["--clear-env"]. Defaults to []. See
man 1 lxc-attach for available options.
- `template_parameters` ([]string) - Options to pass to the given
lxc-template command, usually located in
/usr/share/lxc/templates/lxc-<template_name>. Note: This gets passed as
ARGV to the template command. Ensure you have an array of strings, as a
single string with spaces probably won't work. Defaults to [].
- `target_runlevel` (int) - The minimum run level to wait for the
container to reach. Note some distributions (Ubuntu) simulate run levels
and may report 5 rather than 3.

View File

@ -1,9 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/lxc/config.go; DO NOT EDIT MANUALLY -->
- `config_file` (string) - The path to the lxc configuration file.
- `template_name` (string) - The LXC template name to use.
- `template_environment_vars` ([]string) - Environmental variables to
use to build the template with.

View File

@ -1,23 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/lxd/config.go; DO NOT EDIT MANUALLY -->
- `output_image` (string) - The name of the output artifact. Defaults to
name.
- `container_name` (string) - Container Name
- `command_wrapper` (string) - Lets you prefix all builder commands, such as
with ssh for a remote build host. Defaults to "{{.Command}}"; i.e. no
wrapper.
- `profile` (string) - Profile
- `init_sleep` (string) - The number of seconds to sleep between launching
the LXD instance and provisioning it; defaults to 3 seconds.
- `publish_properties` (map[string]string) - Pass key values to the publish
step to be set as properties on the output image. This is most helpful to
set the description, but can be used to set anything needed. See
https://stgraber.org/2016/03/30/lxd-2-0-image-management-512/
for more properties.
- `launch_config` (map[string]string) - List of key/value pairs you wish to
pass to lxc launch via --config. Defaults to empty.

View File

@ -1,6 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/lxd/config.go; DO NOT EDIT MANUALLY -->
- `image` (string) - The source image to use when creating the build
container. This can be a (local or remote) image (name or fingerprint).
E.G. my-base-image, ubuntu-daily:x, 08fababf6f27, ...

View File

@ -1,32 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/ncloud/config.go; DO NOT EDIT MANUALLY -->
- `access_key` (string) - Access Key
- `secret_key` (string) - Secret Key
- `member_server_image_no` (string) - Previous image code. If there is an
image previously created, it can be used to create a new image.
(server_image_product_code is required if not specified)
- `server_image_name` (string) - Name of an image to create.
- `server_image_description` (string) - Description of an image to create.
- `user_data` (string) - User data to apply when launching the instance. Note
that you need to be careful about escaping characters due to the templates
being JSON. It is often more convenient to use user_data_file, instead.
Packer will not automatically wait for a user script to finish before
shutting down the instance this must be handled in a provisioner.
- `user_data_file` (string) - Path to a file that will be used for the user
data when launching the instance.
- `block_storage_size` (int) - You can add block storage ranging from 10
GB to 2000 GB, in increments of 10 GB.
- `region` (string) - Name of the region where you want to create an image.
(default: Korea)
- `access_control_group_configuration_no` (string) - This is used to allow
winrm access when you create a Windows server. An ACG that specifies an
access source (0.0.0.0/0) and allowed port (5985) must be created in
advance.

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/ncloud/config.go; DO NOT EDIT MANUALLY -->
- `server_image_product_code` (string) - Product code of an image to create.
(member_server_image_no is required if not specified)
- `server_product_code` (string) - Product (spec) code to create.

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/ncloud/config.go; DO NOT EDIT MANUALLY -->
Config is structure to use packer builder plugin for Naver Cloud Platform

View File

@ -1,55 +0,0 @@
<!-- Code generated from the comments of the AccessConfig struct in builder/openstack/access_config.go; DO NOT EDIT MANUALLY -->
- `user_id` (string) - Sets username
- `tenant_id` (string) - The tenant ID or name to boot the instance into. Some OpenStack
installations require this. If not specified, Packer will use the
environment variable OS_TENANT_NAME or OS_TENANT_ID, if set. Tenant is
also called Project in later versions of OpenStack.
- `tenant_name` (string) - Tenant Name
- `domain_id` (string) - Domain ID
- `domain_name` (string) - The Domain name or ID you are authenticating with. OpenStack
installations require this if identity v3 is used. Packer will use the
environment variable OS_DOMAIN_NAME or OS_DOMAIN_ID, if set.
- `insecure` (bool) - Whether or not the connection to OpenStack can be done over an insecure
connection. By default this is false.
- `region` (string) - The name of the region, such as "DFW", in which to launch the server to
create the image. If not specified, Packer will use the environment
variable OS_REGION_NAME, if set.
- `endpoint_type` (string) - The endpoint type to use. Can be any of "internal", "internalURL",
"admin", "adminURL", "public", and "publicURL". By default this is
"public".
- `cacert` (string) - Custom CA certificate file path. If omitted the OS_CACERT environment
variable can be used.
- `cert` (string) - Client certificate file path for SSL client authentication. If omitted
the OS_CERT environment variable can be used.
- `key` (string) - Client private key file path for SSL client authentication. If omitted
the OS_KEY environment variable can be used.
- `token` (string) - the token (id) to use with token based authorization. Packer will use
the environment variable OS_TOKEN, if set.
- `application_credential_name` (string) - The application credential name to use with application credential based
authorization. Packer will use the environment variable
OS_APPLICATION_CREDENTIAL_NAME, if set.
- `application_credential_id` (string) - The application credential id to use with application credential based
authorization. Packer will use the environment variable
OS_APPLICATION_CREDENTIAL_ID, if set.
- `application_credential_secret` (string) - The application credential secret to use with application credential
based authorization. Packer will use the environment variable
OS_APPLICATION_CREDENTIAL_SECRET, if set.
- `cloud` (string) - An entry in a `clouds.yaml` file. See the OpenStack os-client-config
[documentation](https://docs.openstack.org/os-client-config/latest/user/configuration.html)
for more information about `clouds.yaml` files. If omitted, the
`OS_CLOUD` environment variable is used.

View File

@ -1,16 +0,0 @@
<!-- Code generated from the comments of the AccessConfig struct in builder/openstack/access_config.go; DO NOT EDIT MANUALLY -->
- `username` (string) - The username or id used to connect to the OpenStack service. If not
specified, Packer will use the environment variable OS_USERNAME or
OS_USERID, if set. This is not required if using access token or
application credential instead of password, or if using cloud.yaml.
- `password` (string) - The password used to connect to the OpenStack service. If not specified,
Packer will use the environment variables OS_PASSWORD, if set. This is
not required if using access token or application credential instead of
password, or if using cloud.yaml.
- `identity_endpoint` (string) - The URL to the OpenStack Identity service. If not specified, Packer will
use the environment variables OS_AUTH_URL, if set. This is not required
if using cloud.yaml.

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the AccessConfig struct in builder/openstack/access_config.go; DO NOT EDIT MANUALLY -->
AccessConfig is for common configuration related to openstack access

View File

@ -1,21 +0,0 @@
<!-- Code generated from the comments of the ImageConfig struct in builder/openstack/image_config.go; DO NOT EDIT MANUALLY -->
- `metadata` (map[string]string) - Glance metadata that will be applied to the image.
- `image_visibility` (imageservice.ImageVisibility) - One of "public", "private", "shared", or "community".
- `image_members` ([]string) - List of members to add to the image after creation. An image member is
usually a project (also called the "tenant") with whom the image is
shared.
- `image_auto_accept_members` (bool) - When true, perform the image accept so the members can see the image in their
project. This requires a user with priveleges both in the build project and
in the members provided. Defaults to false.
- `image_disk_format` (string) - Disk format of the resulting image. This option works if
use_blockstorage_volume is true.
- `image_tags` ([]string) - List of tags to add to the image after creation.
- `image_min_disk` (int) - Minimum disk size needed to boot image, in gigabytes.

View File

@ -1,4 +0,0 @@
<!-- Code generated from the comments of the ImageConfig struct in builder/openstack/image_config.go; DO NOT EDIT MANUALLY -->
- `image_name` (string) - The name of the resulting image.

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the ImageConfig struct in builder/openstack/image_config.go; DO NOT EDIT MANUALLY -->
ImageConfig is for common configuration related to creating Images.

View File

@ -1,9 +0,0 @@
<!-- Code generated from the comments of the ImageFilter struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
- `filters` (ImageFilterOptions) - filters used to select a source_image. NOTE: This will fail unless
exactly one image is returned, or most_recent is set to true. Of the
filters described in ImageService, the following are valid:
- `most_recent` (bool) - Selects the newest created image when true. This is most useful for
selecting a daily distro build.

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the ImageFilterOptions struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
- `name` (string) - Name
- `owner` (string) - Owner
- `tags` ([]string) - Tags
- `visibility` (string) - Visibility
- `properties` (map[string]string) - Properties

View File

@ -1,94 +0,0 @@
<!-- Code generated from the comments of the RunConfig struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
- `ssh_interface` (string) - The type of interface to connect via SSH. Values useful for Rackspace
are "public" or "private", and the default behavior is to connect via
whichever is returned first from the OpenStack API.
- `ssh_ip_version` (string) - The IP version to use for SSH connections, valid values are `4` and `6`.
Useful on dual stacked instances where the default behavior is to
connect via whichever IP address is returned first from the OpenStack
API.
- `availability_zone` (string) - The availability zone to launch the server in. If this isn't specified,
the default enforced by your OpenStack cluster will be used. This may be
required for some OpenStack clusters.
- `rackconnect_wait` (bool) - For rackspace, whether or not to wait for Rackconnect to assign the
machine an IP address before connecting via SSH. Defaults to false.
- `floating_ip_network` (string) - The ID or name of an external network that can be used for creation of a
new floating IP.
- `instance_floating_ip_net` (string) - The ID of the network to which the instance is attached and which should
be used to associate with the floating IP. This provides control over
the floating ip association on multi-homed instances. The association
otherwise depends on a first-returned-interface policy which could fail
if the network to which it is connected is unreachable from the floating
IP network.
- `floating_ip` (string) - A specific floating IP to assign to this instance.
- `reuse_ips` (bool) - Whether or not to attempt to reuse existing unassigned floating ips in
the project before allocating a new one. Note that it is not possible to
safely do this concurrently, so if you are running multiple openstack
builds concurrently, or if other processes are assigning and using
floating IPs in the same openstack project while packer is running, you
should not set this to true. Defaults to false.
- `security_groups` ([]string) - A list of security groups by name to add to this instance.
- `networks` ([]string) - A list of networks by UUID to attach to this instance.
- `ports` ([]string) - A list of ports by UUID to attach to this instance.
- `network_discovery_cidrs` ([]string) - A list of network CIDRs to discover the network to attach to this instance.
The first network whose subnet is contained within any of the given CIDRs
is used. Ignored if either of the above two options are provided.
- `user_data` (string) - User data to apply when launching the instance. Note that you need to be
careful about escaping characters due to the templates being JSON. It is
often more convenient to use user_data_file, instead. Packer will not
automatically wait for a user script to finish before shutting down the
instance this must be handled in a provisioner.
- `user_data_file` (string) - Path to a file that will be used for the user data when launching the
instance.
- `instance_name` (string) - Name that is applied to the server instance created by Packer. If this
isn't specified, the default is same as image_name.
- `instance_metadata` (map[string]string) - Metadata that is applied to the server instance created by Packer. Also
called server properties in some documentation. The strings have a max
size of 255 bytes each.
- `force_delete` (bool) - Whether to force the OpenStack instance to be forcefully deleted. This
is useful for environments that have reclaim / soft deletion enabled. By
default this is false.
- `config_drive` (bool) - Whether or not nova should use ConfigDrive for cloud-init metadata.
- `floating_ip_pool` (string) - Deprecated use floating_ip_network instead.
- `use_blockstorage_volume` (bool) - Use Block Storage service volume for the instance root volume instead of
Compute service local volume (default).
- `volume_name` (string) - Name of the Block Storage service volume. If this isn't specified,
random string will be used.
- `volume_type` (string) - Type of the Block Storage service volume. If this isn't specified, the
default enforced by your OpenStack cluster will be used.
- `volume_size` (int) - Size of the Block Storage service volume in GB. If this isn't specified,
it is set to source image min disk value (if set) or calculated from the
source image bytes size. Note that in some cases this needs to be
specified, if use_blockstorage_volume is true.
- `volume_availability_zone` (string) - Availability zone of the Block Storage service volume. If omitted,
Compute instance availability zone will be used. If both of Compute
instance and Block Storage volume availability zones aren't specified,
the default enforced by your OpenStack cluster will be used.
- `openstack_provider` (string) - Not really used, but here for BC
- `use_floating_ip` (bool) - *Deprecated* use `floating_ip` or `floating_ip_pool` instead.

View File

@ -1,64 +0,0 @@
<!-- Code generated from the comments of the RunConfig struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
- `source_image` (string) - The ID or full URL to the base image to use. This is the image that will
be used to launch a new server and provision it. Unless you specify
completely custom SSH settings, the source image must have cloud-init
installed so that the keypair gets assigned properly.
- `source_image_name` (string) - The name of the base image to use. This is an alternative way of
providing source_image and only either of them can be specified.
- `source_image_filter` (ImageFilter) - Filters used to populate filter options. Example:
```json
{
"source_image_filter": {
"filters": {
"name": "ubuntu-16.04",
"visibility": "protected",
"owner": "d1a588cf4b0743344508dc145649372d1",
"tags": ["prod", "ready"],
"properties": {
"os_distro": "ubuntu"
}
},
"most_recent": true
}
}
```
This selects the most recent production Ubuntu 16.04 shared to you by
the given owner. NOTE: This will fail unless *exactly* one image is
returned, or `most_recent` is set to true. In the example of multiple
returned images, `most_recent` will cause this to succeed by selecting
the newest image of the returned images.
- `filters` (map of strings) - filters used to select a
`source_image`.
NOTE: This will fail unless *exactly* one image is returned, or
`most_recent` is set to true. Of the filters described in
[ImageService](https://developer.openstack.org/api-ref/image/v2/), the
following are valid:
- name (string)
- owner (string)
- tags (array of strings)
- visibility (string)
- properties (map of strings to strings) (fields that can be set
with `openstack image set --property key=value`)
- `most_recent` (boolean) - Selects the newest created image when
true.
This is most useful for selecting a daily distro build.
You may set use this in place of `source_image` If `source_image_filter`
is provided alongside `source_image`, the `source_image` will override
the filter. The filter will not be used in this case.
- `flavor` (string) - The ID, name, or full URL for the desired flavor for the server to be
created.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the RunConfig struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
RunConfig contains configuration for running an instance from a source image
and details on how to access that launched image.

View File

@ -1,14 +0,0 @@
<!-- Code generated from the comments of the HWConfig struct in builder/parallels/common/hw_config.go; DO NOT EDIT MANUALLY -->
- `cpus` (int) - The number of cpus to use for building the VM.
Defaults to 1.
- `memory` (int) - The amount of memory to use for building the VM in
megabytes. Defaults to 512 megabytes.
- `sound` (bool) - Specifies whether to enable the sound device when
building the VM. Defaults to false.
- `usb` (bool) - Specifies whether to enable the USB bus when building
the VM. Defaults to false.

View File

@ -1,9 +0,0 @@
<!-- Code generated from the comments of the OutputConfig struct in builder/parallels/common/output_config.go; DO NOT EDIT MANUALLY -->
- `output_directory` (string) - This is the path to the directory where the
resulting virtual machine will be created. This may be relative or absolute.
If relative, the path is relative to the working directory when packer
is executed. This directory must not exist or be empty prior to running
the builder. By default this is "output-BUILDNAME" where "BUILDNAME" is the
name of the build.

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the OutputConfig struct in builder/parallels/common/output_config.go; DO NOT EDIT MANUALLY -->
OutputConfig contains the configuration for builder's output.

View File

@ -1,13 +0,0 @@
<!-- Code generated from the comments of the PrlctlConfig struct in builder/parallels/common/prlctl_config.go; DO NOT EDIT MANUALLY -->
- `prlctl` ([][]string) - Custom prlctl commands to execute
in order to further customize the virtual machine being created. The value
of this is an array of commands to execute. The commands are executed in the
order defined in the template. For each command, the command is defined
itself as an array of strings, where each string represents a single
argument on the command-line to prlctl (but excluding prlctl itself).
Each arg is treated as a configuration
template, where the Name
variable is replaced with the VM name. More details on how to use prlctl
are below.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the PrlctlConfig struct in builder/parallels/common/prlctl_config.go; DO NOT EDIT MANUALLY -->
PrlctlConfig contains the configuration for running "prlctl" commands
before the VM start.

View File

@ -1,6 +0,0 @@
<!-- Code generated from the comments of the PrlctlPostConfig struct in builder/parallels/common/prlctl_post_config.go; DO NOT EDIT MANUALLY -->
- `prlctl_post` ([][]string) - Identical to prlctl, except
that it is run after the virtual machine is shutdown, and before the virtual
machine is exported.

View File

@ -1,3 +0,0 @@
<!-- Code generated from the comments of the PrlctlPostConfig struct in builder/parallels/common/prlctl_post_config.go; DO NOT EDIT MANUALLY -->
PrlctlPostConfig contains the configuration for running "prlctl" commands
in the end of artifact build.

View File

@ -1,8 +0,0 @@
<!-- Code generated from the comments of the PrlctlVersionConfig struct in builder/parallels/common/prlctl_version_config.go; DO NOT EDIT MANUALLY -->
- `prlctl_version_file` (string) - The path within the virtual machine to
upload a file that contains the prlctl version that was used to create
the machine. This information can be useful for provisioning. By default
this is ".prlctl_version", which will generally upload it into the
home directory.

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the PrlctlVersionConfig struct in builder/parallels/common/prlctl_version_config.go; DO NOT EDIT MANUALLY -->
PrlctlVersionConfig contains the configuration for `prlctl` version.

View File

@ -1,17 +0,0 @@
<!-- Code generated from the comments of the ToolsConfig struct in builder/parallels/common/tools_config.go; DO NOT EDIT MANUALLY -->
- `parallels_tools_guest_path` (string) - The path in the virtual machine to
upload Parallels Tools. This only takes effect if parallels_tools_mode
is "upload". This is a configuration
template that has a single
valid variable: Flavor, which will be the value of
parallels_tools_flavor. By default this is "prl-tools-{{.Flavor}}.iso"
which should upload into the login directory of the user.
- `parallels_tools_mode` (string) - The method by which Parallels Tools are
made available to the guest for installation. Valid options are "upload",
"attach", or "disable". If the mode is "attach" the Parallels Tools ISO will
be attached as a CD device to the virtual machine. If the mode is "upload"
the Parallels Tools ISO will be uploaded to the path specified by
parallels_tools_guest_path. The default value is "upload".

View File

@ -1,7 +0,0 @@
<!-- Code generated from the comments of the ToolsConfig struct in builder/parallels/common/tools_config.go; DO NOT EDIT MANUALLY -->
- `parallels_tools_flavor` (string) - The flavor of the Parallels Tools ISO to
install into the VM. Valid values are "win", "lin", "mac", "os2"
and "other". This can be omitted only if parallels_tools_mode
is "disable".

View File

@ -1,2 +0,0 @@
<!-- Code generated from the comments of the ToolsConfig struct in builder/parallels/common/tools_config.go; DO NOT EDIT MANUALLY -->
ToolsConfig contains the builder configuration related to Parallels Tools.

View File

@ -1,40 +0,0 @@
<!-- Code generated from the comments of the Config struct in builder/parallels/iso/builder.go; DO NOT EDIT MANUALLY -->
- `disk_size` (uint) - The size, in megabytes, of the hard disk to create
for the VM. By default, this is 40000 (about 40 GB).
- `disk_type` (string) - The type for image file based virtual disk drives,
defaults to expand. Valid options are expand (expanding disk) that the
image file is small initially and grows in size as you add data to it, and
plain (plain disk) that the image file has a fixed size from the moment it
is created (i.e the space is allocated for the full drive). Plain disks
perform faster than expanding disks. skip_compaction will be set to true
automatically for plain disks.
- `guest_os_type` (string) - The guest OS type being installed. By default
this is "other", but you can get dramatic performance improvements by
setting this to the proper value. To view all available values for this run
prlctl create x --distribution list. Setting the correct value hints to
Parallels Desktop how to optimize the virtual hardware to work best with
that operating system.
- `hard_drive_interface` (string) - The type of controller that the hard
drives are attached to, defaults to "sata". Valid options are "sata", "ide",
and "scsi".
- `host_interfaces` ([]string) - A list of which interfaces on the
host should be searched for a IP address. The first IP address found on one
of these will be used as {{ .HTTPIP }} in the boot_command. Defaults to
["en0", "en1", "en2", "en3", "en4", "en5", "en6", "en7", "en8", "en9",
"ppp0", "ppp1", "ppp2"].
- `skip_compaction` (bool) - Virtual disk image is compacted at the end of
the build process using prl_disk_tool utility (except for the case that
disk_type is set to plain). In certain rare cases, this might corrupt
the resulting disk image. If you find this to be the case, you can disable
compaction using this configuration value.
- `vm_name` (string) - This is the name of the PVM directory for the new
virtual machine, without the file extension. By default this is
"packer-BUILDNAME", where "BUILDNAME" is the name of the build.

Some files were not shown because too many files have changed in this diff Show More