revert prettier formatting on generated partials
This commit is contained in:
parent
2999934326
commit
6798b73305
|
@ -1,25 +1,26 @@
|
||||||
<!-- Code generated from the comments of the AlicloudAccessConfig struct in builder/alicloud/ecs/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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.
|
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
|
- `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.
|
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
|
- `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.
|
sourced from the ALICLOUD_REGION environment variables.
|
||||||
|
|
||||||
- `skip_region_validation` (bool) - The region validation can be skipped if this value is true, the default
|
- `skip_region_validation` (bool) - The region validation can be skipped if this value is true, the default
|
||||||
value is false.
|
value is false.
|
||||||
|
|
||||||
- `skip_image_validation` (bool) - The image validation can be skipped if this value is true, the default
|
- `skip_image_validation` (bool) - The image validation can be skipped if this value is true, the default
|
||||||
value is false.
|
value is false.
|
||||||
|
|
||||||
- `profile` (string) - This is th Alicloud profile. If access_key not exist, is must be provided, but it can also be
|
- `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.
|
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
|
- `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.
|
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`.
|
||||||
|
|
||||||
- `security_token` (string) - STS access token, can be set through template or by exporting as
|
|
||||||
environment variable such as `export SECURITY_TOKEN=value`.
|
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the AlicloudAccessConfig struct in builder/alicloud/ecs/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the AlicloudAccessConfig struct in builder/alicloud/ecs/access_config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
Config of alicloud
|
Config of alicloud
|
||||||
|
|
|
@ -1,35 +1,39 @@
|
||||||
<!-- Code generated from the comments of the AlicloudDiskDevice struct in builder/alicloud/ecs/image_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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,
|
- `disk_name` (string) - The value of disk name is blank by default. [2,
|
||||||
128] English or Chinese characters, must begin with an
|
128] English or Chinese characters, must begin with an
|
||||||
uppercase/lowercase letter or Chinese character. Can contain numbers,
|
uppercase/lowercase letter or Chinese character. Can contain numbers,
|
||||||
., \_ and -. The disk name will appear on the console. It cannot
|
., _ and -. The disk name will appear on the console. It cannot
|
||||||
begin with `http://` or `https://`.
|
begin with `http://` or `https://`.
|
||||||
|
|
||||||
- `disk_category` (string) - Category of the system disk. Optional values
|
- `disk_category` (string) - Category of the system disk. Optional values
|
||||||
are: - cloud - general cloud disk - cloud_efficiency - efficiency cloud disk - cloud_ssd - cloud SSD
|
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
|
- `disk_size` (int) - Size of the system disk, measured in GiB. Value
|
||||||
range: [20, 500]. The specified value must be equal to or greater
|
range: [20, 500]. The specified value must be equal to or greater
|
||||||
than max{20, ImageSize}. Default value: max{40, ImageSize}.
|
than max{20, ImageSize}. Default value: max{40, ImageSize}.
|
||||||
|
|
||||||
- `disk_snapshot_id` (string) - Snapshots are used to create the data
|
- `disk_snapshot_id` (string) - Snapshots are used to create the data
|
||||||
disk After this parameter is specified, Size is ignored. The actual
|
disk After this parameter is specified, Size is ignored. The actual
|
||||||
size of the created disk is the size of the specified snapshot.
|
size of the created disk is the size of the specified snapshot.
|
||||||
|
|
||||||
- `disk_description` (string) - The value of disk description is blank by
|
- `disk_description` (string) - The value of disk description is blank by
|
||||||
default. [2, 256] characters. The disk description will appear on the
|
default. [2, 256] characters. The disk description will appear on the
|
||||||
console. It cannot begin with `http://` or `https://`.
|
console. It cannot begin with `http://` or `https://`.
|
||||||
|
|
||||||
- `disk_delete_with_instance` (bool) - Whether or not the disk is
|
- `disk_delete_with_instance` (bool) - Whether or not the disk is
|
||||||
released along with the instance:
|
released along with the instance:
|
||||||
|
|
||||||
- `disk_device` (string) - Device information of the related instance:
|
- `disk_device` (string) - Device information of the related instance:
|
||||||
such as /dev/xvdb It is null unless the Status is In_use.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,79 +1,80 @@
|
||||||
<!-- Code generated from the comments of the AlicloudDiskDevices struct in builder/alicloud/ecs/image_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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.
|
||||||
|
- `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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,57 +1,58 @@
|
||||||
<!-- Code generated from the comments of the AlicloudImageConfig struct in builder/alicloud/ecs/image_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `image_version` (string) - The version number of the image, with a length
|
||||||
limit of 1 to 40 English characters.
|
limit of 1 to 40 English characters.
|
||||||
|
|
||||||
- `image_description` (string) - The description of the image, with a length
|
- `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
|
limit of 0 to 256 characters. Leaving it blank means null, which is the
|
||||||
default value. It cannot begin with `http://` or `https://`.
|
default value. It cannot begin with `http://` or `https://`.
|
||||||
|
|
||||||
- `image_share_account` ([]string) - The IDs of to-be-added Aliyun
|
- `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.
|
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.
|
If number of accounts is greater than 10, this parameter is ignored.
|
||||||
|
|
||||||
- `image_unshare_account` ([]string) - Alicloud Image UN Share Accounts
|
- `image_unshare_account` ([]string) - Alicloud Image UN Share Accounts
|
||||||
- `image_copy_regions` ([]string) - Copy to the destination regionIds.
|
- `image_copy_regions` ([]string) - Copy to the destination regionIds.
|
||||||
|
|
||||||
- `image_copy_names` ([]string) - The name of the destination image,
|
- `image_copy_names` ([]string) - The name of the destination image,
|
||||||
[2, 128] English or Chinese characters. It must begin with an
|
[2, 128] English or Chinese characters. It must begin with an
|
||||||
uppercase/lowercase letter or a Chinese character, and may contain numbers,
|
uppercase/lowercase letter or a Chinese character, and may contain numbers,
|
||||||
\_ or -. It cannot begin with `http://` or `https://`.
|
_ 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
|
- `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
|
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
|
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
|
same region. By default, Packer will keep the encryption setting to what
|
||||||
it was in the source image.
|
it was in the source image.
|
||||||
|
|
||||||
- `image_force_delete` (bool) - If this value is true, when the target image names including those
|
- `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
|
copied are duplicated with existing images, it will delete the existing
|
||||||
images and then create the target images, otherwise, the creation will
|
images and then create the target images, otherwise, the creation will
|
||||||
fail. The default value is false. Check `image_name` and
|
fail. The default value is false. Check `image_name` and
|
||||||
`image_copy_names` options for names of target images. If
|
`image_copy_names` options for names of target images. If
|
||||||
[-force](/docs/commands/build#force) option is
|
[-force](/docs/commands/build#force) option is
|
||||||
provided in `build` command, this option can be omitted and taken as
|
provided in `build` command, this option can be omitted and taken as
|
||||||
true.
|
true.
|
||||||
|
|
||||||
- `image_force_delete_snapshots` (bool) - If this value is true, when delete the duplicated existing images, the
|
- `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
|
source snapshots of those images will be delete either. If
|
||||||
[-force](/docs/commands/build#force) option is
|
[-force](/docs/commands/build#force) option is
|
||||||
provided in `build` command, this option can be omitted and taken as
|
provided in `build` command, this option can be omitted and taken as
|
||||||
true.
|
true.
|
||||||
|
|
||||||
- `image_force_delete_instances` (bool) - Alicloud Image Force Delete Instances
|
- `image_force_delete_instances` (bool) - Alicloud Image Force Delete Instances
|
||||||
- `image_ignore_data_disks` (bool) - If this value is true, the image
|
- `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
|
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
|
useful for any circumstance that default data disks with instance types are
|
||||||
not concerned. The default value is false.
|
not concerned. The default value is false.
|
||||||
|
|
||||||
- `skip_region_validation` (bool) - The region validation can be skipped
|
- `skip_region_validation` (bool) - The region validation can be skipped
|
||||||
if this value is true, the default value is false.
|
if this value is true, the default value is false.
|
||||||
|
|
||||||
- `tags` (map[string]string) - Tags applied to the destination image and relevant snapshots.
|
- `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`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
||||||
|
will allow you to create those programatically.
|
||||||
|
|
||||||
- `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`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
|
||||||
will allow you to create those programatically.
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
<!-- Code generated from the comments of the AlicloudImageConfig struct in builder/alicloud/ecs/image_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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]
|
- `image_name` (string) - The name of the user-defined image, [2, 128]
|
||||||
English or Chinese characters. It must begin with an uppercase/lowercase
|
English or Chinese characters. It must begin with an uppercase/lowercase
|
||||||
letter or a Chinese character, and may contain numbers, \_ or -. It
|
letter or a Chinese character, and may contain numbers, _ or -. It
|
||||||
cannot begin with `http://` or `https://`.
|
cannot begin with `http://` or `https://`.
|
||||||
|
|
|
@ -1,95 +1,94 @@
|
||||||
<!-- Code generated from the comments of the RunConfig struct in builder/alicloud/ecs/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `associate_public_ip_address` (bool) - Associate Public Ip Address
|
||||||
- `zone_id` (string) - ID of the zone to which the disk belongs.
|
- `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
|
- `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
|
provided, the value will be determined by product API according to what
|
||||||
`instance_type` is used.
|
`instance_type` is used.
|
||||||
|
|
||||||
- `description` (string) - Description
|
- `description` (string) - Description
|
||||||
- `force_stop_instance` (bool) - Whether to force shutdown upon device
|
- `force_stop_instance` (bool) - Whether to force shutdown upon device
|
||||||
restart. The default value is `false`.
|
restart. The default value is `false`.
|
||||||
|
|
||||||
If it is set to `false`, the system is shut down normally; if it is set to
|
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.
|
`true`, the system is forced to shut down.
|
||||||
|
|
||||||
- `disable_stop_instance` (bool) - If this option is set to true, Packer
|
- `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 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
|
will be stopped in the final provisioner command. Otherwise, Packer will
|
||||||
timeout while waiting the instance to be stopped. This option is provided
|
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.
|
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.
|
E.g., Sysprep a windows which may shutdown the instance within its command.
|
||||||
The default value is false.
|
The default value is false.
|
||||||
|
|
||||||
- `security_group_id` (string) - ID of the security group to which a newly
|
- `security_group_id` (string) - ID of the security group to which a newly
|
||||||
created instance belongs. Mutual access is allowed between instances in one
|
created instance belongs. Mutual access is allowed between instances in one
|
||||||
security group. If not specified, the newly created instance will be added
|
security group. If not specified, the newly created instance will be added
|
||||||
to the default security group. If the default group doesn’t exist, or the
|
to the default security group. If the default group doesn’t exist, or the
|
||||||
number of instances in it has reached the maximum limit, a new security
|
number of instances in it has reached the maximum limit, a new security
|
||||||
group will be created automatically.
|
group will be created automatically.
|
||||||
|
|
||||||
- `security_group_name` (string) - The security group name. The default value
|
- `security_group_name` (string) - The security group name. The default value
|
||||||
is blank. [2, 128] English or Chinese characters, must begin with an
|
is blank. [2, 128] English or Chinese characters, must begin with an
|
||||||
uppercase/lowercase letter or Chinese character. Can contain numbers, .,
|
uppercase/lowercase letter or Chinese character. Can contain numbers, .,
|
||||||
\_ or -. It cannot begin with `http://` or `https://`.
|
_ or -. It cannot begin with `http://` or `https://`.
|
||||||
|
|
||||||
- `user_data` (string) - User data to apply when launching the instance. Note
|
- `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
|
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.
|
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
|
Packer will not automatically wait for a user script to finish before
|
||||||
shutting down the instance this must be handled in a provisioner.
|
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
|
- `user_data_file` (string) - Path to a file that will be used for the user
|
||||||
data when launching the instance.
|
data when launching the instance.
|
||||||
|
|
||||||
- `vpc_id` (string) - VPC ID allocated by the system.
|
- `vpc_id` (string) - VPC ID allocated by the system.
|
||||||
|
|
||||||
- `vpc_name` (string) - The VPC name. The default value is blank. [2, 128]
|
- `vpc_name` (string) - The VPC name. The default value is blank. [2, 128]
|
||||||
English or Chinese characters, must begin with an uppercase/lowercase
|
English or Chinese characters, must begin with an uppercase/lowercase
|
||||||
letter or Chinese character. Can contain numbers, \_ and -. The disk
|
letter or Chinese character. Can contain numbers, _ and -. The disk
|
||||||
description will appear on the console. Cannot begin with `http://` or
|
description will appear on the console. Cannot begin with `http://` or
|
||||||
`https://`.
|
`https://`.
|
||||||
|
|
||||||
- `vpc_cidr_block` (string) - Value options: 192.168.0.0/16 and
|
- `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.
|
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_id` (string) - The ID of the VSwitch to be used.
|
||||||
|
|
||||||
- `vswitch_name` (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
|
- `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
|
English characters. It must begin with an uppercase/lowercase letter or
|
||||||
a Chinese character and can contain numerals, `.`, `_`, or `-`. The
|
a Chinese character and can contain numerals, `.`, `_`, or `-`. The
|
||||||
instance name is displayed on the Alibaba Cloud console. If this
|
instance name is displayed on the Alibaba Cloud console. If this
|
||||||
parameter is not specified, the default value is InstanceId of the
|
parameter is not specified, the default value is InstanceId of the
|
||||||
instance. It cannot begin with `http://` or `https://`.
|
instance. It cannot begin with `http://` or `https://`.
|
||||||
|
|
||||||
- `internet_charge_type` (string) - Internet charge type, which can be
|
- `internet_charge_type` (string) - Internet charge type, which can be
|
||||||
`PayByTraffic` or `PayByBandwidth`. Optional values:
|
`PayByTraffic` or `PayByBandwidth`. Optional values:
|
||||||
|
- `PayByBandwidth`
|
||||||
|
- `PayByTraffic`
|
||||||
|
|
||||||
- `PayByBandwidth`
|
If this parameter is not specified, the default value is `PayByBandwidth`.
|
||||||
- `PayByTraffic`
|
For the regions out of China, currently only support `PayByTraffic`, you
|
||||||
|
must set it manfully.
|
||||||
|
|
||||||
If this parameter is not specified, the default value is `PayByBandwidth`.
|
- `internet_max_bandwidth_out` (int) - Maximum outgoing bandwidth to the
|
||||||
For the regions out of China, currently only support `PayByTraffic`, you
|
public network, measured in Mbps (Mega bits per second).
|
||||||
must set it manfully.
|
|
||||||
|
|
||||||
- `internet_max_bandwidth_out` (int) - Maximum outgoing bandwidth to the
|
Value range:
|
||||||
public network, measured in Mbps (Mega bits per second).
|
- `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.
|
||||||
|
|
||||||
Value range:
|
- `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.
|
||||||
|
|
||||||
- `PayByBandwidth`: \[0, 100\]. If this parameter is not specified, API
|
- `ssh_private_ip` (bool) - If this value is true, packer will connect to
|
||||||
automatically sets it to 0 Mbps.
|
the ECS created through private ip instead of allocating a public ip or an
|
||||||
- `PayByTraffic`: \[1, 100\]. If this parameter is not specified, an
|
EIP. The default value is false.
|
||||||
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.
|
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
<!-- Code generated from the comments of the RunConfig struct in builder/alicloud/ecs/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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).
|
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
|
You can also obtain the latest instance type table by invoking the
|
||||||
[Querying Instance Type
|
[Querying Instance Type
|
||||||
Table](https://intl.aliyun.com/help/doc-detail/25620.htm?spm=a3c0i.o25499en.a3.6.Dr1bik)
|
Table](https://intl.aliyun.com/help/doc-detail/25620.htm?spm=a3c0i.o25499en.a3.6.Dr1bik)
|
||||||
interface.
|
interface.
|
||||||
|
|
||||||
|
- `source_image` (string) - This is the base image id which you want to
|
||||||
|
create your customized images.
|
||||||
|
|
||||||
- `source_image` (string) - This is the base image id which you want to
|
|
||||||
create your customized images.
|
|
||||||
|
|
|
@ -1,134 +1,135 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/chroot/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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)
|
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
|
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
|
existing source image, the block device mappings in the source image
|
||||||
will be overwritten. This means you must have a block device mapping
|
will be overwritten. This means you must have a block device mapping
|
||||||
entry for your root volume, `root_volume_size` and `root_device_name`.
|
entry for your root volume, `root_volume_size` and `root_device_name`.
|
||||||
See the [BlockDevices](#block-devices-configuration) documentation for
|
See the [BlockDevices](#block-devices-configuration) documentation for
|
||||||
fields.
|
fields.
|
||||||
|
|
||||||
- `chroot_mounts` ([][]string) - This is a list of devices to mount into the chroot environment. This
|
- `chroot_mounts` ([][]string) - This is a list of devices to mount into the chroot environment. This
|
||||||
configuration parameter requires some additional documentation which is
|
configuration parameter requires some additional documentation which is
|
||||||
in the Chroot Mounts section. Please read that section for more
|
in the Chroot Mounts section. Please read that section for more
|
||||||
information on how to use this.
|
information on how to use this.
|
||||||
|
|
||||||
- `command_wrapper` (string) - How to run shell commands. This defaults to `{{.Command}}`. This may be
|
- `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
|
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
|
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 variable is replaced with the command to be run. Defaults to
|
||||||
`{{.Command}}`.
|
`{{.Command}}`.
|
||||||
|
|
||||||
- `copy_files` ([]string) - Paths to files on the running EC2 instance that will be copied into the
|
- `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
|
chroot environment prior to provisioning. Defaults to /etc/resolv.conf
|
||||||
so that DNS lookups work. Pass an empty list to skip copying
|
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
|
/etc/resolv.conf. You may need to do this if you're building an image
|
||||||
that uses systemd.
|
that uses systemd.
|
||||||
|
|
||||||
- `device_path` (string) - The path to the device where the root volume of the source AMI will be
|
- `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
|
attached. This defaults to "" (empty string), which forces Packer to
|
||||||
find an open device automatically.
|
find an open device automatically.
|
||||||
|
|
||||||
- `nvme_device_path` (string) - When we call the mount command (by default mount -o device dir), the
|
- `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.
|
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
|
When this option is not set, device in that command will be something
|
||||||
like /dev/sdf1, mirroring the attached device name. This assumption
|
like /dev/sdf1, mirroring the attached device name. This assumption
|
||||||
works for most instances but will fail with c5 and m5 instances. In
|
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
|
order to use the chroot builder with c5 and m5 instances, you must
|
||||||
manually set nvme_device_path and device_path.
|
manually set nvme_device_path and device_path.
|
||||||
|
|
||||||
- `from_scratch` (bool) - Build a new volume instead of starting from an existing AMI root volume
|
- `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
|
snapshot. Default false. If true, source_ami/source_ami_filter are no
|
||||||
longer used and the following options become required:
|
longer used and the following options become required:
|
||||||
ami_virtualization_type, pre_mount_commands and root_volume_size.
|
ami_virtualization_type, pre_mount_commands and root_volume_size.
|
||||||
|
|
||||||
- `mount_options` ([]string) - Options to supply the mount command when mounting devices. Each option
|
- `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
|
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
|
Packer. Because this command is ran in a shell, user discretion is
|
||||||
advised. See this manual page for the mount command for valid file
|
advised. See this manual page for the mount command for valid file
|
||||||
system specific options.
|
system specific options.
|
||||||
|
|
||||||
- `mount_partition` (string) - The partition number containing the / partition. By default this is the
|
- `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
|
first partition of the volume, (for example, xvda1) but you can
|
||||||
designate the entire block device by setting "mount_partition": "0" in
|
designate the entire block device by setting "mount_partition": "0" in
|
||||||
your config, which will mount xvda instead.
|
your config, which will mount xvda instead.
|
||||||
|
|
||||||
- `mount_path` (string) - The path where the volume will be mounted. This is where the chroot
|
- `mount_path` (string) - The path where the volume will be mounted. This is where the chroot
|
||||||
environment will be. This defaults to
|
environment will be. This defaults to
|
||||||
`/mnt/packer-amazon-chroot-volumes/{{.Device}}`. This is a configuration
|
`/mnt/packer-amazon-chroot-volumes/{{.Device}}`. This is a configuration
|
||||||
template where the .Device variable is replaced with the name of the
|
template where the .Device variable is replaced with the name of the
|
||||||
device where the volume is attached.
|
device where the volume is attached.
|
||||||
|
|
||||||
- `post_mount_commands` ([]string) - As pre_mount_commands, but the commands are executed after mounting the
|
- `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
|
root device and before the extra mount and copy steps. The device and
|
||||||
mount path are provided by `{{.Device}}` and `{{.MountPath}}`.
|
mount path are provided by `{{.Device}}` and `{{.MountPath}}`.
|
||||||
|
|
||||||
- `pre_mount_commands` ([]string) - A series of commands to execute after attaching the root volume and
|
- `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
|
before mounting the chroot. This is not required unless using
|
||||||
from_scratch. If so, this should include any partitioning and filesystem
|
from_scratch. If so, this should include any partitioning and filesystem
|
||||||
creation commands. The path to the device is provided by `{{.Device}}`.
|
creation commands. The path to the device is provided by `{{.Device}}`.
|
||||||
|
|
||||||
- `root_device_name` (string) - The root device name. For example, xvda.
|
- `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
|
- `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
|
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.
|
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
|
- `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
|
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
|
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.
|
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:
|
- `source_ami_filter` (awscommon.AmiFilterOptions) - Filters used to populate the source_ami field. Example:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"source_ami_filter": {
|
"source_ami_filter": {
|
||||||
"filters": {
|
"filters": {
|
||||||
"virtualization-type": "hvm",
|
"virtualization-type": "hvm",
|
||||||
"name": "ubuntu/images/*ubuntu-xenial-16.04-amd64-server-*",
|
"name": "ubuntu/images/*ubuntu-xenial-16.04-amd64-server-*",
|
||||||
"root-device-type": "ebs"
|
"root-device-type": "ebs"
|
||||||
},
|
},
|
||||||
"owners": ["099720109477"],
|
"owners": ["099720109477"],
|
||||||
"most_recent": true
|
"most_recent": true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
```
|
||||||
```
|
|
||||||
|
|
||||||
This selects the most recent Ubuntu 16.04 HVM EBS AMI from Canonical. NOTE:
|
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,
|
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.
|
`most_recent` will cause this to succeed by selecting the newest image.
|
||||||
|
|
||||||
- `filters` (map of strings) - filters used to select a `source_ami`.
|
- `filters` (map of strings) - filters used to select a `source_ami`.
|
||||||
NOTE: This will fail unless _exactly_ one AMI is returned. Any filter
|
NOTE: This will fail unless *exactly* one AMI is returned. Any filter
|
||||||
described in the docs for
|
described in the docs for
|
||||||
[DescribeImages](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html)
|
[DescribeImages](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html)
|
||||||
is valid.
|
is valid.
|
||||||
|
|
||||||
- `owners` (array of strings) - Filters the images by their owner. You
|
- `owners` (array of strings) - Filters the images by their owner. You
|
||||||
may specify one or more AWS account IDs, "self" (which will use the
|
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
|
account whose credentials you are using to run Packer), or an AWS owner
|
||||||
alias: for example, "amazon", "aws-marketplace", or "microsoft". This
|
alias: for example, "amazon", "aws-marketplace", or "microsoft". This
|
||||||
option is required for security reasons.
|
option is required for security reasons.
|
||||||
|
|
||||||
- `most_recent` (boolean) - Selects the newest created image when true.
|
- `most_recent` (boolean) - Selects the newest created image when true.
|
||||||
This is most useful for selecting a daily distro build.
|
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
|
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
|
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
|
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
|
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.
|
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
|
- `root_volume_tags` (map[string]string) - Tags to apply to the volumes that are *launched*. This is a [template
|
||||||
engine](/docs/templates/engine), see [Build template
|
engine](/docs/templates/engine), see [Build template
|
||||||
data](#build-template-data) for more information.
|
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
|
- `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
|
singular block containing a `name` and a `value` field. In HCL2 mode the
|
||||||
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
||||||
will allow you to create those programatically.
|
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".
|
||||||
|
|
||||||
- `ami_architecture` (string) - what architecture to use when registering the final AMI; valid options
|
|
||||||
are "x86_64" or "arm64". Defaults to "x86_64".
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/chroot/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
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
|
volume snapshot that you have access to. Note: this is not used when
|
||||||
from_scratch is set to true.
|
from_scratch is set to true.
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/chroot/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
Config is the configuration that is chained through the steps and settable
|
||||||
from the template.
|
from the template.
|
||||||
|
|
|
@ -1,118 +1,120 @@
|
||||||
<!-- Code generated from the comments of the AMIConfig struct in builder/amazon/common/ami_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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_description` (string) - The description to set for the resulting
|
||||||
AMI(s). By default this description is empty. This is a
|
AMI(s). By default this description is empty. This is a
|
||||||
[template engine](/docs/templates/engine), see [Build template
|
[template engine](/docs/templates/engine), see [Build template
|
||||||
data](#build-template-data) for more information.
|
data](#build-template-data) for more information.
|
||||||
|
|
||||||
- `ami_virtualization_type` (string) - The type of virtualization for the AMI
|
- `ami_virtualization_type` (string) - The type of virtualization for the AMI
|
||||||
you are building. This option is required to register HVM images. Can be
|
you are building. This option is required to register HVM images. Can be
|
||||||
paravirtual (default) or hvm.
|
paravirtual (default) or hvm.
|
||||||
|
|
||||||
- `ami_users` ([]string) - A list of account IDs that have access to
|
- `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
|
launch the resulting AMI(s). By default no additional users other than the
|
||||||
user creating the AMI has permissions to launch it.
|
user creating the AMI has permissions to launch it.
|
||||||
|
|
||||||
- `ami_groups` ([]string) - A list of groups that have access to
|
- `ami_groups` ([]string) - A list of groups that have access to
|
||||||
launch the resulting AMI(s). By default no groups have permission to launch
|
launch the resulting AMI(s). By default no groups have permission to launch
|
||||||
the AMI. all will make the AMI publicly accessible.
|
the AMI. all will make the AMI publicly accessible.
|
||||||
|
|
||||||
- `ami_product_codes` ([]string) - A list of product codes to
|
- `ami_product_codes` ([]string) - A list of product codes to
|
||||||
associate with the AMI. By default no product codes are associated with the
|
associate with the AMI. By default no product codes are associated with the
|
||||||
AMI.
|
AMI.
|
||||||
|
|
||||||
- `ami_regions` ([]string) - A list of regions to copy the AMI to.
|
- `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
|
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.
|
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
|
- `skip_region_validation` (bool) - Set to true if you want to skip
|
||||||
validation of the ami_regions configuration option. Default false.
|
validation of the ami_regions configuration option. Default false.
|
||||||
|
|
||||||
- `tags` (map[string]string) - Tags applied to the AMI. This is a
|
- `tags` (map[string]string) - Tags applied to the AMI. This is a
|
||||||
[template engine](/docs/templates/engine), see [Build template
|
[template engine](/docs/templates/engine), see [Build template
|
||||||
data](#build-template-data) for more information.
|
data](#build-template-data) for more information.
|
||||||
|
|
||||||
- `tag` ([]{name string, value string}) - Same as [`tags`](#tags) but defined as a singular repeatable block
|
- `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
|
containing a `name` and a `value` field. In HCL2 mode the
|
||||||
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
||||||
will allow you to create those programatically.
|
will allow you to create those programatically.
|
||||||
|
|
||||||
- `ena_support` (boolean) - Enable enhanced networking (ENA but not SriovNetSupport) on
|
- `ena_support` (boolean) - Enable enhanced networking (ENA but not SriovNetSupport) on
|
||||||
HVM-compatible AMIs. If set, add `ec2:ModifyInstanceAttribute` to your
|
HVM-compatible AMIs. If set, add `ec2:ModifyInstanceAttribute` to your
|
||||||
AWS IAM policy.
|
AWS IAM policy.
|
||||||
|
|
||||||
Note: you must make sure enhanced networking is enabled on your
|
Note: you must make sure enhanced networking is enabled on your
|
||||||
instance. See [Amazon's documentation on enabling enhanced
|
instance. See [Amazon's documentation on enabling enhanced
|
||||||
networking](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html#enabling_enhanced_networking).
|
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
|
- `sriov_support` (bool) - Enable enhanced networking (SriovNetSupport but not ENA) on
|
||||||
HVM-compatible AMIs. If true, add `ec2:ModifyInstanceAttribute` to your
|
HVM-compatible AMIs. If true, add `ec2:ModifyInstanceAttribute` to your
|
||||||
AWS IAM policy. Note: you must make sure enhanced networking is enabled
|
AWS IAM policy. Note: you must make sure enhanced networking is enabled
|
||||||
on your instance. See [Amazon's documentation on enabling enhanced
|
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).
|
networking](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html#enabling_enhanced_networking).
|
||||||
Default `false`.
|
Default `false`.
|
||||||
|
|
||||||
- `force_deregister` (bool) - Force Packer to first deregister an existing
|
- `force_deregister` (bool) - Force Packer to first deregister an existing
|
||||||
AMI if one with the same name already exists. Default false.
|
AMI if one with the same name already exists. Default false.
|
||||||
|
|
||||||
- `force_delete_snapshot` (bool) - Force Packer to delete snapshots
|
- `force_delete_snapshot` (bool) - Force Packer to delete snapshots
|
||||||
associated with AMIs, which have been deregistered by force_deregister.
|
associated with AMIs, which have been deregistered by force_deregister.
|
||||||
Default false.
|
Default false.
|
||||||
|
|
||||||
- `encrypt_boot` (boolean) - Whether or not to encrypt the resulting AMI when
|
- `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
|
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
|
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.
|
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
|
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
|
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
|
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.
|
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
|
- `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
|
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
|
copied will be encrypted by the default EBS KMS key. For valid formats
|
||||||
see _KmsKeyId_ in the [AWS API docs -
|
see *KmsKeyId* in the [AWS API docs -
|
||||||
CopyImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopyImage.html).
|
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
|
This field is validated by Packer, when using an alias, you will have to
|
||||||
prefix `kms_key_id` with `alias/`.
|
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
|
- `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
|
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
|
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
|
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
|
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
|
empty string `""` instead of a key id in this map. (e.g. `"us-east-1":
|
||||||
conjunction with `snapshot_users` -- in that situation you must use
|
""`) However, you cannot use default key IDs if you are using this in
|
||||||
custom keys. For valid formats see _KmsKeyId_ in the [AWS API docs -
|
conjunction with `snapshot_users` -- in that situation you must use
|
||||||
CopyImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopyImage.html).
|
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
|
This option supercedes the `kms_key_id` option -- if you set both, and
|
||||||
they are different, Packer will respect the value in
|
they are different, Packer will respect the value in
|
||||||
`region_kms_key_ids` for your build region and silently disregard the
|
`region_kms_key_ids` for your build region and silently disregard the
|
||||||
value provided in `kms_key_id`.
|
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
|
- `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,
|
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
|
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
|
the intermediary AMI into any regions provided in `ami_regions`, then
|
||||||
delete the intermediary AMI. Default `false`.
|
delete the intermediary AMI. Default `false`.
|
||||||
|
|
||||||
- `snapshot_tags` (map[string]string) - Tags to apply to snapshot.
|
- `snapshot_tags` (map[string]string) - Tags to apply to snapshot.
|
||||||
They will override AMI tags if already applied to snapshot. This is a
|
They will override AMI tags if already applied to snapshot. This is a
|
||||||
[template engine](/docs/templates/engine), see [Build template
|
[template engine](/docs/templates/engine), see [Build template
|
||||||
data](#build-template-data) for more information.
|
data](#build-template-data) for more information.
|
||||||
|
|
||||||
- `snapshot_tag` ([]{name string, value string}) - Same as [`snapshot_tags`](#snapshot_tags) but defined as a singular
|
- `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
|
repeatable block containing a `name` and a `value` field. In HCL2 mode the
|
||||||
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
||||||
will allow you to create those programatically.
|
will allow you to create those programatically.
|
||||||
|
|
||||||
- `snapshot_users` ([]string) - A list of account IDs that have
|
- `snapshot_users` ([]string) - A list of account IDs that have
|
||||||
access to create volumes from the snapshot(s). By default no additional
|
access to create volumes from the snapshot(s). By default no additional
|
||||||
users other than the user creating the AMI has permissions to create
|
users other than the user creating the AMI has permissions to create
|
||||||
volumes from the backing snapshot(s).
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
<!-- Code generated from the comments of the AMIConfig struct in builder/amazon/common/ami_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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,
|
AWS console or via APIs. This must be unique. To help make this unique,
|
||||||
use a function like timestamp (see [template
|
use a function like timestamp (see [template
|
||||||
engine](/docs/templates/engine) for more info).
|
engine](/docs/templates/engine) for more info).
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the AMIConfig struct in builder/amazon/common/ami_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
AMIConfig is for common configuration related to creating AMIs.
|
||||||
|
|
|
@ -1,71 +1,71 @@
|
||||||
<!-- Code generated from the comments of the AccessConfig struct in builder/amazon/common/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `custom_endpoint_ec2` (string) - This option is useful if you use a cloud
|
||||||
provider whose API is compatible with aws EC2. Specify another endpoint
|
provider whose API is compatible with aws EC2. Specify another endpoint
|
||||||
like this https://ec2.custom.endpoint.com.
|
like this https://ec2.custom.endpoint.com.
|
||||||
|
|
||||||
- `decode_authorization_messages` (bool) - Enable automatic decoding of any encoded authorization (error) messages
|
- `decode_authorization_messages` (bool) - Enable automatic decoding of any encoded authorization (error) messages
|
||||||
using the `sts:DecodeAuthorizationMessage` API. Note: requires that the
|
using the `sts:DecodeAuthorizationMessage` API. Note: requires that the
|
||||||
effective user/role have permissions to `sts:DecodeAuthorizationMessage`
|
effective user/role have permissions to `sts:DecodeAuthorizationMessage`
|
||||||
on resource `*`. Default `false`.
|
on resource `*`. Default `false`.
|
||||||
|
|
||||||
- `insecure_skip_tls_verify` (bool) - This allows skipping TLS
|
- `insecure_skip_tls_verify` (bool) - This allows skipping TLS
|
||||||
verification of the AWS EC2 endpoint. The default is false.
|
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
|
- `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.
|
where requests are being throttled or experiencing transient failures.
|
||||||
The delay between the subsequent API calls increases exponentially.
|
The delay between the subsequent API calls increases exponentially.
|
||||||
|
|
||||||
- `mfa_code` (string) - The MFA
|
- `mfa_code` (string) - The MFA
|
||||||
[TOTP](https://en.wikipedia.org/wiki/Time-based_One-time_Password_Algorithm)
|
[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
|
code. This should probably be a user variable since it changes all the
|
||||||
time.
|
time.
|
||||||
|
|
||||||
- `profile` (string) - The profile to use in the shared credentials file for
|
- `profile` (string) - The profile to use in the shared credentials file for
|
||||||
AWS. See Amazon's documentation on [specifying
|
AWS. See Amazon's documentation on [specifying
|
||||||
profiles](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-profiles)
|
profiles](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-profiles)
|
||||||
for more details.
|
for more details.
|
||||||
|
|
||||||
- `skip_region_validation` (bool) - Set to true if you want to skip
|
- `skip_region_validation` (bool) - Set to true if you want to skip
|
||||||
validation of the ami_regions configuration option. Default false.
|
validation of the ami_regions configuration option. Default false.
|
||||||
|
|
||||||
- `skip_metadata_api_check` (bool) - Skip Metadata Api Check
|
- `skip_metadata_api_check` (bool) - Skip Metadata Api Check
|
||||||
- `token` (string) - The access token to use. This is different from the
|
- `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
|
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
|
probably don't need it. This will also be read from the AWS_SESSION_TOKEN
|
||||||
environmental variable.
|
environmental variable.
|
||||||
|
|
||||||
- `vault_aws_engine` (VaultAWSEngineOptions) - Get credentials from Hashicorp Vault's aws secrets engine. You must
|
- `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
|
already have created a role to use. For more information about
|
||||||
generating credentials via the Vault engine, see the [Vault
|
generating credentials via the Vault engine, see the [Vault
|
||||||
docs.](https://www.vaultproject.io/api/secret/aws#generate-credentials)
|
docs.](https://www.vaultproject.io/api/secret/aws#generate-credentials)
|
||||||
If you set this flag, you must also set the below options:
|
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.
|
||||||
|
|
||||||
- `name` (string) - Required. Specifies the name of the role to generate
|
```json
|
||||||
credentials against. This is part of the request URL.
|
{
|
||||||
- `engine_name` (string) - The name of the aws secrets engine. In the
|
"vault_aws_engine": {
|
||||||
Vault docs, this is normally referred to as "aws", and Packer will
|
"name": "myrole",
|
||||||
default to "aws" if `engine_name` is not set.
|
"role_arn": "myarn",
|
||||||
- `role_arn` (string)- The ARN of the role to assume if credential_type
|
"ttl": "3600s"
|
||||||
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"
|
|
||||||
}
|
}
|
||||||
}
|
```
|
||||||
```
|
|
|
@ -1,13 +1,15 @@
|
||||||
<!-- Code generated from the comments of the AccessConfig struct in builder/amazon/common/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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#specifying-amazon-credentials). On EBS, this
|
- `access_key` (string) - The access key used to communicate with AWS. [Learn how to set this]
|
||||||
is not required if you are using `use_vault_aws_engine` for
|
(/docs/builders/amazon#specifying-amazon-credentials). On EBS, this
|
||||||
authentication instead.
|
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
|
- `region` (string) - The name of the region, such as `us-east-1`, in which
|
||||||
to launch the EC2 instance to create the AMI.
|
to launch the EC2 instance to create the AMI.
|
||||||
When chroot building, this value is guessed from environment.
|
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](/docs/builders/amazon#specifying-amazon-credentials). This is not required
|
||||||
|
if you are using `use_vault_aws_engine` for authentication instead.
|
||||||
|
|
||||||
- `secret_key` (string) - The secret key used to communicate with AWS. [Learn how to set
|
|
||||||
this](/docs/builders/amazon#specifying-amazon-credentials). This is not required
|
|
||||||
if you are using `use_vault_aws_engine` for authentication instead.
|
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
<!-- Code generated from the comments of the AmiFilterOptions struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `most_recent` (bool) - Most Recent
|
|
@ -1,42 +1,43 @@
|
||||||
<!-- Code generated from the comments of the BlockDevice struct in builder/amazon/common/block_device.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `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
|
Default false. NOTE: If this value is not explicitly set to true and
|
||||||
volumes are not cleaned up by an alternative method, additional volumes
|
volumes are not cleaned up by an alternative method, additional volumes
|
||||||
will accumulate after every build.
|
will accumulate after every build.
|
||||||
|
|
||||||
- `device_name` (string) - The device name exposed to the instance (for example, /dev/sdh or xvdh).
|
- `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.
|
Required for every device in the block device mapping.
|
||||||
|
|
||||||
- `encrypted` (boolean) - Indicates whether or not to encrypt the volume. By default, Packer will
|
- `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
|
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
|
false will result in an unencrypted device, and true will result in an
|
||||||
encrypted one.
|
encrypted one.
|
||||||
|
|
||||||
- `iops` (int64) - The number of I/O operations per second (IOPS) that the volume supports.
|
- `iops` (int64) - The number of I/O operations per second (IOPS) that the volume supports.
|
||||||
See the documentation on
|
See the documentation on
|
||||||
[IOPs](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_EbsBlockDevice.html)
|
[IOPs](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_EbsBlockDevice.html)
|
||||||
for more information
|
for more information
|
||||||
|
|
||||||
- `no_device` (bool) - Suppresses the specified device included in the block device mapping of
|
- `no_device` (bool) - Suppresses the specified device included in the block device mapping of
|
||||||
the AMI.
|
the AMI.
|
||||||
|
|
||||||
- `snapshot_id` (string) - The ID of the snapshot.
|
- `snapshot_id` (string) - The ID of the snapshot.
|
||||||
|
|
||||||
- `virtual_name` (string) - The virtual device name. See the documentation on Block Device Mapping
|
- `virtual_name` (string) - The virtual device name. See the documentation on Block Device Mapping
|
||||||
for more information.
|
for more information.
|
||||||
|
|
||||||
- `volume_type` (string) - The volume type. gp2 for General Purpose (SSD) volumes, io1 for
|
- `volume_type` (string) - The volume type. gp2 for General Purpose (SSD) volumes, io1 for
|
||||||
Provisioned IOPS (SSD) volumes, st1 for Throughput Optimized HDD, sc1
|
Provisioned IOPS (SSD) volumes, st1 for Throughput Optimized HDD, sc1
|
||||||
for Cold HDD, and standard for Magnetic volumes.
|
for Cold HDD, and standard for Magnetic volumes.
|
||||||
|
|
||||||
- `volume_size` (int64) - The size of the volume, in GiB. Required if not specifying a
|
- `volume_size` (int64) - The size of the volume, in GiB. Required if not specifying a
|
||||||
snapshot_id.
|
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/.
|
||||||
|
|
||||||
- `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/.
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!-- Code generated from the comments of the BlockDevice struct in builder/amazon/common/block_device.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
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.
|
options here may vary depending on the type of VM you use.
|
||||||
|
|
||||||
|
@ -9,13 +8,11 @@ The following mapping will tell Packer to encrypt the root volume of the
|
||||||
build instance at launch using a specific non-default kms key:
|
build instance at launch using a specific non-default kms key:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
[
|
[{
|
||||||
{
|
"device_name": "/dev/sda1",
|
||||||
"device_name": "/dev/sda1",
|
"encrypted": true,
|
||||||
"encrypted": true,
|
"kms_key_id": "1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d"
|
||||||
"kms_key_id": "1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d"
|
}]
|
||||||
}
|
|
||||||
]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Documentation for Block Devices Mappings can be found here:
|
Documentation for Block Devices Mappings can be found here:
|
||||||
|
|
|
@ -1,316 +1,317 @@
|
||||||
<!-- Code generated from the comments of the RunConfig struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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,
|
- `associate_public_ip_address` (bool) - If using a non-default VPC,
|
||||||
public IP addresses are not provided by default. If this is true, your
|
public IP addresses are not provided by default. If this is true, your
|
||||||
new instance will get a Public IP. default: false
|
new instance will get a Public IP. default: false
|
||||||
|
|
||||||
- `availability_zone` (string) - Destination availability zone to launch
|
- `availability_zone` (string) - Destination availability zone to launch
|
||||||
instance in. Leave this empty to allow Amazon to auto-assign.
|
instance in. Leave this empty to allow Amazon to auto-assign.
|
||||||
|
|
||||||
- `block_duration_minutes` (int64) - Requires spot_price to be set. The
|
- `block_duration_minutes` (int64) - Requires spot_price to be set. The
|
||||||
required duration for the Spot Instances (also known as Spot blocks). This
|
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
|
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
|
specify an Availability Zone group or a launch group if you specify a
|
||||||
duration.
|
duration.
|
||||||
|
|
||||||
- `disable_stop_instance` (bool) - Packer normally stops the build instance after all provisioners have
|
- `disable_stop_instance` (bool) - Packer normally stops the build instance after all provisioners have
|
||||||
run. For Windows instances, it is sometimes desirable to [run
|
run. For Windows instances, it is sometimes desirable to [run
|
||||||
Sysprep](http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ami-create-standard.html)
|
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
|
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
|
*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
|
signal yourself through your final provisioner. You can do this with a
|
||||||
[windows-shell
|
[windows-shell
|
||||||
provisioner](/docs/provisioners/windows-shell).
|
provisioner](/docs/provisioners/windows-shell).
|
||||||
Note that Packer will still wait for the instance to be stopped, and
|
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
|
failing to send the stop signal yourself, when you have set this flag to
|
||||||
`true`, will cause a timeout.
|
`true`, will cause a timeout.
|
||||||
Example of a valid shutdown command:
|
Example of a valid shutdown command:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"type": "windows-shell",
|
"type": "windows-shell",
|
||||||
"inline": [
|
"inline": ["\"c:\\Program Files\\Amazon\\Ec2ConfigService\\ec2config.exe\" -sysprep"]
|
||||||
"\"c:\\Program Files\\Amazon\\Ec2ConfigService\\ec2config.exe\" -sysprep"
|
}
|
||||||
]
|
```
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
- `ebs_optimized` (bool) - Mark instance as [EBS
|
- `ebs_optimized` (bool) - Mark instance as [EBS
|
||||||
Optimized](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html).
|
Optimized](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html).
|
||||||
Default `false`.
|
Default `false`.
|
||||||
|
|
||||||
- `enable_t2_unlimited` (bool) - Enabling T2 Unlimited allows the source instance to burst additional CPU
|
- `enable_t2_unlimited` (bool) - Enabling T2 Unlimited allows the source instance to burst additional CPU
|
||||||
beyond its available [CPU
|
beyond its available [CPU
|
||||||
Credits](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-credits-baseline-concepts.html)
|
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
|
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
|
configuration that only allows an instance to consume up to its
|
||||||
available CPU Credits. See the AWS documentation for [T2
|
available CPU Credits. See the AWS documentation for [T2
|
||||||
Unlimited](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-unlimited.html)
|
Unlimited](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-unlimited.html)
|
||||||
and the **T2 Unlimited Pricing** section of the [Amazon EC2 On-Demand
|
and the **T2 Unlimited Pricing** section of the [Amazon EC2 On-Demand
|
||||||
Pricing](https://aws.amazon.com/ec2/pricing/on-demand/) document for
|
Pricing](https://aws.amazon.com/ec2/pricing/on-demand/) document for
|
||||||
more information. By default this option is disabled and Packer will set
|
more information. By default this option is disabled and Packer will set
|
||||||
up a [T2
|
up a [T2
|
||||||
Standard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-std.html)
|
Standard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-std.html)
|
||||||
instance instead.
|
instance instead.
|
||||||
|
|
||||||
To use T2 Unlimited you must use a T2 instance type, e.g. `t2.micro`.
|
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
|
Additionally, T2 Unlimited cannot be used in conjunction with Spot
|
||||||
Instances, e.g. when the `spot_price` option has been configured.
|
Instances, e.g. when the `spot_price` option has been configured.
|
||||||
Attempting to do so will cause an error.
|
Attempting to do so will cause an error.
|
||||||
|
|
||||||
!> **Warning!** Additional costs may be incurred by enabling T2
|
!> **Warning!** Additional costs may be incurred by enabling T2
|
||||||
Unlimited - even for instances that would usually qualify for the
|
Unlimited - even for instances that would usually qualify for the
|
||||||
[AWS Free Tier](https://aws.amazon.com/free/).
|
[AWS Free Tier](https://aws.amazon.com/free/).
|
||||||
|
|
||||||
- `iam_instance_profile` (string) - The name of an [IAM instance
|
- `iam_instance_profile` (string) - The name of an [IAM instance
|
||||||
profile](https://docs.aws.amazon.com/IAM/latest/UserGuide/instance-profiles.html)
|
profile](https://docs.aws.amazon.com/IAM/latest/UserGuide/instance-profiles.html)
|
||||||
to launch the EC2 instance with.
|
to launch the EC2 instance with.
|
||||||
|
|
||||||
- `skip_profile_validation` (bool) - Whether or not to check if the IAM instance profile exists. Defaults to false
|
- `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
|
- `temporary_iam_instance_profile_policy_document` (\*PolicyDocument) - Temporary IAM instance profile policy document
|
||||||
If IamInstanceProfile is specified it will be used instead. Example:
|
If IamInstanceProfile is specified it will be used instead. Example:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"Version": "2012-10-17",
|
"Version": "2012-10-17",
|
||||||
"Statement": [
|
"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),
|
||||||
|
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`](/docs/configuration/from-1.5/expressions#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
|
||||||
{
|
{
|
||||||
"Action": ["logs:*"],
|
"source_ami_filter": {
|
||||||
"Effect": "Allow",
|
"filters": {
|
||||||
"Resource": "*"
|
"virtualization-type": "hvm",
|
||||||
|
"name": "ubuntu/images/\*ubuntu-xenial-16.04-amd64-server-\*",
|
||||||
|
"root-device-type": "ebs"
|
||||||
|
},
|
||||||
|
"owners": ["099720109477"],
|
||||||
|
"most_recent": true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
```
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
- `shutdown_behavior` (string) - Automatically terminate instances on
|
This selects the most recent Ubuntu 16.04 HVM EBS AMI from Canonical. NOTE:
|
||||||
shutdown in case Packer exits ungracefully. Possible values are stop and
|
This will fail unless *exactly* one AMI is returned. In the above example,
|
||||||
terminate. Defaults to stop.
|
`most_recent` will cause this to succeed by selecting the newest image.
|
||||||
|
|
||||||
- `security_group_filter` (SecurityGroupFilterOptions) - Filters used to populate the `security_group_ids` field. Example:
|
- `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.
|
||||||
|
|
||||||
```json
|
- `owners` (array of strings) - Filters the images by their owner. You
|
||||||
{
|
may specify one or more AWS account IDs, "self" (which will use the
|
||||||
"security_group_filter": {
|
account whose credentials you are using to run Packer), or an AWS owner
|
||||||
"filters": {
|
alias: for example, `amazon`, `aws-marketplace`, or `microsoft`. This
|
||||||
"tag:Class": "packer"
|
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`](/docs/configuration/from-1.5/expressions#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 <UUID> 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 SG's with tag `Class` with the value `packer`.
|
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
|
- `filters` (map of strings) - filters used to select a `vpc_id`. NOTE:
|
||||||
`security_group_ids`. Any filter described in the docs for
|
This will fail unless *exactly* one VPC is returned. Any filter
|
||||||
[DescribeSecurityGroups](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html)
|
described in the docs for
|
||||||
is valid.
|
[DescribeVpcs](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html)
|
||||||
|
is valid.
|
||||||
|
|
||||||
`security_group_ids` take precedence over this.
|
`vpc_id` take precedence over this.
|
||||||
|
|
||||||
- `run_tags` (map[string]string) - Tags to apply to the instance that is that is _launched_ to create the
|
- `vpc_id` (string) - If launching into a VPC subnet, Packer needs the VPC ID
|
||||||
EBS volumes. This is a [template engine](/docs/templates/engine),
|
in order to create a temporary security group within the VPC. Requires
|
||||||
see [Build template data](#build-template-data) for more information.
|
subnet_id to be set. If this field is left blank, Packer will try to get
|
||||||
|
the VPC ID from the subnet_id.
|
||||||
|
|
||||||
- `run_tag` ([]{name string, value string}) - Same as [`run_tags`](#run_tags) but defined as a singular repeatable
|
- `windows_password_timeout` (duration string | ex: "1h5m2s") - The timeout for waiting for a Windows
|
||||||
block containing a `name` and a `value` field. In HCL2 mode the
|
password for Windows instances. Defaults to 20 minutes. Example value:
|
||||||
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
10m
|
||||||
will allow you to create those programatically.
|
|
||||||
|
|
||||||
- `security_group_id` (string) - The ID (not the name) of the security
|
- `ssh_interface` (string) - One of `public_ip`, `private_ip`, `public_dns`, or `private_dns`. If
|
||||||
group to assign to the instance. By default this is not set and Packer will
|
set, either the public IP address, private IP address, public DNS name
|
||||||
automatically create a new temporary security group to allow SSH access.
|
or private DNS name will be used as the host for SSH. The default behaviour
|
||||||
Note that if this is specified, you must be sure the security group allows
|
if inside a VPC is to use the public IP address if available, otherwise
|
||||||
access to the ssh_port given below.
|
the private IP address will be used. If not in a VPC the public DNS name
|
||||||
|
will be used. Also works for WinRM.
|
||||||
|
|
||||||
- `security_group_ids` ([]string) - A list of security groups as
|
Where Packer is configured for an outbound proxy but WinRM traffic
|
||||||
described above. Note that if this is specified, you must omit the
|
should be direct, `ssh_interface` must be set to `private_dns` and
|
||||||
security_group_id.
|
`<region>.compute.internal` included in the `NO_PROXY` environment
|
||||||
|
variable.
|
||||||
|
|
||||||
- `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`](/docs/configuration/from-1.5/expressions#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 <UUID> 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.
|
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
<!-- Code generated from the comments of the RunConfig struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `instance_type` (string) - The EC2 instance type to use while building the
|
||||||
AMI, such as t2.small.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<!-- Code generated from the comments of the SubnetFilterOptions struct in builder/amazon/common/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `most_free` (bool) - Most Free
|
||||||
- `random` (bool) - Random
|
- `random` (bool) - Random
|
|
@ -1,15 +1,15 @@
|
||||||
<!-- Code generated from the comments of the VaultAWSEngineOptions struct in builder/amazon/common/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the VaultAWSEngineOptions struct in builder/amazon/common/access_config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `name` (string) - Name
|
- `name` (string) - Name
|
||||||
- `role_arn` (string) - Role ARN
|
- `role_arn` (string) - Role ARN
|
||||||
- `ttl` (string) - Specifies the TTL for the use of the STS token. This
|
- `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
|
is specified as a string with a duration suffix. Valid only when
|
||||||
credential_type is assumed_role or federation_token. When not
|
credential_type is assumed_role or federation_token. When not
|
||||||
specified, the default_sts_ttl set for the role will be used. If that
|
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
|
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
|
places limits on the maximum TTL allowed. See the AWS documentation on
|
||||||
the DurationSeconds parameter for AssumeRole (for assumed_role
|
the DurationSeconds parameter for AssumeRole (for assumed_role
|
||||||
credential types) and GetFederationToken (for federation_token
|
credential types) and GetFederationToken (for federation_token
|
||||||
credential types) for more details.
|
credential types) for more details.
|
||||||
|
|
||||||
- `engine_name` (string) - Engine Name
|
- `engine_name` (string) - Engine Name
|
|
@ -1,33 +1,34 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/ebs/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
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
|
the Packer build see `launch_block_device_mappings` below. Your options
|
||||||
here may vary depending on the type of VM you use. See the
|
here may vary depending on the type of VM you use. See the
|
||||||
[BlockDevices](#block-devices-configuration) documentation for fields.
|
[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
|
- `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
|
instance store volumes or EBS volumes in addition to the root device
|
||||||
volume, the created AMI will contain block device mapping information
|
volume, the created AMI will contain block device mapping information
|
||||||
for those volumes. Amazon creates snapshots of the source instance's
|
for those volumes. Amazon creates snapshots of the source instance's
|
||||||
root volume and any other EBS volumes described here. When you launch an
|
root volume and any other EBS volumes described here. When you launch an
|
||||||
instance from this new AMI, the instance automatically launches with
|
instance from this new AMI, the instance automatically launches with
|
||||||
these additional volumes, and will restore them from snapshots taken
|
these additional volumes, and will restore them from snapshots taken
|
||||||
from the source instance. See the
|
from the source instance. See the
|
||||||
[BlockDevices](#block-devices-configuration) documentation for fields.
|
[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.
|
- `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
|
These tags are *not* applied to the resulting AMI unless they're
|
||||||
duplicated in `tags`. This is a [template
|
duplicated in `tags`. This is a [template
|
||||||
engine](/docs/templates/engine), see [Build template
|
engine](/docs/templates/engine), see [Build template
|
||||||
data](#build-template-data) for more information.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
<!-- Code generated from the comments of the BlockDevice struct in builder/amazon/ebssurrogate/block_device.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
will not contain block device mapping information for this volume. If
|
||||||
false, the block device will be mapped into the final created AMI. Set
|
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
|
this option to true if you need a block device mounted in the surrogate
|
||||||
AMI but not in the final created AMI.
|
AMI but not in the final created AMI.
|
||||||
|
|
|
@ -1,26 +1,27 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/ebssurrogate/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
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
|
the Packer build see `launch_block_device_mappings` below. Your options
|
||||||
here may vary depending on the type of VM you use. See the
|
here may vary depending on the type of VM you use. See the
|
||||||
[BlockDevices](#block-devices-configuration) documentation for fields.
|
[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
|
- `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
|
instance store volumes or EBS volumes in addition to the root device
|
||||||
volume, the created AMI will contain block device mapping information
|
volume, the created AMI will contain block device mapping information
|
||||||
for those volumes. Amazon creates snapshots of the source instance's
|
for those volumes. Amazon creates snapshots of the source instance's
|
||||||
root volume and any other EBS volumes described here. When you launch an
|
root volume and any other EBS volumes described here. When you launch an
|
||||||
instance from this new AMI, the instance automatically launches with
|
instance from this new AMI, the instance automatically launches with
|
||||||
these additional volumes, and will restore them from snapshots taken
|
these additional volumes, and will restore them from snapshots taken
|
||||||
from the source instance. See the
|
from the source instance. See the
|
||||||
[BlockDevices](#block-devices-configuration) documentation for fields.
|
[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.
|
- `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
|
These tags are *not* applied to the resulting AMI unless they're
|
||||||
duplicated in `tags`. This is a [template
|
duplicated in `tags`. This is a [template
|
||||||
engine](/docs/templates/engine), see [Build template
|
engine](/docs/templates/engine), see [Build template
|
||||||
data](#build-template-data) for more information.
|
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".
|
||||||
|
|
||||||
- `ami_architecture` (string) - what architecture to use when registering the
|
|
||||||
final AMI; valid options are "x86_64" or "arm64". Defaults to "x86_64".
|
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/ebssurrogate/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
like the mappings in `ami_block_device_mapping`, except with an
|
||||||
additional field:
|
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`.
|
||||||
|
|
||||||
- `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`.
|
|
||||||
|
|
|
@ -1,25 +1,26 @@
|
||||||
<!-- Code generated from the comments of the RootBlockDevice struct in builder/amazon/ebssurrogate/root_block_device.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `source_device_name` (string) - Source Device Name
|
||||||
- `device_name` (string) - The device name exposed to the instance (for
|
- `device_name` (string) - The device name exposed to the instance (for
|
||||||
example, /dev/sdh or xvdh). Required for every device in the block
|
example, /dev/sdh or xvdh). Required for every device in the block
|
||||||
device mapping.
|
device mapping.
|
||||||
|
|
||||||
- `delete_on_termination` (bool) - Indicates whether the EBS volume is
|
- `delete_on_termination` (bool) - Indicates whether the EBS volume is
|
||||||
deleted on instance termination. Default false. NOTE: If this
|
deleted on instance termination. Default false. NOTE: If this
|
||||||
value is not explicitly set to true and volumes are not cleaned up by
|
value is not explicitly set to true and volumes are not cleaned up by
|
||||||
an alternative method, additional volumes will accumulate after every
|
an alternative method, additional volumes will accumulate after every
|
||||||
build.
|
build.
|
||||||
|
|
||||||
- `iops` (int64) - The number of I/O operations per second (IOPS) that
|
- `iops` (int64) - The number of I/O operations per second (IOPS) that
|
||||||
the volume supports. See the documentation on
|
the volume supports. See the documentation on
|
||||||
IOPs
|
IOPs
|
||||||
for more information
|
for more information
|
||||||
|
|
||||||
- `volume_type` (string) - The volume type. gp2 for General Purpose
|
- `volume_type` (string) - The volume type. gp2 for General Purpose
|
||||||
(SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, st1 for
|
(SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, st1 for
|
||||||
Throughput Optimized HDD, sc1 for Cold HDD, and standard for
|
Throughput Optimized HDD, sc1 for Cold HDD, and standard for
|
||||||
Magnetic volumes.
|
Magnetic volumes.
|
||||||
|
|
||||||
|
- `volume_size` (int64) - The size of the volume, in GiB. Required if
|
||||||
|
not specifying a snapshot_id.
|
||||||
|
|
||||||
- `volume_size` (int64) - The size of the volume, in GiB. Required if
|
|
||||||
not specifying a snapshot_id.
|
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
<!-- Code generated from the comments of the BlockDevice struct in builder/amazon/ebsvolume/block_device.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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), see
|
completes. This is a [template engine](/docs/templates/engine), see
|
||||||
[Build template data](#build-template-data) for more information.
|
[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`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
||||||
|
will allow you to create those programatically.
|
||||||
|
|
||||||
- `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`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
|
||||||
will allow you to create those programatically.
|
|
||||||
|
|
|
@ -1,43 +1,44 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/ebsvolume/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `ena_support` (boolean) - Enable enhanced networking (ENA but not SriovNetSupport) on
|
||||||
HVM-compatible AMIs. If set, add `ec2:ModifyInstanceAttribute` to your
|
HVM-compatible AMIs. If set, add `ec2:ModifyInstanceAttribute` to your
|
||||||
AWS IAM policy. Note: you must make sure enhanced networking is enabled
|
AWS IAM policy. Note: you must make sure enhanced networking is enabled
|
||||||
on your instance. See [Amazon's documentation on enabling enhanced
|
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).
|
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
|
- `sriov_support` (bool) - Enable enhanced networking (SriovNetSupport but not ENA) on
|
||||||
HVM-compatible AMIs. If true, add `ec2:ModifyInstanceAttribute` to your
|
HVM-compatible AMIs. If true, add `ec2:ModifyInstanceAttribute` to your
|
||||||
AWS IAM policy. Note: you must make sure enhanced networking is enabled
|
AWS IAM policy. Note: you must make sure enhanced networking is enabled
|
||||||
on your instance. See [Amazon's documentation on enabling enhanced
|
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).
|
networking](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html#enabling_enhanced_networking).
|
||||||
Default `false`.
|
Default `false`.
|
||||||
|
|
||||||
- `ebs_volumes` (BlockDevices) - Add the block device mappings to the AMI. If you add instance store
|
- `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
|
volumes or EBS volumes in addition to the root device volume, the
|
||||||
created AMI will contain block device mapping information for those
|
created AMI will contain block device mapping information for those
|
||||||
volumes. Amazon creates snapshots of the source instance's root volume
|
volumes. Amazon creates snapshots of the source instance's root volume
|
||||||
and any other EBS volumes described here. When you launch an instance
|
and any other EBS volumes described here. When you launch an instance
|
||||||
from this new AMI, the instance automatically launches with these
|
from this new AMI, the instance automatically launches with these
|
||||||
additional volumes, and will restore them from snapshots taken from the
|
additional volumes, and will restore them from snapshots taken from the
|
||||||
source instance. See the [BlockDevices](#block-devices-configuration)
|
source instance. See the [BlockDevices](#block-devices-configuration)
|
||||||
documentation for fields.
|
documentation for fields.
|
||||||
|
|
||||||
- `run_volume_tags` (map[string]string) - Tags to apply to the volumes of the instance that is _launched_ to
|
- `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
|
create EBS Volumes. These tags will *not* appear in the tags of the
|
||||||
resulting EBS volumes unless they're duplicated under `tags` in the
|
resulting EBS volumes unless they're duplicated under `tags` in the
|
||||||
`ebs_volumes` setting. This is a [template
|
`ebs_volumes` setting. This is a [template
|
||||||
engine](/docs/templates/engine), see [Build template
|
engine](/docs/templates/engine), see [Build template
|
||||||
data](#build-template-data) for more information.
|
data](#build-template-data) for more information.
|
||||||
|
|
||||||
Note: The tags specified here will be _temporarily_ applied to volumes
|
Note: The tags specified here will be *temporarily* applied to volumes
|
||||||
specified in `ebs_volumes` - but only while the instance is being
|
specified in `ebs_volumes` - but only while the instance is being
|
||||||
created. Packer will replace all tags on the volume with the tags
|
created. Packer will replace all tags on the volume with the tags
|
||||||
configured in the `ebs_volumes` section as soon as the instance is
|
configured in the `ebs_volumes` section as soon as the instance is
|
||||||
reported as 'ready'.
|
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`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
||||||
|
will allow you to create those programatically.
|
||||||
|
|
||||||
- `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`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
|
||||||
will allow you to create those programatically.
|
|
||||||
|
|
|
@ -1,38 +1,39 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/instance/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
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
|
the Packer build see `launch_block_device_mappings` below. Your options
|
||||||
here may vary depending on the type of VM you use. See the
|
here may vary depending on the type of VM you use. See the
|
||||||
[BlockDevices](#block-devices-configuration) documentation for fields.
|
[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
|
- `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
|
instance store volumes or EBS volumes in addition to the root device
|
||||||
volume, the created AMI will contain block device mapping information
|
volume, the created AMI will contain block device mapping information
|
||||||
for those volumes. Amazon creates snapshots of the source instance's
|
for those volumes. Amazon creates snapshots of the source instance's
|
||||||
root volume and any other EBS volumes described here. When you launch an
|
root volume and any other EBS volumes described here. When you launch an
|
||||||
instance from this new AMI, the instance automatically launches with
|
instance from this new AMI, the instance automatically launches with
|
||||||
these additional volumes, and will restore them from snapshots taken
|
these additional volumes, and will restore them from snapshots taken
|
||||||
from the source instance. See the
|
from the source instance. See the
|
||||||
[BlockDevices](#block-devices-configuration) documentation for fields.
|
[BlockDevices](#block-devices-configuration) documentation for fields.
|
||||||
|
|
||||||
- `bundle_destination` (string) - The directory on the running instance where the bundled AMI will be
|
- `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
|
saved prior to uploading. By default this is /tmp. This directory must
|
||||||
exist and be writable.
|
exist and be writable.
|
||||||
|
|
||||||
- `bundle_prefix` (string) - The prefix for files created from bundling the root volume. By default
|
- `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
|
this is `image-{{timestamp}}`. The timestamp variable should be used to
|
||||||
make sure this is unique, otherwise it can collide with other created
|
make sure this is unique, otherwise it can collide with other created
|
||||||
AMIs by Packer in your account.
|
AMIs by Packer in your account.
|
||||||
|
|
||||||
- `bundle_upload_command` (string) - The command to use to upload the bundled volume. See the "custom bundle
|
- `bundle_upload_command` (string) - The command to use to upload the bundled volume. See the "custom bundle
|
||||||
commands" section below for more information.
|
commands" section below for more information.
|
||||||
|
|
||||||
- `bundle_vol_command` (string) - The command to use to bundle the volume. See the "custom bundle
|
- `bundle_vol_command` (string) - The command to use to bundle the volume. See the "custom bundle
|
||||||
commands" section below for more information.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/instance/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
the same as the access key. You can find your account ID in the security
|
||||||
credentials page of your AWS account.
|
credentials page of your AWS account.
|
||||||
|
|
||||||
- `s3_bucket` (string) - The name of the S3 bucket to upload the AMI. This bucket will be created
|
- `s3_bucket` (string) - The name of the S3 bucket to upload the AMI. This bucket will be created
|
||||||
if it doesn't exist.
|
if it doesn't exist.
|
||||||
|
|
||||||
- `x509_cert_path` (string) - The local path to a valid X509 certificate for your AWS account. This is
|
- `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
|
used for bundling the AMI. This X509 certificate must be registered with
|
||||||
your account from the security credentials page in the AWS console.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/amazon/instance/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
Config is the configuration that is chained through the steps and settable
|
||||||
from the template.
|
from the template.
|
||||||
|
|
|
@ -1,238 +1,241 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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_name_prefix` (string) - Capture
|
||||||
|
|
||||||
- `capture_container_name` (string) - Capture Container Name
|
- `capture_container_name` (string) - Capture Container Name
|
||||||
- `shared_image_gallery` (SharedImageGallery) - Use a [Shared Gallery
|
- `shared_image_gallery` (SharedImageGallery) - Use a [Shared Gallery
|
||||||
image](https://azure.microsoft.com/en-us/blog/announcing-the-public-preview-of-shared-image-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
|
as the source for this build. *VHD targets are incompatible with this
|
||||||
build type_ - the target must be a _Managed Image_.
|
build type* - the target must be a *Managed Image*.
|
||||||
|
|
||||||
"shared_image_gallery": {
|
"shared_image_gallery": {
|
||||||
"subscription": "00000000-0000-0000-0000-00000000000",
|
"subscription": "00000000-0000-0000-0000-00000000000",
|
||||||
"resource_group": "ResourceGroup",
|
"resource_group": "ResourceGroup",
|
||||||
"gallery_name": "GalleryName",
|
"gallery_name": "GalleryName",
|
||||||
"image_name": "ImageName",
|
"image_name": "ImageName",
|
||||||
"image_version": "1.0.0"
|
"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`](/docs/configuration/from-1.5/expressions#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"
|
||||||
}
|
}
|
||||||
"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`](/docs/configuration/from-1.5/expressions#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) -
|
`plan_name` (string) - The plan name, required. `plan_product` (string) -
|
||||||
The plan product, required. `plan_publisher` (string) - The plan publisher,
|
The plan product, required. `plan_publisher` (string) - The plan publisher,
|
||||||
required. `plan_promotion_code` (string) - Some images accept a promotion
|
required. `plan_promotion_code` (string) - Some images accept a promotion
|
||||||
code, optional.
|
code, optional.
|
||||||
|
|
||||||
Images created from the Marketplace with `plan_info` **must** specify
|
Images created from the Marketplace with `plan_info` **must** specify
|
||||||
`plan_info` whenever the image is deployed. The builder automatically adds
|
`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 to the image to ensure this information is not lost. The following
|
||||||
tags are added.
|
tags are added.
|
||||||
|
|
||||||
1. PlanName
|
1. PlanName
|
||||||
2. PlanProduct
|
2. PlanProduct
|
||||||
3. PlanPublisher
|
3. PlanPublisher
|
||||||
4. PlanPromotionCode
|
4. PlanPromotionCode
|
||||||
|
|
||||||
- `polling_duration_timeout` (duration string | ex: "1h5m2s") - The default PollingDuration for azure is 15mins, this property will override
|
- `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)
|
that value. See [Azure DefaultPollingDuration](https://godoc.org/github.com/Azure/go-autorest/autorest#pkg-constants)
|
||||||
If your Packer build is failing on the
|
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
|
ARM deployment step with the error `Original Error:
|
||||||
its default of "15m" (valid time units include `s` for seconds, `m` for
|
context deadline exceeded`, then you probably need to increase this timeout from
|
||||||
minutes, and `h` for hours.)
|
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
|
- `os_type` (string) - If either Linux or Windows is specified Packer will
|
||||||
automatically configure authentication credentials for the provisioned
|
automatically configure authentication credentials for the provisioned
|
||||||
machine. For Linux this configures an SSH authorized key. For Windows
|
machine. For Linux this configures an SSH authorized key. For Windows
|
||||||
this configures a WinRM certificate.
|
this configures a WinRM certificate.
|
||||||
|
|
||||||
- `os_disk_size_gb` (int32) - Specify the size of the OS disk in GB
|
- `os_disk_size_gb` (int32) - Specify the size of the OS disk in GB
|
||||||
(gigabytes). Values of zero or less than zero are ignored.
|
(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
|
- `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
|
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
|
number of additional disks and maximum size of a disk depends on the
|
||||||
configuration of your VM. See
|
configuration of your VM. See
|
||||||
[Windows](https://docs.microsoft.com/en-us/azure/virtual-machines/windows/about-disks-and-vhds)
|
[Windows](https://docs.microsoft.com/en-us/azure/virtual-machines/windows/about-disks-and-vhds)
|
||||||
or
|
or
|
||||||
[Linux](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/about-disks-and-vhds)
|
[Linux](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/about-disks-and-vhds)
|
||||||
for more information.
|
for more information.
|
||||||
|
|
||||||
For VHD builds the final artifacts will be named
|
For VHD builds the final artifacts will be named
|
||||||
`PREFIX-dataDisk-<n>.UUID.vhd` and stored in the specified capture
|
`PREFIX-dataDisk-<n>.UUID.vhd` and stored in the specified capture
|
||||||
container along side the OS disk. The additional disks are included in
|
container along side the OS disk. The additional disks are included in
|
||||||
the deployment template `PREFIX-vmTemplate.UUID`.
|
the deployment template `PREFIX-vmTemplate.UUID`.
|
||||||
|
|
||||||
For Managed build the final artifacts are included in the managed image.
|
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
|
The additional disk will have the same storage account type as the OS
|
||||||
disk, as specified with the `managed_image_storage_account_type`
|
disk, as specified with the `managed_image_storage_account_type`
|
||||||
setting.
|
setting.
|
||||||
|
|
||||||
- `disk_caching_type` (string) - Specify the disk caching type. Valid values
|
- `disk_caching_type` (string) - Specify the disk caching type. Valid values
|
||||||
are None, ReadOnly, and ReadWrite. The default value is ReadWrite.
|
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_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
|
allowed access to the VM. If provided, an Azure Network Security
|
||||||
Group will be created with corresponding rules and be bound to
|
Group will be created with corresponding rules and be bound to
|
||||||
the subnet of the VM.
|
the subnet of the VM.
|
||||||
Providing `allowed_inbound_ip_addresses` in combination with
|
Providing `allowed_inbound_ip_addresses` in combination with
|
||||||
`virtual_network_name` is not allowed.
|
`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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,37 +1,38 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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/)
|
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||||
for details.
|
for details.
|
||||||
|
|
||||||
CLI example `az vm image list-publishers --location westus`
|
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
|
- `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/)
|
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||||
for details.
|
for details.
|
||||||
|
|
||||||
CLI example
|
CLI example
|
||||||
`az vm image list-offers --location westus --publisher Canonical`
|
`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
|
- `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/)
|
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||||
for details.
|
for details.
|
||||||
|
|
||||||
CLI example
|
CLI example
|
||||||
`az vm image list-skus --location westus --publisher Canonical --offer UbuntuServer`
|
`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
|
- `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.
|
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
|
- `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.
|
not set image_publisher, image_offer, image_sku, or image_version.
|
||||||
If this value is set, the value
|
If this value is set, the value
|
||||||
`custom_managed_image_resource_group_name` must also be set. See
|
`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)
|
[documentation](https://docs.microsoft.com/en-us/azure/storage/storage-managed-disks-overview#images)
|
||||||
to learn more about managed 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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<!-- Code generated from the comments of the PlanInformation struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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_name` (string) - Plan Name
|
||||||
- `plan_product` (string) - Plan Product
|
- `plan_product` (string) - Plan Product
|
||||||
- `plan_publisher` (string) - Plan Publisher
|
- `plan_publisher` (string) - Plan Publisher
|
||||||
- `plan_promotion_code` (string) - Plan Promotion Code
|
- `plan_promotion_code` (string) - Plan Promotion Code
|
|
@ -1,11 +1,12 @@
|
||||||
<!-- Code generated from the comments of the SharedImageGallery struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the SharedImageGallery struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `subscription` (string) - Subscription
|
- `subscription` (string) - Subscription
|
||||||
- `resource_group` (string) - Resource Group
|
- `resource_group` (string) - Resource Group
|
||||||
- `gallery_name` (string) - Gallery Name
|
- `gallery_name` (string) - Gallery Name
|
||||||
- `image_name` (string) - Image Name
|
- `image_name` (string) - Image Name
|
||||||
- `image_version` (string) - Specify a specific version of an OS to boot from.
|
- `image_version` (string) - Specify a specific version of an OS to boot from.
|
||||||
Defaults to latest. There may be a difference in versions available
|
Defaults to latest. There may be a difference in versions available
|
||||||
across regions due to image synchronization latency. To ensure a consistent
|
across regions due to image synchronization latency. To ensure a consistent
|
||||||
version across regions set this value to one that is available in all
|
version across regions set this value to one that is available in all
|
||||||
regions where you are deploying.
|
regions where you are deploying.
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<!-- Code generated from the comments of the SharedImageGalleryDestination struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `resource_group` (string) - Sig Destination Resource Group
|
||||||
- `gallery_name` (string) - Sig Destination Gallery Name
|
- `gallery_name` (string) - Sig Destination Gallery Name
|
||||||
- `image_name` (string) - Sig Destination Image Name
|
- `image_name` (string) - Sig Destination Image Name
|
||||||
- `image_version` (string) - Sig Destination Image Version
|
- `image_version` (string) - Sig Destination Image Version
|
||||||
- `replication_regions` ([]string) - Sig Destination Replication Regions
|
- `replication_regions` ([]string) - Sig Destination Replication Regions
|
|
@ -1,49 +1,50 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/azure/chroot/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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`.
|
- `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
|
- `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
|
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}}`.
|
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.
|
- `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
|
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}}`.
|
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
|
- `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,
|
`-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.
|
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_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
|
- `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`
|
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.
|
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
|
- `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}}`.
|
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
|
- `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
|
some additional documentation which is in the "Chroot Mounts" section below. Please read that section
|
||||||
for more information on how to use this.
|
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
|
- `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
|
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.
|
`/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
|
- `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.
|
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,
|
- `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`
|
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)
|
- `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`.
|
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)
|
- `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`
|
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`
|
- `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`.
|
||||||
|
|
||||||
- `image_hyperv_generation` (string) - The [Hyper-V generation type](https://docs.microsoft.com/en-us/rest/api/compute/images/createorupdate#hypervgenerationtypes).
|
|
||||||
Defaults to `V1`.
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/azure/chroot/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `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.
|
||||||
|
|
||||||
- `image_resource_id` (string) - The image to create using this build.
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/azure/chroot/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
Config is the configuration that is chained through the steps and settable
|
||||||
from the template.
|
from the template.
|
||||||
|
|
|
@ -1,25 +1,26 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/azure/common/client/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `cloud_environment_name` (string) - One of Public, China, Germany, or
|
||||||
USGovernment. Defaults to Public. Long forms such as
|
USGovernment. Defaults to Public. Long forms such as
|
||||||
USGovernmentCloud and AzureUSGovernmentCloud are also supported.
|
USGovernmentCloud and AzureUSGovernmentCloud are also supported.
|
||||||
|
|
||||||
- `client_id` (string) - The application ID of the AAD Service Principal.
|
- `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.
|
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_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
|
- `client_cert_path` (string) - The path to a pem-encoded certificate that will be used to authenticate
|
||||||
as the specified AAD SP.
|
as the specified AAD SP.
|
||||||
|
|
||||||
- `client_jwt` (string) - A JWT bearer token for client auth (RFC 7523, Sec. 2.2) that will be used
|
- `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
|
to authenticate the AAD SP. Provides more control over token the expiration
|
||||||
when using certificate authentication than when using `client_cert_path`.
|
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.
|
- `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
|
- `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
|
`subscription_id` are associated. If not specified, `tenant_id` will be
|
||||||
looked up using `subscription_id`.
|
looked up using `subscription_id`.
|
||||||
|
|
||||||
|
- `subscription_id` (string) - The subscription to use.
|
||||||
|
|
||||||
- `subscription_id` (string) - The subscription to use.
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/azure/common/client/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
Config allows for various ways to authenticate Azure clients.
|
||||||
When `client_id` and `subscription_id` are specified, Packer will use the
|
When `client_id` and `subscription_id` are specified, Packer will use the
|
||||||
specified Azure Active Directoty (AAD) Service Principal (SP).
|
specified Azure Active Directoty (AAD) Service Principal (SP).
|
||||||
|
|
|
@ -1,108 +1,108 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/cloudstack/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `async_timeout` (duration string | ex: "1h5m2s") - The time duration to wait for async calls to
|
||||||
finish. Defaults to 30m.
|
finish. Defaults to 30m.
|
||||||
|
|
||||||
- `http_get_only` (bool) - Some cloud providers only allow HTTP GET calls
|
- `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
|
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.
|
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.
|
- `ssl_no_verify` (bool) - Set to true to skip SSL verification.
|
||||||
Defaults to false.
|
Defaults to false.
|
||||||
|
|
||||||
- `cidr_list` ([]string) - List of CIDR's that will have access to the new
|
- `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
|
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
|
connect to the instance. Defaults to [ "0.0.0.0/0" ]. Only required when
|
||||||
use_local_ip_address is false.
|
use_local_ip_address is false.
|
||||||
|
|
||||||
- `create_security_group` (bool) - If true a temporary security group
|
- `create_security_group` (bool) - If true a temporary security group
|
||||||
will be created which allows traffic towards the instance from the
|
will be created which allows traffic towards the instance from the
|
||||||
cidr_list. This option will be ignored if security_groups is also
|
cidr_list. This option will be ignored if security_groups is also
|
||||||
defined. Requires expunge set to true. Defaults to false.
|
defined. Requires expunge set to true. Defaults to false.
|
||||||
|
|
||||||
- `disk_offering` (string) - The name or ID of the disk offering used for the
|
- `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
|
instance. This option is only available (and also required) when using
|
||||||
source_iso.
|
source_iso.
|
||||||
|
|
||||||
- `disk_size` (int64) - The size (in GB) of the root disk of the new
|
- `disk_size` (int64) - The size (in GB) of the root disk of the new
|
||||||
instance. This option is only available when using source_template.
|
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
|
- `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
|
cache, requesting to check and detach ISO file (if any) currently
|
||||||
attached to a virtual machine. Defaults to `false`. This option is only
|
attached to a virtual machine. Defaults to `false`. This option is only
|
||||||
available when using `source_iso`.
|
available when using `source_iso`.
|
||||||
|
|
||||||
- `eject_iso_delay` (duration string | ex: "1h5m2s") - Configure the duration time to wait, making sure virtual machine is able
|
- `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`
|
to finish installing OS before it ejects safely. Requires `eject_iso`
|
||||||
set to `true` and this option is only available when using `source_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
|
- `expunge` (bool) - Set to true to expunge the instance when it is
|
||||||
destroyed. Defaults to false.
|
destroyed. Defaults to false.
|
||||||
|
|
||||||
- `hypervisor` (string) - The target hypervisor (e.g. XenServer, KVM) for
|
- `hypervisor` (string) - The target hypervisor (e.g. XenServer, KVM) for
|
||||||
the new template. This option is required when using source_iso.
|
the new template. This option is required when using source_iso.
|
||||||
|
|
||||||
- `instance_name` (string) - The name of the instance. Defaults to
|
- `instance_name` (string) - The name of the instance. Defaults to
|
||||||
"packer-UUID" where UUID is dynamically generated.
|
"packer-UUID" where UUID is dynamically generated.
|
||||||
|
|
||||||
- `instance_display_name` (string) - The display name of the instance. Defaults to "Created by Packer".
|
- `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
|
- `project` (string) - The name or ID of the project to deploy the instance
|
||||||
to.
|
to.
|
||||||
|
|
||||||
- `public_ip_address` (string) - The public IP address or it's ID used for
|
- `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
|
connecting any provisioners to. If not provided, a temporary public IP
|
||||||
address will be associated and released during the Packer run.
|
address will be associated and released during the Packer run.
|
||||||
|
|
||||||
- `public_port` (int) - The fixed port you want to configure in the port
|
- `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
|
forwarding rule. Set this attribute if you do not want to use the a random
|
||||||
public port.
|
public port.
|
||||||
|
|
||||||
- `security_groups` ([]string) - A list of security group IDs or
|
- `security_groups` ([]string) - A list of security group IDs or
|
||||||
names to associate the instance with.
|
names to associate the instance with.
|
||||||
|
|
||||||
- `prevent_firewall_changes` (bool) - Set to true to prevent network
|
- `prevent_firewall_changes` (bool) - Set to true to prevent network
|
||||||
ACLs or firewall rules creation. Defaults to false.
|
ACLs or firewall rules creation. Defaults to false.
|
||||||
|
|
||||||
- `temporary_keypair_name` (string) - The name of the temporary SSH key pair
|
- `temporary_keypair_name` (string) - The name of the temporary SSH key pair
|
||||||
to generate. By default, Packer generates a name that looks like
|
to generate. By default, Packer generates a name that looks like
|
||||||
`packer_<UUID>`, where `<UUID>` is a 36 character unique identifier.
|
`packer_<UUID>`, where `<UUID>` is a 36 character unique identifier.
|
||||||
|
|
||||||
- `use_local_ip_address` (bool) - Set to true to indicate that the
|
- `use_local_ip_address` (bool) - Set to true to indicate that the
|
||||||
provisioners should connect to the local IP address of the instance.
|
provisioners should connect to the local IP address of the instance.
|
||||||
|
|
||||||
- `user_data` (string) - User data to launch with the instance. This is a
|
- `user_data` (string) - User data to launch with the instance. This is a
|
||||||
template engine; see "User Data" bellow for
|
template engine; see "User Data" bellow for
|
||||||
more details. Packer will not automatically wait for a user script to
|
more details. Packer will not automatically wait for a user script to
|
||||||
finish before shutting down the instance this must be handled in a
|
finish before shutting down the instance this must be handled in a
|
||||||
provisioner.
|
provisioner.
|
||||||
|
|
||||||
- `user_data_file` (string) - Path to a file that will be used for the user
|
- `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
|
data when launching the instance. This file will be parsed as a template
|
||||||
engine see User Data bellow for more
|
engine see User Data bellow for more
|
||||||
details.
|
details.
|
||||||
|
|
||||||
- `template_name` (string) - The name of the new template. Defaults to
|
- `template_name` (string) - The name of the new template. Defaults to
|
||||||
`packer-{{timestamp}}` where timestamp will be the current time.
|
`packer-{{timestamp}}` where timestamp will be the current time.
|
||||||
|
|
||||||
- `template_display_text` (string) - The display text of the new template.
|
- `template_display_text` (string) - The display text of the new template.
|
||||||
Defaults to the template_name.
|
Defaults to the template_name.
|
||||||
|
|
||||||
- `template_featured` (bool) - Set to true to indicate that the template
|
- `template_featured` (bool) - Set to true to indicate that the template
|
||||||
is featured. Defaults to false.
|
is featured. Defaults to false.
|
||||||
|
|
||||||
- `template_public` (bool) - Set to true to indicate that the template
|
- `template_public` (bool) - Set to true to indicate that the template
|
||||||
is available for all accounts. Defaults to false.
|
is available for all accounts. Defaults to false.
|
||||||
|
|
||||||
- `template_password_enabled` (bool) - Set to true to indicate the
|
- `template_password_enabled` (bool) - Set to true to indicate the
|
||||||
template should be password enabled. Defaults to false.
|
template should be password enabled. Defaults to false.
|
||||||
|
|
||||||
- `template_requires_hvm` (bool) - Set to true to indicate the template
|
- `template_requires_hvm` (bool) - Set to true to indicate the template
|
||||||
requires hardware-assisted virtualization. Defaults to false.
|
requires hardware-assisted virtualization. Defaults to false.
|
||||||
|
|
||||||
- `template_scalable` (bool) - Set to true to indicate that the template
|
- `template_scalable` (bool) - Set to true to indicate that the template
|
||||||
contains tools to support dynamic scaling of VM cpu/memory. Defaults to
|
contains tools to support dynamic scaling of VM cpu/memory. Defaults to
|
||||||
false.
|
false.
|
||||||
|
|
||||||
- `template_tag` (string) -
|
- `template_tag` (string) -
|
||||||
- `tags` (map[string]string) - Tags
|
- `tags` (map[string]string) - Tags
|
|
@ -1,32 +1,33 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/cloudstack/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `api_url` (string) - The CloudStack API endpoint we will connect to. It can
|
||||||
also be specified via environment variable CLOUDSTACK_API_URL, if set.
|
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
|
- `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.
|
be specified via environment variable CLOUDSTACK_API_KEY, if set.
|
||||||
|
|
||||||
- `secret_key` (string) - The secret key used to sign all API requests. It
|
- `secret_key` (string) - The secret key used to sign all API requests. It
|
||||||
can also be specified via environment variable CLOUDSTACK_SECRET_KEY, if
|
can also be specified via environment variable CLOUDSTACK_SECRET_KEY, if
|
||||||
set.
|
set.
|
||||||
|
|
||||||
- `network` (string) - The name or ID of the network to connect the instance
|
- `network` (string) - The name or ID of the network to connect the instance
|
||||||
to.
|
to.
|
||||||
|
|
||||||
- `service_offering` (string) - The name or ID of the service offering used
|
- `service_offering` (string) - The name or ID of the service offering used
|
||||||
for the instance.
|
for the instance.
|
||||||
|
|
||||||
- `source_iso` (string) - The name or ID of an ISO that will be mounted
|
- `source_iso` (string) - The name or ID of an ISO that will be mounted
|
||||||
before booting the instance. This option is mutually exclusive with
|
before booting the instance. This option is mutually exclusive with
|
||||||
source_template. When using source_iso, both disk_offering and
|
source_template. When using source_iso, both disk_offering and
|
||||||
hypervisor are required.
|
hypervisor are required.
|
||||||
|
|
||||||
- `source_template` (string) - The name or ID of the template used as base
|
- `source_template` (string) - The name or ID of the template used as base
|
||||||
template for the instance. This option is mutually exclusive with
|
template for the instance. This option is mutually exclusive with
|
||||||
source_iso.
|
source_iso.
|
||||||
|
|
||||||
- `zone` (string) - The name or ID of the zone where the instance will be
|
- `zone` (string) - The name or ID of the zone where the instance will be
|
||||||
created.
|
created.
|
||||||
|
|
||||||
|
- `template_os` (string) - The name or ID of the template OS for the new
|
||||||
|
template that will be created.
|
||||||
|
|
||||||
- `template_os` (string) - The name or ID of the template OS for the new
|
|
||||||
template that will be created.
|
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/cloudstack/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
Config holds all the details needed to configure the builder.
|
||||||
|
|
|
@ -1,44 +1,46 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/digitalocean/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
using a DigitalOcean API compatible service. It can also be specified via
|
||||||
environment variable DIGITALOCEAN_API_URL.
|
environment variable DIGITALOCEAN_API_URL.
|
||||||
|
|
||||||
- `private_networking` (bool) - Set to true to enable private networking
|
- `private_networking` (bool) - Set to true to enable private networking
|
||||||
for the droplet being created. This defaults to false, or not enabled.
|
for the droplet being created. This defaults to false, or not enabled.
|
||||||
|
|
||||||
- `monitoring` (bool) - Set to true to enable monitoring for the droplet
|
- `monitoring` (bool) - Set to true to enable monitoring for the droplet
|
||||||
being created. This defaults to false, or not enabled.
|
being created. This defaults to false, or not enabled.
|
||||||
|
|
||||||
- `ipv6` (bool) - Set to true to enable ipv6 for the droplet being
|
- `ipv6` (bool) - Set to true to enable ipv6 for the droplet being
|
||||||
created. This defaults to false, or not enabled.
|
created. This defaults to false, or not enabled.
|
||||||
|
|
||||||
- `snapshot_name` (string) - The name of the resulting snapshot that will
|
- `snapshot_name` (string) - The name of the resulting snapshot that will
|
||||||
appear in your account. Defaults to `packer-{{timestamp}}` (see
|
appear in your account. Defaults to `packer-{{timestamp}}` (see
|
||||||
configuration templates for more info).
|
configuration templates for more info).
|
||||||
|
|
||||||
- `snapshot_regions` ([]string) - The regions of the resulting
|
- `snapshot_regions` ([]string) - The regions of the resulting
|
||||||
snapshot that will appear in your account.
|
snapshot that will appear in your account.
|
||||||
|
|
||||||
- `state_timeout` (duration string | ex: "1h5m2s") - The time to wait, as a duration string, for a
|
- `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
|
droplet to enter a desired state (such as "active") before timing out. The
|
||||||
default state timeout is "6m".
|
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
|
- `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
|
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
|
Publishing to Shared Image Gallery step with the error `Original Error:
|
||||||
Azure dashboard, then you probably need to increase this timeout from
|
context deadline exceeded`, but the image is present when you check your
|
||||||
its default of "60m" (valid time units include `s` for seconds, `m` for
|
Azure dashboard, then you probably need to increase this timeout from
|
||||||
minutes, and `h` for hours.)
|
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
|
- `droplet_name` (string) - The name assigned to the droplet. DigitalOcean
|
||||||
sets the hostname of the machine to this value.
|
sets the hostname of the machine to this value.
|
||||||
|
|
||||||
- `user_data` (string) - User data to launch with the Droplet. Packer will
|
- `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
|
not automatically wait for a user script to finish before shutting down the
|
||||||
instance this must be handled in a provisioner.
|
instance this must be handled in a provisioner.
|
||||||
|
|
||||||
- `user_data_file` (string) - Path to a file that will be used for the user
|
- `user_data_file` (string) - Path to a file that will be used for the user
|
||||||
data when launching the Droplet.
|
data when launching the Droplet.
|
||||||
|
|
||||||
|
- `tags` ([]string) - Tags to apply to the droplet when it is created
|
||||||
|
|
||||||
- `tags` ([]string) - Tags to apply to the droplet when it is created
|
|
||||||
|
|
|
@ -1,20 +1,21 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/digitalocean/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `api_token` (string) - The client TOKEN to use to access your account. It
|
||||||
can also be specified via environment variable DIGITALOCEAN_API_TOKEN, if
|
can also be specified via environment variable DIGITALOCEAN_API_TOKEN, if
|
||||||
set.
|
set.
|
||||||
|
|
||||||
- `region` (string) - The name (or slug) of the region to launch the droplet
|
- `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.
|
in. Consequently, this is the region where the snapshot will be available.
|
||||||
See
|
See
|
||||||
https://developers.digitalocean.com/documentation/v2/#list-all-regions
|
https://developers.digitalocean.com/documentation/v2/#list-all-regions
|
||||||
for the accepted region names/slugs.
|
for the accepted region names/slugs.
|
||||||
|
|
||||||
- `size` (string) - The name (or slug) of the droplet size to use. See
|
- `size` (string) - The name (or slug) of the droplet size to use. See
|
||||||
https://developers.digitalocean.com/documentation/v2/#list-all-sizes
|
https://developers.digitalocean.com/documentation/v2/#list-all-sizes
|
||||||
for the accepted size names/slugs.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,18 +1,19 @@
|
||||||
<!-- Code generated from the comments of the AwsAccessConfig struct in builder/docker/ecr_login.go; DO NOT EDIT MANUALLY -->
|
<!-- 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_access_key` (string) - The AWS access key used to communicate with
|
||||||
AWS. Learn how to set
|
AWS. Learn how to set
|
||||||
this.
|
this.
|
||||||
|
|
||||||
- `aws_secret_key` (string) - The AWS secret key used to communicate with
|
- `aws_secret_key` (string) - The AWS secret key used to communicate with
|
||||||
AWS. Learn how to set
|
AWS. Learn how to set
|
||||||
this.
|
this.
|
||||||
|
|
||||||
- `aws_token` (string) - The AWS access token to use. This is different from
|
- `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
|
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
|
probably don't need it. This will also be read from the AWS_SESSION_TOKEN
|
||||||
environmental variable.
|
environmental variable.
|
||||||
|
|
||||||
|
- `aws_profile` (string) - The AWS shared credentials profile used to
|
||||||
|
communicate with AWS. Learn how to set
|
||||||
|
this.
|
||||||
|
|
||||||
- `aws_profile` (string) - The AWS shared credentials profile used to
|
|
||||||
communicate with AWS. Learn how to set
|
|
||||||
this.
|
|
||||||
|
|
|
@ -1,59 +1,62 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/docker/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `author` (string) - Set the author (e-mail) of a commit.
|
||||||
|
|
||||||
- `changes` ([]string) - Dockerfile instructions to add to the commit. Example of instructions
|
- `changes` ([]string) - Dockerfile instructions to add to the commit. Example of instructions
|
||||||
are CMD, ENTRYPOINT, ENV, and EXPOSE. Example: [ "USER ubuntu", "WORKDIR
|
are CMD, ENTRYPOINT, ENV, and EXPOSE. Example: [ "USER ubuntu", "WORKDIR
|
||||||
/app", "EXPOSE 8080" ]
|
/app", "EXPOSE 8080" ]
|
||||||
|
|
||||||
- `container_dir` (string) - The directory inside container to mount temp directory from host server
|
- `container_dir` (string) - The directory inside container to mount temp directory from host server
|
||||||
for work [file provisioner](/docs/provisioners/file). This defaults
|
for work [file provisioner](/docs/provisioners/file). This defaults
|
||||||
to c:/packer-files on windows and /packer-files on other systems.
|
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
|
- `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
|
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.
|
permission errors trying to run the shell or other provisioners.
|
||||||
|
|
||||||
- `privileged` (bool) - If true, run the docker container with the `--privileged` flag. This
|
- `privileged` (bool) - If true, run the docker container with the `--privileged` flag. This
|
||||||
defaults to false if not set.
|
defaults to false if not set.
|
||||||
|
|
||||||
- `pull` (bool) - If true, the configured image will be pulled using `docker pull` prior
|
- `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
|
to use. Otherwise, it is assumed the image already exists and can be
|
||||||
used. This defaults to true if not set.
|
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
|
- `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. By default this is set to `["-d", "-i", "-t",
|
||||||
container, and `["-d", "-i", "-t", "--entrypoint=powershell", "--", "{{.Image}}"]` if you are running a windows container. `{{.Image}}` is a
|
"--entrypoint=/bin/sh", "--", "{{.Image}}"]` if you are using a linux
|
||||||
template variable that corresponds to the image template option. Passing
|
container, and `["-d", "-i", "-t", "--entrypoint=powershell", "--",
|
||||||
the entrypoint option this way will make it the default entrypoint of
|
"{{.Image}}"]` if you are running a windows container. `{{.Image}}` is a
|
||||||
the resulting image, so running docker run -it --rm will start the
|
template variable that corresponds to the image template option. Passing
|
||||||
docker image from the /bin/sh shell interpreter; you could run a script
|
the entrypoint option this way will make it the default entrypoint of
|
||||||
or another shell by running docker run -it --rm -c /bin/bash. If your
|
the resulting image, so running docker run -it --rm will start the
|
||||||
docker image embeds a binary intended to be run often, you should
|
docker image from the /bin/sh shell interpreter; you could run a script
|
||||||
consider changing the default entrypoint to point to it.
|
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
|
- `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.
|
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
|
- `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
|
container is running as. If false, the owner will depend on the version
|
||||||
of docker installed in the system. Defaults to true.
|
of docker installed in the system. Defaults to true.
|
||||||
|
|
||||||
- `windows_container` (bool) - If "true", tells Packer that you are building a Windows container
|
- `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
|
running on a windows host. This is necessary for building Windows
|
||||||
containers, because our normal docker bindings do not work for them.
|
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
|
- `login` (bool) - This is used to login to dockerhub to pull a private base container. For
|
||||||
pushing to dockerhub, see the docker post-processors
|
pushing to dockerhub, see the docker post-processors
|
||||||
|
|
||||||
- `login_password` (string) - The password to use to authenticate to login.
|
- `login_password` (string) - The password to use to authenticate to login.
|
||||||
|
|
||||||
- `login_server` (string) - The server address to login to.
|
- `login_server` (string) - The server address to login to.
|
||||||
|
|
||||||
- `login_username` (string) - The username to use to authenticate to login.
|
- `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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/docker/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `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
|
- `discard` (bool) - Throw away the container when the build is complete. This is useful for
|
||||||
the [artifice
|
the [artifice
|
||||||
post-processor](/docs/post-processors/artifice).
|
post-processor](/docs/post-processors/artifice).
|
||||||
|
|
||||||
- `export_path` (string) - The path where the final container will be exported as a tar file.
|
- `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
|
- `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.
|
will be pulled from the Docker registry if it doesn't already exist.
|
||||||
|
|
||||||
|
- `message` (string) - Set a message for the commit.
|
||||||
|
|
||||||
- `message` (string) - Set a message for the commit.
|
|
||||||
|
|
|
@ -1,139 +1,139 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/googlecompute/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
run Packer on a GCE instance with a service account. Instructions for
|
||||||
creating the file or using service accounts are above.
|
creating the file or using service accounts are above.
|
||||||
|
|
||||||
- `accelerator_type` (string) - Full or partial URL of the guest accelerator type. GPU accelerators can
|
- `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.
|
only be used with `"on_host_maintenance": "TERMINATE"` option set.
|
||||||
Example:
|
Example:
|
||||||
`"projects/project_id/zones/europe-west1-b/acceleratorTypes/nvidia-tesla-k80"`
|
`"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.
|
- `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
|
- `address` (string) - The name of a pre-allocated static external IP address. Note, must be
|
||||||
the name and not the actual IP address.
|
the name and not the actual IP address.
|
||||||
|
|
||||||
- `disable_default_service_account` (bool) - If true, the default service account will not be used if
|
- `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 is not specified. Set this value to true and omit
|
||||||
service_account_email to provision a VM with no service account.
|
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_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_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.
|
- `disk_type` (string) - Type of disk used to back your instance, like pd-ssd or pd-standard.
|
||||||
Defaults to pd-standard.
|
Defaults to pd-standard.
|
||||||
|
|
||||||
- `image_name` (string) - The unique name of the resulting image. Defaults to
|
- `image_name` (string) - The unique name of the resulting image. Defaults to
|
||||||
`packer-{{timestamp}}`.
|
`packer-{{timestamp}}`.
|
||||||
|
|
||||||
- `image_description` (string) - The description of the resulting image.
|
- `image_description` (string) - The description of the resulting image.
|
||||||
|
|
||||||
- `image_encryption_key` (\*CustomerEncryptionKey) - Image encryption key to apply to the created image. Possible values:
|
- `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.
|
||||||
|
|
||||||
- kmsKeyName - The name of the encryption key that is stored in Google Cloud KMS.
|
example:
|
||||||
- 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"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
```json
|
- `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
|
||||||
"kmsKeyName": "projects/${project}/locations/${region}/keyRings/computeEngine/cryptoKeys/computeEngine/cryptoKeyVersions/4"
|
image name. The image family always returns its latest image that is not
|
||||||
}
|
deprecated.
|
||||||
```
|
|
||||||
|
|
||||||
- `image_family` (string) - The name of the image family to which the resulting image belongs. You
|
- `image_labels` (map[string]string) - Key/value pair labels to apply to the created image.
|
||||||
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.
|
||||||
|
|
||||||
- `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}}`.
|
||||||
|
|
||||||
- `instance_name` (string) - A name to give the launched instance. Beware that this must be unique.
|
- `labels` (map[string]string) - Key/value pair labels to apply to the launched instance.
|
||||||
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".
|
||||||
|
|
||||||
- `machine_type` (string) - The machine type. Defaults to "n1-standard-1".
|
- `metadata` (map[string]string) - Metadata applied to the launched instance.
|
||||||
|
|
||||||
- `metadata` (map[string]string) - Metadata applied to the launched instance.
|
- `metadata_files` (map[string]string) - Metadata applied to the launched instance. Values are files.
|
||||||
|
|
||||||
- `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)
|
||||||
|
|
||||||
- `min_cpu_platform` (string) - A Minimum CPU Platform for VM Instance. Availability and default CPU
|
- `network` (string) - The Google Compute network id or URL to use for the launched instance.
|
||||||
platforms vary across zones, based on the hardware available in each GCP
|
Defaults to "default". If the value is not a URL, it will be
|
||||||
zone.
|
interpolated to
|
||||||
[Details](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
|
projects/((network_project_id))/global/networks/((network)). This value
|
||||||
|
is not required if a subnet is specified.
|
||||||
|
|
||||||
- `network` (string) - The Google Compute network id or URL to use for the launched instance.
|
- `network_project_id` (string) - The project ID for the network and subnetwork to use for launched
|
||||||
Defaults to "default". If the value is not a URL, it will be
|
instance. Defaults to project_id.
|
||||||
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
|
- `omit_external_ip` (bool) - If true, the instance will not have an external IP. use_internal_ip must
|
||||||
instance. Defaults to project_id.
|
be true if this property is true.
|
||||||
|
|
||||||
- `omit_external_ip` (bool) - If true, the instance will not have an external IP. use_internal_ip must
|
- `on_host_maintenance` (string) - Sets Host Maintenance Option. Valid choices are `MIGRATE` and
|
||||||
be true if this property is true.
|
`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`
|
||||||
|
|
||||||
- `on_host_maintenance` (string) - Sets Host Maintenance Option. Valid choices are `MIGRATE` and
|
- `preemptible` (bool) - If true, launch a preemptible instance.
|
||||||
`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".
|
||||||
|
|
||||||
- `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.
|
||||||
|
|
||||||
- `region` (string) - The region in which to launch the instance. Defaults to the region
|
- `scopes` ([]string) - The service account scopes for launched
|
||||||
hosting the specified zone.
|
instance. Defaults to:
|
||||||
|
|
||||||
- `scopes` ([]string) - The service account scopes for launched
|
```json
|
||||||
instance. Defaults to:
|
[
|
||||||
|
"https://www.googleapis.com/auth/userinfo.email",
|
||||||
|
"https://www.googleapis.com/auth/compute",
|
||||||
|
"https://www.googleapis.com/auth/devstorage.full_control"
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
```json
|
- `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
|
||||||
"https://www.googleapis.com/auth/userinfo.email",
|
is true.
|
||||||
"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
|
- `source_image_project_id` (string) - The project ID of the project containing the source image.
|
||||||
project's default service account unless disable_default_service_account
|
|
||||||
is true.
|
|
||||||
|
|
||||||
- `source_image_project_id` (string) - The project ID of the project containing 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.
|
||||||
|
|
||||||
- `startup_script_file` (string) - The path to a startup script to run on the VM from which the image will
|
- `subnetwork` (string) - The Google Compute subnetwork id or URL to use for the launched
|
||||||
be made.
|
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))
|
||||||
|
|
||||||
- `subnetwork` (string) - The Google Compute subnetwork id or URL to use for the launched
|
- `tags` ([]string) - Assign network tags to apply firewall rules to VM instance.
|
||||||
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.
|
||||||
|
|
||||||
- `use_internal_ip` (bool) - If true, use the instance's internal IP instead of its external IP
|
- `vault_gcp_oauth_engine` (string) - Can be set instead of account_file. If set, this builder will use
|
||||||
during building.
|
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
|
||||||
|
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",`
|
||||||
|
|
||||||
- `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
|
|
||||||
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",`
|
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/googlecompute/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `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
|
- `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
|
specify source_image_family instead. If both source_image and
|
||||||
source_image_family are specified, source_image takes precedence.
|
source_image_family are specified, source_image takes precedence.
|
||||||
Example: "debian-8-jessie-v20161027"
|
Example: "debian-8-jessie-v20161027"
|
||||||
|
|
||||||
- `source_image_family` (string) - The source image family to use to create the new image from. The image
|
- `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:
|
family always returns its latest image that is not deprecated. Example:
|
||||||
"debian-8".
|
"debian-8".
|
||||||
|
|
||||||
|
- `zone` (string) - The zone in which to launch the instance used to create the image.
|
||||||
|
Example: "us-central1-a"
|
||||||
|
|
||||||
- `zone` (string) - The zone in which to launch the instance used to create the image.
|
|
||||||
Example: "us-central1-a"
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/googlecompute/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
Config is the configuration structure for the GCE builder. It stores
|
||||||
both the publicly settable state as well as the privately generated
|
both the publicly settable state as well as the privately generated
|
||||||
state of the config object.
|
state of the config object.
|
||||||
|
|
|
@ -1,81 +1,82 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/hyperone/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `api_url` (string) - Custom API endpoint URL, compatible with HyperOne.
|
||||||
It can also be specified via environment variable HYPERONE_API_URL.
|
It can also be specified via environment variable HYPERONE_API_URL.
|
||||||
|
|
||||||
- `token_login` (string) - Login (an e-mail) on HyperOne platform. Set this
|
- `token_login` (string) - Login (an e-mail) on HyperOne platform. Set this
|
||||||
if you want to fetch the token by SSH authentication.
|
if you want to fetch the token by SSH authentication.
|
||||||
|
|
||||||
- `state_timeout` (duration string | ex: "1h5m2s") - Timeout for waiting on the API to complete
|
- `state_timeout` (duration string | ex: "1h5m2s") - Timeout for waiting on the API to complete
|
||||||
a request. Defaults to 5m.
|
a request. Defaults to 5m.
|
||||||
|
|
||||||
- `image_name` (string) - The name of the resulting image. Defaults to
|
- `image_name` (string) - The name of the resulting image. Defaults to
|
||||||
`packer-{{timestamp}}`
|
`packer-{{timestamp}}`
|
||||||
(see configuration templates for more info).
|
(see configuration templates for more info).
|
||||||
|
|
||||||
- `image_description` (string) - The description of the resulting image.
|
- `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_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
|
- `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
|
block containing a `name` and a `value` field. In HCL2 mode the
|
||||||
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
||||||
will allow you to create those programatically.
|
will allow you to create those programatically.
|
||||||
|
|
||||||
- `image_service` (string) - The service of the resulting image.
|
- `image_service` (string) - The service of the resulting image.
|
||||||
|
|
||||||
- `vm_name` (string) - The name of the created server.
|
- `vm_name` (string) - The name of the created server.
|
||||||
|
|
||||||
- `vm_tags` (map[string]string) - Key/value pair tags to
|
- `vm_tags` (map[string]string) - Key/value pair tags to
|
||||||
add to the created server.
|
add to the created server.
|
||||||
|
|
||||||
- `vm_tag` ([]{name string, value string}) - Same as [`vm_tags`](#vm_tags) but defined as a singular repeatable block
|
- `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
|
containing a `name` and a `value` field. In HCL2 mode the
|
||||||
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
[`dynamic_block`](/docs/configuration/from-1.5/expressions#dynamic-blocks)
|
||||||
will allow you to create those programatically.
|
will allow you to create those programatically.
|
||||||
|
|
||||||
- `disk_name` (string) - The name of the created disk.
|
- `disk_name` (string) - The name of the created disk.
|
||||||
|
|
||||||
- `disk_type` (string) - The type of the created disk. Defaults to ssd.
|
- `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.
|
- `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
|
- `private_ip` (string) - The ID of the private IP within chosen network
|
||||||
that should be assigned to the created server.
|
that should be assigned to the created server.
|
||||||
|
|
||||||
- `public_ip` (string) - The ID of the public IP that should be assigned to
|
- `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
|
the created server. If network is chosen, the public IP will be associated
|
||||||
with server's private IP.
|
with server's private IP.
|
||||||
|
|
||||||
- `public_netadp_service` (string) - Custom service of public network adapter.
|
- `public_netadp_service` (string) - Custom service of public network adapter.
|
||||||
Can be useful when using custom api_url. Defaults to public.
|
Can be useful when using custom api_url. Defaults to public.
|
||||||
|
|
||||||
- `chroot_disk` (bool) - Chroot Disk
|
- `chroot_disk` (bool) - Chroot Disk
|
||||||
- `chroot_disk_size` (float32) - Chroot Disk Size
|
- `chroot_disk_size` (float32) - Chroot Disk Size
|
||||||
- `chroot_disk_type` (string) - Chroot Disk Type
|
- `chroot_disk_type` (string) - Chroot Disk Type
|
||||||
- `chroot_mount_path` (string) - Chroot Mount Path
|
- `chroot_mount_path` (string) - Chroot Mount Path
|
||||||
- `chroot_mounts` ([][]string) - Chroot Mounts
|
- `chroot_mounts` ([][]string) - Chroot Mounts
|
||||||
- `chroot_copy_files` ([]string) - Chroot Copy Files
|
- `chroot_copy_files` ([]string) - Chroot Copy Files
|
||||||
- `chroot_command_wrapper` (string) - How to run shell commands. This defaults to `{{.Command}}`. This may be
|
- `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
|
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
|
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 variable is replaced with the command to be run. Defaults to
|
||||||
`{{.Command}}`.
|
`{{.Command}}`.
|
||||||
|
|
||||||
- `mount_options` ([]string) - Mount Options
|
- `mount_options` ([]string) - Mount Options
|
||||||
- `mount_partition` (string) - Mount Partition
|
- `mount_partition` (string) - Mount Partition
|
||||||
- `pre_mount_commands` ([]string) - A series of commands to execute after attaching the root volume and
|
- `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
|
before mounting the chroot. This is not required unless using
|
||||||
from_scratch. If so, this should include any partitioning and filesystem
|
from_scratch. If so, this should include any partitioning and filesystem
|
||||||
creation commands. The path to the device is provided by `{{.Device}}`.
|
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
|
- `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
|
root device and before the extra mount and copy steps. The device and
|
||||||
mount path are provided by `{{.Device}}` and `{{.MountPath}}`.
|
mount path are provided by `{{.Device}}` and `{{.MountPath}}`.
|
||||||
|
|
||||||
- `ssh_keys` ([]string) - List of SSH keys by name or id to be added
|
- `ssh_keys` ([]string) - List of SSH keys by name or id to be added
|
||||||
to the server on launch.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/hyperone/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `token` (string) - The authentication token used to access your account.
|
||||||
This can be either a session token or a service account token.
|
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:
|
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
|
- `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
|
only if using session tokens. It should be skipped when using service
|
||||||
account authentication.
|
account authentication.
|
||||||
|
|
||||||
- `source_image` (string) - ID or name of the image to launch server from.
|
- `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.
|
- `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.
|
||||||
|
|
||||||
- `disk_size` (float32) - Size of the created disk, in GiB.
|
|
||||||
|
|
|
@ -1,128 +1,127 @@
|
||||||
<!-- Code generated from the comments of the CommonConfig struct in builder/hyperv/common/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `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
|
Recommended disk block size for Linux hyper-v guests is 1 MiB. This
|
||||||
defaults to "32" MiB.
|
defaults to "32" MiB.
|
||||||
|
|
||||||
- `memory` (uint) - The amount, in megabytes, of RAM to assign to the
|
- `memory` (uint) - The amount, in megabytes, of RAM to assign to the
|
||||||
VM. By default, this is 1 GB.
|
VM. By default, this is 1 GB.
|
||||||
|
|
||||||
- `secondary_iso_images` ([]string) - A list of ISO paths to
|
- `secondary_iso_images` ([]string) - A list of ISO paths to
|
||||||
attach to a VM when it is booted. This is most useful for unattended
|
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
|
Windows installs, which look for an Autounattend.xml file on removable
|
||||||
media. By default, no secondary ISO will be attached.
|
media. By default, no secondary ISO will be attached.
|
||||||
|
|
||||||
- `disk_additional_size` ([]uint) - The size or sizes of any
|
- `disk_additional_size` ([]uint) - The size or sizes of any
|
||||||
additional hard disks for the VM in megabytes. If this is not specified
|
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
|
then the VM will only contain a primary hard disk. Additional drives
|
||||||
will be attached to the SCSI interface only. The builder uses
|
will be attached to the SCSI interface only. The builder uses
|
||||||
expandable rather than fixed-size virtual hard disks, so the actual
|
expandable rather than fixed-size virtual hard disks, so the actual
|
||||||
file representing the disk will not use the full size unless it is
|
file representing the disk will not use the full size unless it is
|
||||||
full.
|
full.
|
||||||
|
|
||||||
- `guest_additions_mode` (string) - If set to attach then attach and
|
- `guest_additions_mode` (string) - If set to attach then attach and
|
||||||
mount the ISO image specified in guest_additions_path. If set to
|
mount the ISO image specified in guest_additions_path. If set to
|
||||||
none then guest additions are not attached and mounted; This is the
|
none then guest additions are not attached and mounted; This is the
|
||||||
default.
|
default.
|
||||||
|
|
||||||
- `guest_additions_path` (string) - The path to the ISO image for guest
|
- `guest_additions_path` (string) - The path to the ISO image for guest
|
||||||
additions.
|
additions.
|
||||||
|
|
||||||
- `vm_name` (string) - This is the name of the new virtual machine,
|
- `vm_name` (string) - This is the name of the new virtual machine,
|
||||||
without the file extension. By default this is "packer-BUILDNAME",
|
without the file extension. By default this is "packer-BUILDNAME",
|
||||||
where "BUILDNAME" is the name of the build.
|
where "BUILDNAME" is the name of the build.
|
||||||
|
|
||||||
- `switch_name` (string) - The name of the switch to connect the virtual
|
- `switch_name` (string) - The name of the switch to connect the virtual
|
||||||
machine to. By default, leaving this value unset will cause Packer to
|
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
|
try and determine the switch to use by looking for an external switch
|
||||||
that is up and running.
|
that is up and running.
|
||||||
|
|
||||||
- `switch_vlan_id` (string) - This is the VLAN of the virtual switch's
|
- `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
|
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
|
set on the switch's network card. If this value is set it should match
|
||||||
the VLAN specified in by vlan_id.
|
the VLAN specified in by vlan_id.
|
||||||
|
|
||||||
- `mac_address` (string) - This allows a specific MAC address to be used on
|
- `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
|
the default virtual network card. The MAC address must be a string with
|
||||||
no delimiters, for example "0000deadbeef".
|
no delimiters, for example "0000deadbeef".
|
||||||
|
|
||||||
- `vlan_id` (string) - This is the VLAN of the virtual machine's network
|
- `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
|
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.
|
then VLANs are not set on the virtual machine's network card.
|
||||||
|
|
||||||
- `cpus` (uint) - The number of CPUs the virtual machine should use. If
|
- `cpus` (uint) - The number of CPUs the virtual machine should use. If
|
||||||
this isn't specified, the default is 1 CPU.
|
this isn't specified, the default is 1 CPU.
|
||||||
|
|
||||||
- `generation` (uint) - The Hyper-V generation for the virtual machine. By
|
- `generation` (uint) - The Hyper-V generation for the virtual machine. By
|
||||||
default, this is 1. Generation 2 Hyper-V virtual machines do not support
|
default, this is 1. Generation 2 Hyper-V virtual machines do not support
|
||||||
floppy drives. In this scenario use secondary_iso_images instead. Hard
|
floppy drives. In this scenario use secondary_iso_images instead. Hard
|
||||||
drives and DVD drives will also be SCSI and not IDE.
|
drives and DVD drives will also be SCSI and not IDE.
|
||||||
|
|
||||||
- `enable_mac_spoofing` (bool) - If true enable MAC address spoofing
|
- `enable_mac_spoofing` (bool) - If true enable MAC address spoofing
|
||||||
for the virtual machine. This defaults to false.
|
for the virtual machine. This defaults to false.
|
||||||
|
|
||||||
- `enable_dynamic_memory` (bool) - If true enable dynamic memory for
|
- `enable_dynamic_memory` (bool) - If true enable dynamic memory for
|
||||||
the virtual machine. This defaults to false.
|
the virtual machine. This defaults to false.
|
||||||
|
|
||||||
- `enable_secure_boot` (bool) - If true enable secure boot for the
|
- `enable_secure_boot` (bool) - If true enable secure boot for the
|
||||||
virtual machine. This defaults to false. See secure_boot_template
|
virtual machine. This defaults to false. See secure_boot_template
|
||||||
below for additional settings.
|
below for additional settings.
|
||||||
|
|
||||||
- `secure_boot_template` (string) - The secure boot template to be
|
- `secure_boot_template` (string) - The secure boot template to be
|
||||||
configured. Valid values are "MicrosoftWindows" (Windows) or
|
configured. Valid values are "MicrosoftWindows" (Windows) or
|
||||||
"MicrosoftUEFICertificateAuthority" (Linux). This only takes effect if
|
"MicrosoftUEFICertificateAuthority" (Linux). This only takes effect if
|
||||||
enable_secure_boot is set to "true". This defaults to "MicrosoftWindows".
|
enable_secure_boot is set to "true". This defaults to "MicrosoftWindows".
|
||||||
|
|
||||||
- `enable_virtualization_extensions` (bool) - If true enable
|
- `enable_virtualization_extensions` (bool) - If true enable
|
||||||
virtualization extensions for the virtual machine. This defaults to
|
virtualization extensions for the virtual machine. This defaults to
|
||||||
false. For nested virtualization you need to enable MAC spoofing,
|
false. For nested virtualization you need to enable MAC spoofing,
|
||||||
disable dynamic memory and have at least 4GB of RAM assigned to the
|
disable dynamic memory and have at least 4GB of RAM assigned to the
|
||||||
virtual machine.
|
virtual machine.
|
||||||
|
|
||||||
- `temp_path` (string) - The location under which Packer will create a directory to house all the
|
- `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
|
VM files and folders during the build. By default `%TEMP%` is used
|
||||||
which, for most systems, will evaluate to
|
which, for most systems, will evaluate to
|
||||||
`%USERPROFILE%/AppData/Local/Temp`.
|
`%USERPROFILE%/AppData/Local/Temp`.
|
||||||
|
|
||||||
The build directory housed under `temp_path` will have a name similar to
|
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
|
`packerhv1234567`. The seven digit number at the end of the name is
|
||||||
automatically generated by Packer to ensure the directory name is
|
automatically generated by Packer to ensure the directory name is
|
||||||
unique.
|
unique.
|
||||||
|
|
||||||
- `configuration_version` (string) - This allows you to set the vm version when calling New-VM to generate
|
- `configuration_version` (string) - This allows you to set the vm version when calling New-VM to generate
|
||||||
the vm.
|
the vm.
|
||||||
|
|
||||||
- `keep_registered` (bool) - If "true", Packer will not delete the VM from
|
- `keep_registered` (bool) - If "true", Packer will not delete the VM from
|
||||||
The Hyper-V manager.
|
The Hyper-V manager.
|
||||||
|
|
||||||
- `communicator` (string) - Communicator
|
- `communicator` (string) - Communicator
|
||||||
- `skip_compaction` (bool) - If true skip compacting the hard disk for
|
- `skip_compaction` (bool) - If true skip compacting the hard disk for
|
||||||
the virtual machine when exporting. This defaults to false.
|
the virtual machine when exporting. This defaults to false.
|
||||||
|
|
||||||
- `skip_export` (bool) - If true Packer will skip the export of the VM.
|
- `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
|
If you are interested only in the VHD/VHDX files, you can enable this
|
||||||
option. The resulting VHD/VHDX file will be output to
|
option. The resulting VHD/VHDX file will be output to
|
||||||
<output_directory>/Virtual Hard Disks. By default this option is false
|
<output_directory>/Virtual Hard Disks. By default this option is false
|
||||||
and Packer will export the VM to output_directory.
|
and Packer will export the VM to output_directory.
|
||||||
|
|
||||||
- `headless` (bool) - Packer defaults to building Hyper-V virtual
|
- `headless` (bool) - Packer defaults to building Hyper-V virtual
|
||||||
machines by launching a GUI that shows the console of the machine being
|
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
|
built. When this value is set to true, the machine will start without a
|
||||||
console.
|
console.
|
||||||
|
|
||||||
- `first_boot_device` (string) - When configured, determines the device or device type that is given preferential
|
- `first_boot_device` (string) - When configured, determines the device or device type that is given preferential
|
||||||
treatment when choosing a boot device.
|
treatment when choosing a boot device.
|
||||||
|
|
||||||
For Generation 1:
|
For Generation 1:
|
||||||
|
- `IDE`
|
||||||
|
- `CD` *or* `DVD`
|
||||||
|
- `Floppy`
|
||||||
|
- `NET`
|
||||||
|
|
||||||
- `IDE`
|
For Generation 2:
|
||||||
- `CD` _or_ `DVD`
|
- `IDE:x:y`
|
||||||
- `Floppy`
|
- `SCSI:x:y`
|
||||||
- `NET`
|
- `CD` *or* `DVD`
|
||||||
|
- `NET`
|
||||||
|
|
||||||
For Generation 2:
|
|
||||||
|
|
||||||
- `IDE:x:y`
|
|
||||||
- `SCSI:x:y`
|
|
||||||
- `CD` _or_ `DVD`
|
|
||||||
- `NET`
|
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
<!-- Code generated from the comments of the OutputConfig struct in builder/hyperv/common/output_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `output_directory` (string) - This setting specifies the directory that
|
||||||
artifacts from the build, such as the virtual machine files and disks,
|
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
|
will be output to. The path to the directory may be relative or
|
||||||
absolute. If relative, the path is relative to the working directory
|
absolute. If relative, the path is relative to the working directory
|
||||||
packer is executed from. This directory must not exist or, if
|
packer is executed from. This directory must not exist or, if
|
||||||
created, must be empty prior to running the builder. By default this is
|
created, must be empty prior to running the builder. By default this is
|
||||||
"output-BUILDNAME" where "BUILDNAME" is the name of the build.
|
"output-BUILDNAME" where "BUILDNAME" is the name of the build.
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
<!-- Code generated from the comments of the Builder struct in builder/hyperv/iso/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
Builder implements packer.Builder and builds the actual Hyperv
|
||||||
images.
|
images.
|
||||||
|
|
|
@ -1,22 +1,23 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/hyperv/iso/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `disk_size` (uint) - The size, in megabytes, of the hard disk to create
|
||||||
for the VM. By default, this is 40 GB.
|
for the VM. By default, this is 40 GB.
|
||||||
|
|
||||||
- `use_legacy_network_adapter` (bool) - If true use a legacy network adapter as the NIC.
|
- `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
|
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
|
supported by various exotic operating systems, but this emulation requires
|
||||||
additional overhead and should only be used if absolutely necessary.
|
additional overhead and should only be used if absolutely necessary.
|
||||||
|
|
||||||
- `differencing_disk` (bool) - If true enables differencing disks. Only
|
- `differencing_disk` (bool) - If true enables differencing disks. Only
|
||||||
the changes will be written to the new disk. This is especially useful if
|
the changes will be written to the new disk. This is especially useful if
|
||||||
your source is a VHD/VHDX. This defaults to false.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
<!-- Code generated from the comments of the Builder struct in builder/hyperv/vmcx/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
Builder implements packer.Builder and builds the actual Hyperv
|
||||||
images.
|
images.
|
||||||
|
|
|
@ -1,23 +1,24 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/hyperv/vmcx/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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_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_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
|
- `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
|
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
|
given is an empty string, the last snapshot present in the source will
|
||||||
be chosen as the starting point for the new VM.
|
be chosen as the starting point for the new VM.
|
||||||
|
|
||||||
- `clone_all_snapshots` (bool) - If set to true all snapshots
|
- `clone_all_snapshots` (bool) - If set to true all snapshots
|
||||||
present in the source machine will be copied when the machine is
|
present in the source machine will be copied when the machine is
|
||||||
cloned. The final result of the build will be an exported virtual
|
cloned. The final result of the build will be an exported virtual
|
||||||
machine that contains all the snapshots of the parent.
|
machine that contains all the snapshots of the parent.
|
||||||
|
|
||||||
- `differencing_disk` (bool) - If true enables differencing disks. Only
|
- `differencing_disk` (bool) - If true enables differencing disks. Only
|
||||||
the changes will be written to the new disk. This is especially useful if
|
the changes will be written to the new disk. This is especially useful if
|
||||||
your source is a VHD/VHDX. This defaults to false.
|
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:
|
||||||
|
|
||||||
- `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:
|
|
||||||
|
|
|
@ -1,40 +1,41 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/lxc/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `output_directory` (string) - The directory in which to save the exported
|
||||||
tar.gz. Defaults to `output-<BuildName>` in the current directory.
|
tar.gz. Defaults to `output-<BuildName>` in the current directory.
|
||||||
|
|
||||||
- `container_name` (string) - The name of the LXC container. Usually stored
|
- `container_name` (string) - The name of the LXC container. Usually stored
|
||||||
in `/var/lib/lxc/containers/<container_name>`. Defaults to
|
in `/var/lib/lxc/containers/<container_name>`. Defaults to
|
||||||
`packer-<BuildName>`.
|
`packer-<BuildName>`.
|
||||||
|
|
||||||
- `command_wrapper` (string) - Allows you to specify a wrapper command, such
|
- `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
|
as ssh so you can execute packer builds on a remote host. Defaults to
|
||||||
`{{.Command}}`; i.e. no wrapper.
|
`{{.Command}}`; i.e. no wrapper.
|
||||||
|
|
||||||
- `init_timeout` (duration string | ex: "1h5m2s") - The timeout in seconds to wait for the the
|
- `init_timeout` (duration string | ex: "1h5m2s") - The timeout in seconds to wait for the the
|
||||||
container to start. Defaults to 20 seconds.
|
container to start. Defaults to 20 seconds.
|
||||||
|
|
||||||
- `create_options` ([]string) - Options to pass to lxc-create. For
|
- `create_options` ([]string) - Options to pass to lxc-create. For
|
||||||
instance, you can specify a custom LXC container configuration file with
|
instance, you can specify a custom LXC container configuration file with
|
||||||
["-f", "/path/to/lxc.conf"]. Defaults to []. See man 1 lxc-create for
|
["-f", "/path/to/lxc.conf"]. Defaults to []. See man 1 lxc-create for
|
||||||
available options.
|
available options.
|
||||||
|
|
||||||
- `start_options` ([]string) - Options to pass to lxc-start. For
|
- `start_options` ([]string) - Options to pass to lxc-start. For
|
||||||
instance, you can override parameters from the LXC container configuration
|
instance, you can override parameters from the LXC container configuration
|
||||||
file via ["--define", "KEY=VALUE"]. Defaults to []. See
|
file via ["--define", "KEY=VALUE"]. Defaults to []. See
|
||||||
man 1 lxc-start for available options.
|
man 1 lxc-start for available options.
|
||||||
|
|
||||||
- `attach_options` ([]string) - Options to pass to lxc-attach. For
|
- `attach_options` ([]string) - Options to pass to lxc-attach. For
|
||||||
instance, you can prevent the container from inheriting the host machine's
|
instance, you can prevent the container from inheriting the host machine's
|
||||||
environment by specifying ["--clear-env"]. Defaults to []. See
|
environment by specifying ["--clear-env"]. Defaults to []. See
|
||||||
man 1 lxc-attach for available options.
|
man 1 lxc-attach for available options.
|
||||||
|
|
||||||
- `template_parameters` ([]string) - Options to pass to the given
|
- `template_parameters` ([]string) - Options to pass to the given
|
||||||
lxc-template command, usually located in
|
lxc-template command, usually located in
|
||||||
`/usr/share/lxc/templates/lxc-<template_name>`. Note: This gets passed as
|
`/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
|
ARGV to the template command. Ensure you have an array of strings, as a
|
||||||
single string with spaces probably won't work. Defaults to [].
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/lxc/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `config_file` (string) - The path to the lxc configuration file.
|
||||||
|
|
||||||
- `template_name` (string) - The LXC template name to use.
|
- `template_name` (string) - The LXC template name to use.
|
||||||
|
|
||||||
|
- `template_environment_vars` ([]string) - Environmental variables to
|
||||||
|
use to build the template with.
|
||||||
|
|
||||||
- `template_environment_vars` ([]string) - Environmental variables to
|
|
||||||
use to build the template with.
|
|
||||||
|
|
|
@ -1,22 +1,23 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/lxd/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `output_image` (string) - The name of the output artifact. Defaults to
|
||||||
name.
|
name.
|
||||||
|
|
||||||
- `container_name` (string) - Container Name
|
- `container_name` (string) - Container Name
|
||||||
- `command_wrapper` (string) - Lets you prefix all builder commands, such as
|
- `command_wrapper` (string) - Lets you prefix all builder commands, such as
|
||||||
with ssh for a remote build host. Defaults to `{{.Command}}`; i.e. no
|
with ssh for a remote build host. Defaults to `{{.Command}}`; i.e. no
|
||||||
wrapper.
|
wrapper.
|
||||||
|
|
||||||
- `profile` (string) - Profile
|
- `profile` (string) - Profile
|
||||||
- `init_sleep` (string) - The number of seconds to sleep between launching
|
- `init_sleep` (string) - The number of seconds to sleep between launching
|
||||||
the LXD instance and provisioning it; defaults to 3 seconds.
|
the LXD instance and provisioning it; defaults to 3 seconds.
|
||||||
|
|
||||||
- `publish_properties` (map[string]string) - Pass key values to the publish
|
- `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
|
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
|
set the description, but can be used to set anything needed. See
|
||||||
https://stgraber.org/2016/03/30/lxd-2-0-image-management-512/
|
https://stgraber.org/2016/03/30/lxd-2-0-image-management-512/
|
||||||
for more properties.
|
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.
|
||||||
|
|
||||||
- `launch_config` (map[string]string) - List of key/value pairs you wish to
|
|
||||||
pass to lxc launch via --config. Defaults to empty.
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/lxd/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `image` (string) - The source image to use when creating the build
|
||||||
container. This can be a (local or remote) image (name or fingerprint).
|
container. This can be a (local or remote) image (name or fingerprint).
|
||||||
E.G. my-base-image, ubuntu-daily:x, 08fababf6f27, ...
|
E.G. my-base-image, ubuntu-daily:x, 08fababf6f27, ...
|
||||||
|
|
|
@ -1,31 +1,32 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/ncloud/config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the Config struct in builder/ncloud/config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `access_key` (string) - Access Key
|
- `access_key` (string) - Access Key
|
||||||
- `secret_key` (string) - Secret Key
|
- `secret_key` (string) - Secret Key
|
||||||
- `member_server_image_no` (string) - Previous image code. If there is an
|
- `member_server_image_no` (string) - Previous image code. If there is an
|
||||||
image previously created, it can be used to create a new image.
|
image previously created, it can be used to create a new image.
|
||||||
(server_image_product_code is required if not specified)
|
(server_image_product_code is required if not specified)
|
||||||
|
|
||||||
- `server_image_name` (string) - Name of an image to create.
|
- `server_image_name` (string) - Name of an image to create.
|
||||||
|
|
||||||
- `server_image_description` (string) - Description 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
|
- `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
|
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.
|
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
|
Packer will not automatically wait for a user script to finish before
|
||||||
shutting down the instance this must be handled in a provisioner.
|
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
|
- `user_data_file` (string) - Path to a file that will be used for the user
|
||||||
data when launching the instance.
|
data when launching the instance.
|
||||||
|
|
||||||
- `block_storage_size` (int) - You can add block storage ranging from 10
|
- `block_storage_size` (int) - You can add block storage ranging from 10
|
||||||
GB to 2000 GB, in increments of 10 GB.
|
GB to 2000 GB, in increments of 10 GB.
|
||||||
|
|
||||||
- `region` (string) - Name of the region where you want to create an image.
|
- `region` (string) - Name of the region where you want to create an image.
|
||||||
(default: Korea)
|
(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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/ncloud/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `server_image_product_code` (string) - Product code of an image to create.
|
||||||
(member_server_image_no is required if not specified)
|
(member_server_image_no is required if not specified)
|
||||||
|
|
||||||
|
- `server_product_code` (string) - Product (spec) code to create.
|
||||||
|
|
||||||
- `server_product_code` (string) - Product (spec) code to create.
|
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/ncloud/config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
Config is structure to use packer builder plugin for Naver Cloud Platform
|
||||||
|
|
|
@ -1,54 +1,55 @@
|
||||||
<!-- Code generated from the comments of the AccessConfig struct in builder/openstack/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the AccessConfig struct in builder/openstack/access_config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `user_id` (string) - Sets username
|
- `user_id` (string) - Sets username
|
||||||
|
|
||||||
- `tenant_id` (string) - The tenant ID or name to boot the instance into. Some OpenStack
|
- `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
|
installations require this. If not specified, Packer will use the
|
||||||
environment variable OS_TENANT_NAME or OS_TENANT_ID, if set. Tenant is
|
environment variable OS_TENANT_NAME or OS_TENANT_ID, if set. Tenant is
|
||||||
also called Project in later versions of OpenStack.
|
also called Project in later versions of OpenStack.
|
||||||
|
|
||||||
- `tenant_name` (string) - Tenant Name
|
- `tenant_name` (string) - Tenant Name
|
||||||
- `domain_id` (string) - Domain ID
|
- `domain_id` (string) - Domain ID
|
||||||
- `domain_name` (string) - The Domain name or ID you are authenticating with. OpenStack
|
- `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
|
installations require this if identity v3 is used. Packer will use the
|
||||||
environment variable OS_DOMAIN_NAME or OS_DOMAIN_ID, if set.
|
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
|
- `insecure` (bool) - Whether or not the connection to OpenStack can be done over an insecure
|
||||||
connection. By default this is false.
|
connection. By default this is false.
|
||||||
|
|
||||||
- `region` (string) - The name of the region, such as "DFW", in which to launch the server to
|
- `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
|
create the image. If not specified, Packer will use the environment
|
||||||
variable OS_REGION_NAME, if set.
|
variable OS_REGION_NAME, if set.
|
||||||
|
|
||||||
- `endpoint_type` (string) - The endpoint type to use. Can be any of "internal", "internalURL",
|
- `endpoint_type` (string) - The endpoint type to use. Can be any of "internal", "internalURL",
|
||||||
"admin", "adminURL", "public", and "publicURL". By default this is
|
"admin", "adminURL", "public", and "publicURL". By default this is
|
||||||
"public".
|
"public".
|
||||||
|
|
||||||
- `cacert` (string) - Custom CA certificate file path. If omitted the OS_CACERT environment
|
- `cacert` (string) - Custom CA certificate file path. If omitted the OS_CACERT environment
|
||||||
variable can be used.
|
variable can be used.
|
||||||
|
|
||||||
- `cert` (string) - Client certificate file path for SSL client authentication. If omitted
|
- `cert` (string) - Client certificate file path for SSL client authentication. If omitted
|
||||||
the OS_CERT environment variable can be used.
|
the OS_CERT environment variable can be used.
|
||||||
|
|
||||||
- `key` (string) - Client private key file path for SSL client authentication. If omitted
|
- `key` (string) - Client private key file path for SSL client authentication. If omitted
|
||||||
the OS_KEY environment variable can be used.
|
the OS_KEY environment variable can be used.
|
||||||
|
|
||||||
- `token` (string) - the token (id) to use with token based authorization. Packer will use
|
- `token` (string) - the token (id) to use with token based authorization. Packer will use
|
||||||
the environment variable OS_TOKEN, if set.
|
the environment variable OS_TOKEN, if set.
|
||||||
|
|
||||||
- `application_credential_name` (string) - The application credential name to use with application credential based
|
- `application_credential_name` (string) - The application credential name to use with application credential based
|
||||||
authorization. Packer will use the environment variable
|
authorization. Packer will use the environment variable
|
||||||
OS_APPLICATION_CREDENTIAL_NAME, if set.
|
OS_APPLICATION_CREDENTIAL_NAME, if set.
|
||||||
|
|
||||||
- `application_credential_id` (string) - The application credential id to use with application credential based
|
- `application_credential_id` (string) - The application credential id to use with application credential based
|
||||||
authorization. Packer will use the environment variable
|
authorization. Packer will use the environment variable
|
||||||
OS_APPLICATION_CREDENTIAL_ID, if set.
|
OS_APPLICATION_CREDENTIAL_ID, if set.
|
||||||
|
|
||||||
- `application_credential_secret` (string) - The application credential secret to use with application credential
|
- `application_credential_secret` (string) - The application credential secret to use with application credential
|
||||||
based authorization. Packer will use the environment variable
|
based authorization. Packer will use the environment variable
|
||||||
OS_APPLICATION_CREDENTIAL_SECRET, if set.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
<!-- Code generated from the comments of the AccessConfig struct in builder/openstack/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
specified, Packer will use the environment variable OS_USERNAME or
|
||||||
OS_USERID, if set. This is not required if using access token or
|
OS_USERID, if set. This is not required if using access token or
|
||||||
application credential instead of password, or if using cloud.yaml.
|
application credential instead of password, or if using cloud.yaml.
|
||||||
|
|
||||||
- `password` (string) - The password used to connect to the OpenStack service. If not specified,
|
- `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
|
Packer will use the environment variables OS_PASSWORD, if set. This is
|
||||||
not required if using access token or application credential instead of
|
not required if using access token or application credential instead of
|
||||||
password, or if using cloud.yaml.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the AccessConfig struct in builder/openstack/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
AccessConfig is for common configuration related to openstack access
|
||||||
|
|
|
@ -1,16 +1,17 @@
|
||||||
<!-- Code generated from the comments of the ImageConfig struct in builder/openstack/image_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `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_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
|
- `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
|
usually a project (also called the "tenant") with whom the image is
|
||||||
shared.
|
shared.
|
||||||
|
|
||||||
- `image_disk_format` (string) - Disk format of the resulting image. This option works if
|
- `image_disk_format` (string) - Disk format of the resulting image. This option works if
|
||||||
use_blockstorage_volume is true.
|
use_blockstorage_volume is true.
|
||||||
|
|
||||||
- `image_tags` ([]string) - List of tags to add to the image after creation.
|
- `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.
|
||||||
|
|
||||||
- `image_min_disk` (int) - Minimum disk size needed to boot image, in gigabytes.
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
<!-- Code generated from the comments of the ImageConfig struct in builder/openstack/image_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `image_name` (string) - The name of the resulting image.
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the ImageConfig struct in builder/openstack/image_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
ImageConfig is for common configuration related to creating Images.
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
<!-- Code generated from the comments of the ImageFilter struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
exactly one image is returned, or most_recent is set to true. Of the
|
||||||
filters described in ImageService, the following are valid:
|
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.
|
||||||
|
|
||||||
- `most_recent` (bool) - Selects the newest created image when true. This is most useful for
|
|
||||||
selecting a daily distro build.
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<!-- Code generated from the comments of the ImageFilterOptions struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the ImageFilterOptions struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `name` (string) - Name
|
- `name` (string) - Name
|
||||||
- `owner` (string) - Owner
|
- `owner` (string) - Owner
|
||||||
- `tags` ([]string) - Tags
|
- `tags` ([]string) - Tags
|
||||||
- `visibility` (string) - Visibility
|
- `visibility` (string) - Visibility
|
||||||
- `properties` (map[string]string) - Properties
|
- `properties` (map[string]string) - Properties
|
|
@ -1,93 +1,94 @@
|
||||||
<!-- Code generated from the comments of the RunConfig struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
are "public" or "private", and the default behavior is to connect via
|
||||||
whichever is returned first from the OpenStack API.
|
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`.
|
- `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
|
Useful on dual stacked instances where the default behavior is to
|
||||||
connect via whichever IP address is returned first from the OpenStack
|
connect via whichever IP address is returned first from the OpenStack
|
||||||
API.
|
API.
|
||||||
|
|
||||||
- `availability_zone` (string) - The availability zone to launch the server in. If this isn't specified,
|
- `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
|
the default enforced by your OpenStack cluster will be used. This may be
|
||||||
required for some OpenStack clusters.
|
required for some OpenStack clusters.
|
||||||
|
|
||||||
- `rackconnect_wait` (bool) - For rackspace, whether or not to wait for Rackconnect to assign the
|
- `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.
|
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
|
- `floating_ip_network` (string) - The ID or name of an external network that can be used for creation of a
|
||||||
new floating IP.
|
new floating IP.
|
||||||
|
|
||||||
- `instance_floating_ip_net` (string) - The ID of the network to which the instance is attached and which should
|
- `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
|
be used to associate with the floating IP. This provides control over
|
||||||
the floating ip association on multi-homed instances. The association
|
the floating ip association on multi-homed instances. The association
|
||||||
otherwise depends on a first-returned-interface policy which could fail
|
otherwise depends on a first-returned-interface policy which could fail
|
||||||
if the network to which it is connected is unreachable from the floating
|
if the network to which it is connected is unreachable from the floating
|
||||||
IP network.
|
IP network.
|
||||||
|
|
||||||
- `floating_ip` (string) - A specific floating IP to assign to this instance.
|
- `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
|
- `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
|
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
|
safely do this concurrently, so if you are running multiple openstack
|
||||||
builds concurrently, or if other processes are assigning and using
|
builds concurrently, or if other processes are assigning and using
|
||||||
floating IPs in the same openstack project while packer is running, you
|
floating IPs in the same openstack project while packer is running, you
|
||||||
should not set this to true. Defaults to false.
|
should not set this to true. Defaults to false.
|
||||||
|
|
||||||
- `security_groups` ([]string) - A list of security groups by name to add to this instance.
|
- `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.
|
- `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.
|
- `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.
|
- `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
|
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.
|
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
|
- `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
|
careful about escaping characters due to the templates being JSON. It is
|
||||||
often more convenient to use user_data_file, instead. Packer will not
|
often more convenient to use user_data_file, instead. Packer will not
|
||||||
automatically wait for a user script to finish before shutting down the
|
automatically wait for a user script to finish before shutting down the
|
||||||
instance this must be handled in a provisioner.
|
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
|
- `user_data_file` (string) - Path to a file that will be used for the user data when launching the
|
||||||
instance.
|
instance.
|
||||||
|
|
||||||
- `instance_name` (string) - Name that is applied to the server instance created by Packer. If this
|
- `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.
|
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
|
- `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
|
called server properties in some documentation. The strings have a max
|
||||||
size of 255 bytes each.
|
size of 255 bytes each.
|
||||||
|
|
||||||
- `force_delete` (bool) - Whether to force the OpenStack instance to be forcefully deleted. This
|
- `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
|
is useful for environments that have reclaim / soft deletion enabled. By
|
||||||
default this is false.
|
default this is false.
|
||||||
|
|
||||||
- `config_drive` (bool) - Whether or not nova should use ConfigDrive for cloud-init metadata.
|
- `config_drive` (bool) - Whether or not nova should use ConfigDrive for cloud-init metadata.
|
||||||
|
|
||||||
- `floating_ip_pool` (string) - Deprecated use floating_ip_network instead.
|
- `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
|
- `use_blockstorage_volume` (bool) - Use Block Storage service volume for the instance root volume instead of
|
||||||
Compute service local volume (default).
|
Compute service local volume (default).
|
||||||
|
|
||||||
- `volume_name` (string) - Name of the Block Storage service volume. If this isn't specified,
|
- `volume_name` (string) - Name of the Block Storage service volume. If this isn't specified,
|
||||||
random string will be used.
|
random string will be used.
|
||||||
|
|
||||||
- `volume_type` (string) - Type of the Block Storage service volume. If this isn't specified, the
|
- `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.
|
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,
|
- `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
|
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
|
source image bytes size. Note that in some cases this needs to be
|
||||||
specified, if use_blockstorage_volume is true.
|
specified, if use_blockstorage_volume is true.
|
||||||
|
|
||||||
- `volume_availability_zone` (string) - Availability zone of the Block Storage service volume. If omitted,
|
- `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
|
Compute instance availability zone will be used. If both of Compute
|
||||||
instance and Block Storage volume availability zones aren't specified,
|
instance and Block Storage volume availability zones aren't specified,
|
||||||
the default enforced by your OpenStack cluster will be used.
|
the default enforced by your OpenStack cluster will be used.
|
||||||
|
|
||||||
- `openstack_provider` (string) - Not really used, but here for BC
|
- `openstack_provider` (string) - Not really used, but here for BC
|
||||||
|
|
||||||
|
- `use_floating_ip` (bool) - *Deprecated* use `floating_ip` or `floating_ip_pool` instead.
|
||||||
|
|
||||||
- `use_floating_ip` (bool) - _Deprecated_ use `floating_ip` or `floating_ip_pool` instead.
|
|
||||||
|
|
|
@ -1,44 +1,44 @@
|
||||||
<!-- Code generated from the comments of the RunConfig struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `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
|
be used to launch a new server and provision it. Unless you specify
|
||||||
completely custom SSH settings, the source image must have cloud-init
|
completely custom SSH settings, the source image must have cloud-init
|
||||||
installed so that the keypair gets assigned properly.
|
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
|
- `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.
|
providing source_image and only either of them can be specified.
|
||||||
|
|
||||||
- `source_image_filter` (ImageFilter) - Filters used to populate filter options. Example:
|
- `source_image_filter` (ImageFilter) - Filters used to populate filter options. Example:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"source_image_filter": {
|
"source_image_filter": {
|
||||||
"filters": {
|
"filters": {
|
||||||
"name": "ubuntu-16.04",
|
"name": "ubuntu-16.04",
|
||||||
"visibility": "protected",
|
"visibility": "protected",
|
||||||
"owner": "d1a588cf4b0743344508dc145649372d1",
|
"owner": "d1a588cf4b0743344508dc145649372d1",
|
||||||
"tags": ["prod", "ready"],
|
"tags": ["prod", "ready"],
|
||||||
"properties": {
|
"properties": {
|
||||||
"os_distro": "ubuntu"
|
"os_distro": "ubuntu"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"most_recent": true
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"most_recent": true
|
|
||||||
}
|
}
|
||||||
}
|
```
|
||||||
```
|
|
||||||
|
|
||||||
This selects the most recent production Ubuntu 16.04 shared to you by
|
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
|
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, or `most_recent` is set to true. In the example of multiple
|
||||||
returned images, `most_recent` will cause this to succeed by selecting
|
returned images, `most_recent` will cause this to succeed by selecting
|
||||||
the newest image of the returned images.
|
the newest image of the returned images.
|
||||||
|
|
||||||
- `filters` (map of strings) - filters used to select a
|
- `filters` (map of strings) - filters used to select a
|
||||||
`source_image`.
|
`source_image`.
|
||||||
NOTE: This will fail unless _exactly_ one image is returned, or
|
NOTE: This will fail unless *exactly* one image is returned, or
|
||||||
`most_recent` is set to true. Of the filters described in
|
`most_recent` is set to true. Of the filters described in
|
||||||
[ImageService](https://developer.openstack.org/api-ref/image/v2/), the
|
[ImageService](https://developer.openstack.org/api-ref/image/v2/), the
|
||||||
following are valid:
|
following are valid:
|
||||||
|
|
||||||
- name (string)
|
- name (string)
|
||||||
- owner (string)
|
- owner (string)
|
||||||
|
@ -47,13 +47,14 @@
|
||||||
- properties (map of strings to strings) (fields that can be set
|
- properties (map of strings to strings) (fields that can be set
|
||||||
with `openstack image set --property key=value`)
|
with `openstack image set --property key=value`)
|
||||||
|
|
||||||
- `most_recent` (boolean) - Selects the newest created image when
|
- `most_recent` (boolean) - Selects the newest created image when
|
||||||
true.
|
true.
|
||||||
This is most useful for selecting a daily distro build.
|
This is most useful for selecting a daily distro build.
|
||||||
|
|
||||||
You may set use this in place of `source_image` If `source_image_filter`
|
You may set use this in place of `source_image` If `source_image_filter`
|
||||||
is provided alongside `source_image`, the `source_image` will override
|
is provided alongside `source_image`, the `source_image` will override
|
||||||
the filter. The filter will not be used in this case.
|
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.
|
||||||
|
|
||||||
- `flavor` (string) - The ID, name, or full URL for the desired flavor for the server to be
|
|
||||||
created.
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
<!-- Code generated from the comments of the RunConfig struct in builder/openstack/run_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
RunConfig contains configuration for running an instance from a source image
|
||||||
and details on how to access that launched image.
|
and details on how to access that launched image.
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
<!-- Code generated from the comments of the HWConfig struct in builder/parallels/common/hw_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
- `cpus` (int) - The number of cpus to use for building the VM.
|
||||||
Defaults to 1.
|
Defaults to 1.
|
||||||
|
|
||||||
- `memory` (int) - The amount of memory to use for building the VM in
|
- `memory` (int) - The amount of memory to use for building the VM in
|
||||||
megabytes. Defaults to 512 megabytes.
|
megabytes. Defaults to 512 megabytes.
|
||||||
|
|
||||||
- `sound` (bool) - Specifies whether to enable the sound device when
|
- `sound` (bool) - Specifies whether to enable the sound device when
|
||||||
building the VM. Defaults to false.
|
building the VM. Defaults to false.
|
||||||
|
|
||||||
|
- `usb` (bool) - Specifies whether to enable the USB bus when building
|
||||||
|
the VM. Defaults to false.
|
||||||
|
|
||||||
- `usb` (bool) - Specifies whether to enable the USB bus when building
|
|
||||||
the VM. Defaults to false.
|
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
<!-- Code generated from the comments of the OutputConfig struct in builder/parallels/common/output_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `output_directory` (string) - This is the path to the directory where the
|
||||||
resulting virtual machine will be created. This may be relative or absolute.
|
resulting virtual machine will be created. This may be relative or absolute.
|
||||||
If relative, the path is relative to the working directory when packer
|
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
|
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
|
the builder. By default this is "output-BUILDNAME" where "BUILDNAME" is the
|
||||||
name of the build.
|
name of the build.
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the OutputConfig struct in builder/parallels/common/output_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
OutputConfig contains the configuration for builder's output.
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
<!-- Code generated from the comments of the PrlctlConfig struct in builder/parallels/common/prlctl_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `prlctl` ([][]string) - Custom prlctl commands to execute
|
||||||
in order to further customize the virtual machine being created. The value
|
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
|
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
|
order defined in the template. For each command, the command is defined
|
||||||
itself as an array of strings, where each string represents a single
|
itself as an array of strings, where each string represents a single
|
||||||
argument on the command-line to prlctl (but excluding prlctl itself).
|
argument on the command-line to prlctl (but excluding prlctl itself).
|
||||||
Each arg is treated as a configuration
|
Each arg is treated as a configuration
|
||||||
template, where the Name
|
template, where the Name
|
||||||
variable is replaced with the VM name. More details on how to use prlctl
|
variable is replaced with the VM name. More details on how to use prlctl
|
||||||
are below.
|
are below.
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
<!-- Code generated from the comments of the PrlctlConfig struct in builder/parallels/common/prlctl_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
PrlctlConfig contains the configuration for running "prlctl" commands
|
||||||
before the VM start.
|
before the VM start.
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<!-- Code generated from the comments of the PrlctlPostConfig struct in builder/parallels/common/prlctl_post_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `prlctl_post` ([][]string) - Identical to prlctl, except
|
||||||
that it is run after the virtual machine is shutdown, and before the virtual
|
that it is run after the virtual machine is shutdown, and before the virtual
|
||||||
machine is exported.
|
machine is exported.
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
<!-- Code generated from the comments of the PrlctlPostConfig struct in builder/parallels/common/prlctl_post_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
PrlctlPostConfig contains the configuration for running "prlctl" commands
|
||||||
in the end of artifact build.
|
in the end of artifact build.
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
<!-- Code generated from the comments of the PrlctlVersionConfig struct in builder/parallels/common/prlctl_version_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `prlctl_version_file` (string) - The path within the virtual machine to
|
||||||
upload a file that contains the prlctl version that was used to create
|
upload a file that contains the prlctl version that was used to create
|
||||||
the machine. This information can be useful for provisioning. By default
|
the machine. This information can be useful for provisioning. By default
|
||||||
this is ".prlctl_version", which will generally upload it into the
|
this is ".prlctl_version", which will generally upload it into the
|
||||||
home directory.
|
home directory.
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the PrlctlVersionConfig struct in builder/parallels/common/prlctl_version_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
PrlctlVersionConfig contains the configuration for `prlctl` version.
|
||||||
|
|
|
@ -1,16 +1,17 @@
|
||||||
<!-- Code generated from the comments of the ToolsConfig struct in builder/parallels/common/tools_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `parallels_tools_guest_path` (string) - The path in the virtual machine to
|
||||||
upload Parallels Tools. This only takes effect if parallels_tools_mode
|
upload Parallels Tools. This only takes effect if parallels_tools_mode
|
||||||
is "upload". This is a configuration
|
is "upload". This is a configuration
|
||||||
template that has a single
|
template that has a single
|
||||||
valid variable: Flavor, which will be the value of
|
valid variable: Flavor, which will be the value of
|
||||||
parallels_tools_flavor. By default this is `prl-tools-{{.Flavor}}.iso`
|
parallels_tools_flavor. By default this is `prl-tools-{{.Flavor}}.iso`
|
||||||
which should upload into the login directory of the user.
|
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".
|
||||||
|
|
||||||
- `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".
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
<!-- Code generated from the comments of the ToolsConfig struct in builder/parallels/common/tools_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `parallels_tools_flavor` (string) - The flavor of the Parallels Tools ISO to
|
||||||
install into the VM. Valid values are "win", "lin", "mac", "os2"
|
install into the VM. Valid values are "win", "lin", "mac", "os2"
|
||||||
and "other". This can be omitted only if parallels_tools_mode
|
and "other". This can be omitted only if parallels_tools_mode
|
||||||
is "disable".
|
is "disable".
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the ToolsConfig struct in builder/parallels/common/tools_config.go; DO NOT EDIT MANUALLY -->
|
<!-- 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.
|
ToolsConfig contains the builder configuration related to Parallels Tools.
|
||||||
|
|
|
@ -1,39 +1,40 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/parallels/iso/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- 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
|
- `disk_size` (uint) - The size, in megabytes, of the hard disk to create
|
||||||
for the VM. By default, this is 40000 (about 40 GB).
|
for the VM. By default, this is 40000 (about 40 GB).
|
||||||
|
|
||||||
- `disk_type` (string) - The type for image file based virtual disk drives,
|
- `disk_type` (string) - The type for image file based virtual disk drives,
|
||||||
defaults to expand. Valid options are expand (expanding disk) that the
|
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
|
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
|
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
|
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
|
perform faster than expanding disks. skip_compaction will be set to true
|
||||||
automatically for plain disks.
|
automatically for plain disks.
|
||||||
|
|
||||||
- `guest_os_type` (string) - The guest OS type being installed. By default
|
- `guest_os_type` (string) - The guest OS type being installed. By default
|
||||||
this is "other", but you can get dramatic performance improvements by
|
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
|
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
|
prlctl create x --distribution list. Setting the correct value hints to
|
||||||
Parallels Desktop how to optimize the virtual hardware to work best with
|
Parallels Desktop how to optimize the virtual hardware to work best with
|
||||||
that operating system.
|
that operating system.
|
||||||
|
|
||||||
- `hard_drive_interface` (string) - The type of controller that the hard
|
- `hard_drive_interface` (string) - The type of controller that the hard
|
||||||
drives are attached to, defaults to "sata". Valid options are "sata", "ide",
|
drives are attached to, defaults to "sata". Valid options are "sata", "ide",
|
||||||
and "scsi".
|
and "scsi".
|
||||||
|
|
||||||
- `host_interfaces` ([]string) - A list of which interfaces on the
|
- `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
|
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
|
of these will be used as `{{ .HTTPIP }}` in the boot_command. Defaults to
|
||||||
["en0", "en1", "en2", "en3", "en4", "en5", "en6", "en7", "en8", "en9",
|
["en0", "en1", "en2", "en3", "en4", "en5", "en6", "en7", "en8", "en9",
|
||||||
"ppp0", "ppp1", "ppp2"].
|
"ppp0", "ppp1", "ppp2"].
|
||||||
|
|
||||||
- `skip_compaction` (bool) - Virtual disk image is compacted at the end of
|
- `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
|
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
|
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
|
the resulting disk image. If you find this to be the case, you can disable
|
||||||
compaction using this configuration value.
|
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.
|
||||||
|
|
||||||
- `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.
|
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/parallels/pvm/config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the Config struct in builder/parallels/pvm/config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `skip_compaction` (bool) - Virtual disk image is compacted at the end of
|
- `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
|
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
|
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
|
the resulting disk image. If you find this to be the case, you can disable
|
||||||
compaction using this configuration value.
|
compaction using this configuration value.
|
||||||
|
|
||||||
- `vm_name` (string) - This is the name of the PVM directory for the new
|
- `vm_name` (string) - This is the name of the PVM directory for the new
|
||||||
virtual machine, without the file extension. By default this is
|
virtual machine, without the file extension. By default this is
|
||||||
"packer-BUILDNAME", where "BUILDNAME" is the name of the build.
|
"packer-BUILDNAME", where "BUILDNAME" is the name of the build.
|
||||||
|
|
||||||
|
- `reassign_mac` (bool) - If this is "false" the MAC address of the first
|
||||||
|
NIC will reused when imported else a new MAC address will be generated
|
||||||
|
by Parallels. Defaults to "false".
|
||||||
|
|
||||||
- `reassign_mac` (bool) - If this is "false" the MAC address of the first
|
|
||||||
NIC will reused when imported else a new MAC address will be generated
|
|
||||||
by Parallels. Defaults to "false".
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/parallels/pvm/config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the Config struct in builder/parallels/pvm/config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `source_path` (string) - The path to a PVM directory that acts as the source
|
- `source_path` (string) - The path to a PVM directory that acts as the source
|
||||||
of this build.
|
of this build.
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/parallels/pvm/config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the Config struct in builder/parallels/pvm/config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
Config is the configuration structure for the builder.
|
Config is the configuration structure for the builder.
|
||||||
|
|
|
@ -1,236 +1,237 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/qemu/builder.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the Config struct in builder/qemu/builder.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `iso_skip_cache` (bool) - Use iso from provided url. Qemu must support
|
- `iso_skip_cache` (bool) - Use iso from provided url. Qemu must support
|
||||||
curl block device. This defaults to `false`.
|
curl block device. This defaults to `false`.
|
||||||
|
|
||||||
- `accelerator` (string) - The accelerator type to use when running the VM.
|
- `accelerator` (string) - The accelerator type to use when running the VM.
|
||||||
This may be `none`, `kvm`, `tcg`, `hax`, `hvf`, `whpx`, or `xen`. The appropriate
|
This may be `none`, `kvm`, `tcg`, `hax`, `hvf`, `whpx`, or `xen`. The appropriate
|
||||||
software must have already been installed on your build machine to use the
|
software must have already been installed on your build machine to use the
|
||||||
accelerator you specified. When no accelerator is specified, Packer will try
|
accelerator you specified. When no accelerator is specified, Packer will try
|
||||||
to use `kvm` if it is available but will default to `tcg` otherwise.
|
to use `kvm` if it is available but will default to `tcg` otherwise.
|
||||||
|
|
||||||
-> The `hax` accelerator has issues attaching CDROM ISOs. This is an
|
-> The `hax` accelerator has issues attaching CDROM ISOs. This is an
|
||||||
upstream issue which can be tracked
|
upstream issue which can be tracked
|
||||||
[here](https://github.com/intel/haxm/issues/20).
|
[here](https://github.com/intel/haxm/issues/20).
|
||||||
|
|
||||||
-> The `hvf` and `whpx` accelerator are new and experimental as of
|
-> The `hvf` and `whpx` accelerator are new and experimental as of
|
||||||
[QEMU 2.12.0](https://wiki.qemu.org/ChangeLog/2.12#Host_support).
|
[QEMU 2.12.0](https://wiki.qemu.org/ChangeLog/2.12#Host_support).
|
||||||
You may encounter issues unrelated to Packer when using these. You may need to
|
You may encounter issues unrelated to Packer when using these. You may need to
|
||||||
add [ "-global", "virtio-pci.disable-modern=on" ] to `qemuargs` depending on the
|
add [ "-global", "virtio-pci.disable-modern=on" ] to `qemuargs` depending on the
|
||||||
guest operating system.
|
guest operating system.
|
||||||
|
|
||||||
-> For `whpx`, note that [Stefan Weil's QEMU for Windows distribution](https://qemu.weilnetz.de/w64/)
|
-> For `whpx`, note that [Stefan Weil's QEMU for Windows distribution](https://qemu.weilnetz.de/w64/)
|
||||||
does not include WHPX support and users may need to compile or source a
|
does not include WHPX support and users may need to compile or source a
|
||||||
build of QEMU for Windows themselves with WHPX support.
|
build of QEMU for Windows themselves with WHPX support.
|
||||||
|
|
||||||
- `disk_additional_size` ([]string) - Additional disks to create. Uses `vm_name` as the disk name template and
|
- `disk_additional_size` ([]string) - Additional disks to create. Uses `vm_name` as the disk name template and
|
||||||
appends `-#` where `#` is the position in the array. `#` starts at 1 since 0
|
appends `-#` where `#` is the position in the array. `#` starts at 1 since 0
|
||||||
is the default disk. Each string represents the disk image size in bytes.
|
is the default disk. Each string represents the disk image size in bytes.
|
||||||
Optional suffixes 'k' or 'K' (kilobyte, 1024), 'M' (megabyte, 1024k), 'G'
|
Optional suffixes 'k' or 'K' (kilobyte, 1024), 'M' (megabyte, 1024k), 'G'
|
||||||
(gigabyte, 1024M), 'T' (terabyte, 1024G), 'P' (petabyte, 1024T) and 'E'
|
(gigabyte, 1024M), 'T' (terabyte, 1024G), 'P' (petabyte, 1024T) and 'E'
|
||||||
(exabyte, 1024P) are supported. 'b' is ignored. Per qemu-img documentation.
|
(exabyte, 1024P) are supported. 'b' is ignored. Per qemu-img documentation.
|
||||||
Each additional disk uses the same disk parameters as the default disk.
|
Each additional disk uses the same disk parameters as the default disk.
|
||||||
Unset by default.
|
Unset by default.
|
||||||
|
|
||||||
- `cpus` (int) - The number of cpus to use when building the VM.
|
- `cpus` (int) - The number of cpus to use when building the VM.
|
||||||
The default is `1` CPU.
|
The default is `1` CPU.
|
||||||
|
|
||||||
- `disk_interface` (string) - The interface to use for the disk. Allowed values include any of `ide`,
|
- `disk_interface` (string) - The interface to use for the disk. Allowed values include any of `ide`,
|
||||||
`scsi`, `virtio` or `virtio-scsi`^\*. Note also that any boot commands
|
`scsi`, `virtio` or `virtio-scsi`^\*. Note also that any boot commands
|
||||||
or kickstart type scripts must have proper adjustments for resulting
|
or kickstart type scripts must have proper adjustments for resulting
|
||||||
device names. The Qemu builder uses `virtio` by default.
|
device names. The Qemu builder uses `virtio` by default.
|
||||||
|
|
||||||
^\* Please be aware that use of the `scsi` disk interface has been
|
^\* Please be aware that use of the `scsi` disk interface has been
|
||||||
disabled by Red Hat due to a bug described
|
disabled by Red Hat due to a bug described
|
||||||
[here](https://bugzilla.redhat.com/show_bug.cgi?id=1019220). If you are
|
[here](https://bugzilla.redhat.com/show_bug.cgi?id=1019220). If you are
|
||||||
running Qemu on RHEL or a RHEL variant such as CentOS, you _must_ choose
|
running Qemu on RHEL or a RHEL variant such as CentOS, you *must* choose
|
||||||
one of the other listed interfaces. Using the `scsi` interface under
|
one of the other listed interfaces. Using the `scsi` interface under
|
||||||
these circumstances will cause the build to fail.
|
these circumstances will cause the build to fail.
|
||||||
|
|
||||||
- `disk_size` (string) - The size in bytes of the hard disk of the VM. Suffix with the first
|
- `disk_size` (string) - The size in bytes of the hard disk of the VM. Suffix with the first
|
||||||
letter of common byte types. Use "k" or "K" for kilobytes, "M" for
|
letter of common byte types. Use "k" or "K" for kilobytes, "M" for
|
||||||
megabytes, G for gigabytes, and T for terabytes. If no value is provided
|
megabytes, G for gigabytes, and T for terabytes. If no value is provided
|
||||||
for disk_size, Packer uses a default of `40960M` (40 GB). If a disk_size
|
for disk_size, Packer uses a default of `40960M` (40 GB). If a disk_size
|
||||||
number is provided with no units, Packer will default to Megabytes.
|
number is provided with no units, Packer will default to Megabytes.
|
||||||
|
|
||||||
- `disk_cache` (string) - The cache mode to use for disk. Allowed values include any of
|
- `disk_cache` (string) - The cache mode to use for disk. Allowed values include any of
|
||||||
`writethrough`, `writeback`, `none`, `unsafe` or `directsync`. By
|
`writethrough`, `writeback`, `none`, `unsafe` or `directsync`. By
|
||||||
default, this is set to `writeback`.
|
default, this is set to `writeback`.
|
||||||
|
|
||||||
- `disk_discard` (string) - The discard mode to use for disk. Allowed values
|
- `disk_discard` (string) - The discard mode to use for disk. Allowed values
|
||||||
include any of unmap or ignore. By default, this is set to ignore.
|
include any of unmap or ignore. By default, this is set to ignore.
|
||||||
|
|
||||||
- `disk_detect_zeroes` (string) - The detect-zeroes mode to use for disk.
|
- `disk_detect_zeroes` (string) - The detect-zeroes mode to use for disk.
|
||||||
Allowed values include any of unmap, on or off. Defaults to off.
|
Allowed values include any of unmap, on or off. Defaults to off.
|
||||||
When the value is "off" we don't set the flag in the qemu command, so that
|
When the value is "off" we don't set the flag in the qemu command, so that
|
||||||
Packer still works with old versions of QEMU that don't have this option.
|
Packer still works with old versions of QEMU that don't have this option.
|
||||||
|
|
||||||
- `skip_compaction` (bool) - Packer compacts the QCOW2 image using
|
- `skip_compaction` (bool) - Packer compacts the QCOW2 image using
|
||||||
qemu-img convert. Set this option to true to disable compacting.
|
qemu-img convert. Set this option to true to disable compacting.
|
||||||
Defaults to false.
|
Defaults to false.
|
||||||
|
|
||||||
- `disk_compression` (bool) - Apply compression to the QCOW2 disk file
|
- `disk_compression` (bool) - Apply compression to the QCOW2 disk file
|
||||||
using qemu-img convert. Defaults to false.
|
using qemu-img convert. Defaults to false.
|
||||||
|
|
||||||
- `format` (string) - Either `qcow2` or `raw`, this specifies the output format of the virtual
|
- `format` (string) - Either `qcow2` or `raw`, this specifies the output format of the virtual
|
||||||
machine image. This defaults to `qcow2`.
|
machine image. This defaults to `qcow2`.
|
||||||
|
|
||||||
- `headless` (bool) - Packer defaults to building QEMU virtual machines by
|
- `headless` (bool) - Packer defaults to building QEMU virtual machines by
|
||||||
launching a GUI that shows the console of the machine being built. When this
|
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.
|
value is set to `true`, the machine will start without a console.
|
||||||
|
|
||||||
You can still see the console if you make a note of the VNC display
|
You can still see the console if you make a note of the VNC display
|
||||||
number chosen, and then connect using `vncviewer -Shared <host>:<display>`
|
number chosen, and then connect using `vncviewer -Shared <host>:<display>`
|
||||||
|
|
||||||
- `disk_image` (bool) - Packer defaults to building from an ISO file, this parameter controls
|
- `disk_image` (bool) - Packer defaults to building from an ISO file, this parameter controls
|
||||||
whether the ISO URL supplied is actually a bootable QEMU image. When
|
whether the ISO URL supplied is actually a bootable QEMU image. When
|
||||||
this value is set to `true`, the machine will either clone the source or
|
this value is set to `true`, the machine will either clone the source or
|
||||||
use it as a backing file (if `use_backing_file` is `true`); then, it
|
use it as a backing file (if `use_backing_file` is `true`); then, it
|
||||||
will resize the image according to `disk_size` and boot it.
|
will resize the image according to `disk_size` and boot it.
|
||||||
|
|
||||||
- `use_backing_file` (bool) - Only applicable when disk_image is true
|
- `use_backing_file` (bool) - Only applicable when disk_image is true
|
||||||
and format is qcow2, set this option to true to create a new QCOW2
|
and format is qcow2, set this option to true to create a new QCOW2
|
||||||
file that uses the file located at iso_url as a backing file. The new file
|
file that uses the file located at iso_url as a backing file. The new file
|
||||||
will only contain blocks that have changed compared to the backing file, so
|
will only contain blocks that have changed compared to the backing file, so
|
||||||
enabling this option can significantly reduce disk usage.
|
enabling this option can significantly reduce disk usage.
|
||||||
|
|
||||||
- `machine_type` (string) - The type of machine emulation to use. Run your qemu binary with the
|
- `machine_type` (string) - The type of machine emulation to use. Run your qemu binary with the
|
||||||
flags `-machine help` to list available types for your system. This
|
flags `-machine help` to list available types for your system. This
|
||||||
defaults to `pc`.
|
defaults to `pc`.
|
||||||
|
|
||||||
- `memory` (int) - The amount of memory to use when building the VM
|
- `memory` (int) - The amount of memory to use when building the VM
|
||||||
in megabytes. This defaults to 512 megabytes.
|
in megabytes. This defaults to 512 megabytes.
|
||||||
|
|
||||||
- `net_device` (string) - The driver to use for the network interface. Allowed values `ne2k_pci`,
|
- `net_device` (string) - The driver to use for the network interface. Allowed values `ne2k_pci`,
|
||||||
`i82551`, `i82557b`, `i82559er`, `rtl8139`, `e1000`, `pcnet`, `virtio`,
|
`i82551`, `i82557b`, `i82559er`, `rtl8139`, `e1000`, `pcnet`, `virtio`,
|
||||||
`virtio-net`, `virtio-net-pci`, `usb-net`, `i82559a`, `i82559b`,
|
`virtio-net`, `virtio-net-pci`, `usb-net`, `i82559a`, `i82559b`,
|
||||||
`i82559c`, `i82550`, `i82562`, `i82557a`, `i82557c`, `i82801`,
|
`i82559c`, `i82550`, `i82562`, `i82557a`, `i82557c`, `i82801`,
|
||||||
`vmxnet3`, `i82558a` or `i82558b`. The Qemu builder uses `virtio-net` by
|
`vmxnet3`, `i82558a` or `i82558b`. The Qemu builder uses `virtio-net` by
|
||||||
default.
|
default.
|
||||||
|
|
||||||
- `output_directory` (string) - This is the path to the directory where the
|
- `output_directory` (string) - This is the path to the directory where the
|
||||||
resulting virtual machine will be created. This may be relative or absolute.
|
resulting virtual machine will be created. This may be relative or absolute.
|
||||||
If relative, the path is relative to the working directory when packer
|
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
|
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
|
the builder. By default this is output-BUILDNAME where "BUILDNAME" is the
|
||||||
name of the build.
|
name of the build.
|
||||||
|
|
||||||
- `qemuargs` ([][]string) - Allows complete control over the qemu command line (though not, at this
|
- `qemuargs` ([][]string) - Allows complete control over the qemu command line (though not, at this
|
||||||
time, qemu-img). Each array of strings makes up a command line switch
|
time, qemu-img). Each array of strings makes up a command line switch
|
||||||
that overrides matching default switch/value pairs. Any value specified
|
that overrides matching default switch/value pairs. Any value specified
|
||||||
as an empty string is ignored. All values after the switch are
|
as an empty string is ignored. All values after the switch are
|
||||||
concatenated with no separator.
|
concatenated with no separator.
|
||||||
|
|
||||||
~> **Warning:** The qemu command line allows extreme flexibility, so
|
~> **Warning:** The qemu command line allows extreme flexibility, so
|
||||||
beware of conflicting arguments causing failures of your run. For
|
beware of conflicting arguments causing failures of your run. For
|
||||||
instance, using --no-acpi could break the ability to send power signal
|
instance, using --no-acpi could break the ability to send power signal
|
||||||
type commands (e.g., shutdown -P now) to the virtual machine, thus
|
type commands (e.g., shutdown -P now) to the virtual machine, thus
|
||||||
preventing proper shutdown. To see the defaults, look in the packer.log
|
preventing proper shutdown. To see the defaults, look in the packer.log
|
||||||
file and search for the qemu-system-x86 command. The arguments are all
|
file and search for the qemu-system-x86 command. The arguments are all
|
||||||
printed for review.
|
printed for review.
|
||||||
|
|
||||||
The following shows a sample usage:
|
The following shows a sample usage:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"qemuargs": [
|
"qemuargs": [
|
||||||
["-m", "1024M"],
|
[ "-m", "1024M" ],
|
||||||
["--no-acpi", ""],
|
[ "--no-acpi", "" ],
|
||||||
[
|
[
|
||||||
"-netdev",
|
"-netdev",
|
||||||
"user,id=mynet0,",
|
"user,id=mynet0,",
|
||||||
"hostfwd=hostip:hostport-guestip:guestport",
|
"hostfwd=hostip:hostport-guestip:guestport",
|
||||||
""
|
""
|
||||||
],
|
],
|
||||||
["-device", "virtio-net,netdev=mynet0"]
|
[ "-device", "virtio-net,netdev=mynet0" ]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
would produce the following (not including other defaults supplied by
|
would produce the following (not including other defaults supplied by
|
||||||
the builder and not otherwise conflicting with the qemuargs):
|
the builder and not otherwise conflicting with the qemuargs):
|
||||||
|
|
||||||
```text
|
```text
|
||||||
qemu-system-x86 -m 1024m --no-acpi -netdev
|
qemu-system-x86 -m 1024m --no-acpi -netdev
|
||||||
user,id=mynet0,hostfwd=hostip:hostport-guestip:guestport -device
|
user,id=mynet0,hostfwd=hostip:hostport-guestip:guestport -device
|
||||||
virtio-net,netdev=mynet0"
|
virtio-net,netdev=mynet0"
|
||||||
```
|
```
|
||||||
|
|
||||||
~> **Windows Users:** [QEMU for Windows](https://qemu.weilnetz.de/)
|
~> **Windows Users:** [QEMU for Windows](https://qemu.weilnetz.de/)
|
||||||
builds are available though an environmental variable does need to be
|
builds are available though an environmental variable does need to be
|
||||||
set for QEMU for Windows to redirect stdout to the console instead of
|
set for QEMU for Windows to redirect stdout to the console instead of
|
||||||
stdout.txt.
|
stdout.txt.
|
||||||
|
|
||||||
The following shows the environment variable that needs to be set for
|
The following shows the environment variable that needs to be set for
|
||||||
Windows QEMU support:
|
Windows QEMU support:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
setx SDL_STDIO_REDIRECT=0
|
setx SDL_STDIO_REDIRECT=0
|
||||||
```
|
```
|
||||||
|
|
||||||
You can also use the `SSHHostPort` template variable to produce a packer
|
You can also use the `SSHHostPort` template variable to produce a packer
|
||||||
template that can be invoked by `make` in parallel:
|
template that can be invoked by `make` in parallel:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"qemuargs": [
|
"qemuargs": [
|
||||||
["-netdev", "user,hostfwd=tcp::{{ .SSHHostPort }}-:22,id=forward"],
|
[ "-netdev", "user,hostfwd=tcp::{{ .SSHHostPort }}-:22,id=forward"],
|
||||||
["-device", "virtio-net,netdev=forward,id=net0"]
|
[ "-device", "virtio-net,netdev=forward,id=net0"]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
`make -j 3 my-awesome-packer-templates` spawns 3 packer processes, each
|
`make -j 3 my-awesome-packer-templates` spawns 3 packer processes, each
|
||||||
of which will bind to their own SSH port as determined by each process.
|
of which will bind to their own SSH port as determined by each process.
|
||||||
This will also work with WinRM, just change the port forward in
|
This will also work with WinRM, just change the port forward in
|
||||||
`qemuargs` to map to WinRM's default port of `5985` or whatever value
|
`qemuargs` to map to WinRM's default port of `5985` or whatever value
|
||||||
you have the service set to listen on.
|
you have the service set to listen on.
|
||||||
|
|
||||||
This is a template engine and allows access to the following variables:
|
This is a template engine and allows access to the following variables:
|
||||||
`{{ .HTTPIP }}`, `{{ .HTTPPort }}`, `{{ .HTTPDir }}`,
|
`{{ .HTTPIP }}`, `{{ .HTTPPort }}`, `{{ .HTTPDir }}`,
|
||||||
`{{ .OutputDir }}`, `{{ .Name }}`, and `{{ .SSHHostPort }}`
|
`{{ .OutputDir }}`, `{{ .Name }}`, and `{{ .SSHHostPort }}`
|
||||||
|
|
||||||
- `qemu_binary` (string) - The name of the Qemu binary to look for. This
|
- `qemu_binary` (string) - The name of the Qemu binary to look for. This
|
||||||
defaults to qemu-system-x86_64, but may need to be changed for
|
defaults to qemu-system-x86_64, but may need to be changed for
|
||||||
some platforms. For example qemu-kvm, or qemu-system-i386 may be a
|
some platforms. For example qemu-kvm, or qemu-system-i386 may be a
|
||||||
better choice for some systems.
|
better choice for some systems.
|
||||||
|
|
||||||
- `qmp_enable` (bool) - Enable QMP socket. Location is specified by `qmp_socket_path`. Defaults
|
- `qmp_enable` (bool) - Enable QMP socket. Location is specified by `qmp_socket_path`. Defaults
|
||||||
to false.
|
to false.
|
||||||
|
|
||||||
- `qmp_socket_path` (string) - QMP Socket Path when `qmp_enable` is true. Defaults to
|
- `qmp_socket_path` (string) - QMP Socket Path when `qmp_enable` is true. Defaults to
|
||||||
`output_directory`/`vm_name`.monitor.
|
`output_directory`/`vm_name`.monitor.
|
||||||
|
|
||||||
- `ssh_host_port_min` (int) - The minimum and maximum port to use for the SSH port on the host machine
|
- `ssh_host_port_min` (int) - The minimum and maximum port to use for the SSH port on the host machine
|
||||||
which is forwarded to the SSH port on the guest machine. Because Packer
|
which is forwarded to the SSH port on the guest machine. Because Packer
|
||||||
often runs in parallel, Packer will choose a randomly available port in
|
often runs in parallel, Packer will choose a randomly available port in
|
||||||
this range to use as the host port. By default this is 2222 to 4444.
|
this range to use as the host port. By default this is 2222 to 4444.
|
||||||
|
|
||||||
- `ssh_host_port_max` (int) - SSH Host Port Max
|
- `ssh_host_port_max` (int) - SSH Host Port Max
|
||||||
- `use_default_display` (bool) - If true, do not pass a -display option
|
- `use_default_display` (bool) - If true, do not pass a -display option
|
||||||
to qemu, allowing it to choose the default. This may be needed when running
|
to qemu, allowing it to choose the default. This may be needed when running
|
||||||
under macOS, and getting errors about sdl not being available.
|
under macOS, and getting errors about sdl not being available.
|
||||||
|
|
||||||
- `display` (string) - What QEMU -display option to use. Defaults to gtk, use none to not pass the
|
- `display` (string) - What QEMU -display option to use. Defaults to gtk, use none to not pass the
|
||||||
-display option allowing QEMU to choose the default. This may be needed when
|
-display option allowing QEMU to choose the default. This may be needed when
|
||||||
running under macOS, and getting errors about sdl not being available.
|
running under macOS, and getting errors about sdl not being available.
|
||||||
|
|
||||||
- `vnc_bind_address` (string) - The IP address that should be
|
- `vnc_bind_address` (string) - The IP address that should be
|
||||||
binded to for VNC. By default packer will use 127.0.0.1 for this. If you
|
binded to for VNC. By default packer will use 127.0.0.1 for this. If you
|
||||||
wish to bind to all interfaces use 0.0.0.0.
|
wish to bind to all interfaces use 0.0.0.0.
|
||||||
|
|
||||||
- `vnc_use_password` (bool) - Whether or not to set a password on the VNC server. This option
|
- `vnc_use_password` (bool) - Whether or not to set a password on the VNC server. This option
|
||||||
automatically enables the QMP socket. See `qmp_socket_path`. Defaults to
|
automatically enables the QMP socket. See `qmp_socket_path`. Defaults to
|
||||||
`false`.
|
`false`.
|
||||||
|
|
||||||
- `vnc_port_min` (int) - The minimum and maximum port
|
- `vnc_port_min` (int) - The minimum and maximum port
|
||||||
to use for VNC access to the virtual machine. The builder uses VNC to type
|
to use for VNC access to the virtual machine. The builder uses VNC to type
|
||||||
the initial boot_command. Because Packer generally runs in parallel,
|
the initial boot_command. Because Packer generally runs in parallel,
|
||||||
Packer uses a randomly chosen port in this range that appears available. By
|
Packer uses a randomly chosen port in this range that appears available. By
|
||||||
default this is 5900 to 6000. The minimum and maximum ports are inclusive.
|
default this is 5900 to 6000. The minimum and maximum ports are inclusive.
|
||||||
|
|
||||||
|
- `vnc_port_max` (int) - VNC Port Max
|
||||||
|
- `vm_name` (string) - This is the name of the image (QCOW2 or IMG) file for
|
||||||
|
the new virtual machine. By default this is packer-BUILDNAME, where
|
||||||
|
"BUILDNAME" is the name of the build. Currently, no file extension will be
|
||||||
|
used unless it is specified in this option.
|
||||||
|
|
||||||
- `vnc_port_max` (int) - VNC Port Max
|
|
||||||
- `vm_name` (string) - This is the name of the image (QCOW2 or IMG) file for
|
|
||||||
the new virtual machine. By default this is packer-BUILDNAME, where
|
|
||||||
"BUILDNAME" is the name of the build. Currently, no file extension will be
|
|
||||||
used unless it is specified in this option.
|
|
||||||
|
|
|
@ -1,18 +1,18 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/scaleway/config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the Config struct in builder/scaleway/config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `snapshot_name` (string) - The name of the resulting snapshot that will
|
- `snapshot_name` (string) - The name of the resulting snapshot that will
|
||||||
appear in your account. Default packer-TIMESTAMP
|
appear in your account. Default packer-TIMESTAMP
|
||||||
|
|
||||||
- `image_name` (string) - The name of the resulting image that will appear in
|
- `image_name` (string) - The name of the resulting image that will appear in
|
||||||
your account. Default packer-TIMESTAMP
|
your account. Default packer-TIMESTAMP
|
||||||
|
|
||||||
- `server_name` (string) - The name assigned to the server. Default
|
- `server_name` (string) - The name assigned to the server. Default
|
||||||
packer-UUID
|
packer-UUID
|
||||||
|
|
||||||
- `bootscript` (string) - The id of an existing bootscript to use when
|
- `bootscript` (string) - The id of an existing bootscript to use when
|
||||||
booting the server.
|
booting the server.
|
||||||
|
|
||||||
- `boottype` (string) - The type of boot, can be either local or
|
- `boottype` (string) - The type of boot, can be either local or
|
||||||
bootscript, Default bootscript
|
bootscript, Default bootscript
|
||||||
|
|
||||||
- `remove_volume` (bool) - Remove Volume
|
- `remove_volume` (bool) - Remove Volume
|
|
@ -1,28 +1,29 @@
|
||||||
<!-- Code generated from the comments of the Config struct in builder/scaleway/config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the Config struct in builder/scaleway/config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `api_token` (string) - The token to use to authenticate with your account.
|
- `api_token` (string) - The token to use to authenticate with your account.
|
||||||
It can also be specified via environment variable SCALEWAY_API_TOKEN. You
|
It can also be specified via environment variable SCALEWAY_API_TOKEN. You
|
||||||
can see and generate tokens in the "Credentials"
|
can see and generate tokens in the "Credentials"
|
||||||
section of the control panel.
|
section of the control panel.
|
||||||
|
|
||||||
- `organization_id` (string) - The organization id to use to identify your
|
- `organization_id` (string) - The organization id to use to identify your
|
||||||
organization. It can also be specified via environment variable
|
organization. It can also be specified via environment variable
|
||||||
SCALEWAY_ORGANIZATION. Your organization id is available in the
|
SCALEWAY_ORGANIZATION. Your organization id is available in the
|
||||||
"Account" section of the
|
"Account" section of the
|
||||||
control panel.
|
control panel.
|
||||||
Previously named: api_access_key with environment variable: SCALEWAY_API_ACCESS_KEY
|
Previously named: api_access_key with environment variable: SCALEWAY_API_ACCESS_KEY
|
||||||
|
|
||||||
- `region` (string) - The name of the region to launch the server in (par1
|
- `region` (string) - The name of the region to launch the server in (par1
|
||||||
or ams1). Consequently, this is the region where the snapshot will be
|
or ams1). Consequently, this is the region where the snapshot will be
|
||||||
available.
|
available.
|
||||||
|
|
||||||
- `image` (string) - The UUID of the base image to use. This is the image
|
- `image` (string) - The UUID of the base image to use. This is the image
|
||||||
that will be used to launch a new server and provision it. See
|
that will be used to launch a new server and provision it. See
|
||||||
the images list
|
the images list
|
||||||
get the complete list of the accepted image UUID.
|
get the complete list of the accepted image UUID.
|
||||||
|
|
||||||
|
- `commercial_type` (string) - The name of the server commercial type:
|
||||||
|
ARM64-128GB, ARM64-16GB, ARM64-2GB, ARM64-32GB, ARM64-4GB,
|
||||||
|
ARM64-64GB, ARM64-8GB, C1, C2L, C2M, C2S, START1-L,
|
||||||
|
START1-M, START1-S, START1-XS, X64-120GB, X64-15GB, X64-30GB,
|
||||||
|
X64-60GB
|
||||||
|
|
||||||
- `commercial_type` (string) - The name of the server commercial type:
|
|
||||||
ARM64-128GB, ARM64-16GB, ARM64-2GB, ARM64-32GB, ARM64-4GB,
|
|
||||||
ARM64-64GB, ARM64-8GB, C1, C2L, C2M, C2S, START1-L,
|
|
||||||
START1-M, START1-S, START1-XS, X64-120GB, X64-15GB, X64-30GB,
|
|
||||||
X64-60GB
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
<!-- Code generated from the comments of the TencentCloudAccessConfig struct in builder/tencentcloud/cvm/access_config.go; DO NOT EDIT MANUALLY -->
|
<!-- Code generated from the comments of the TencentCloudAccessConfig struct in builder/tencentcloud/cvm/access_config.go; DO NOT EDIT MANUALLY -->
|
||||||
|
|
||||||
- `skip_region_validation` (bool) - Do not check region and zone when validate.
|
- `skip_region_validation` (bool) - Do not check region and zone when validate.
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue