Commit graph

5388 commits

Author SHA1 Message Date
Mike Brancato
0f09638f7a Add HCL2 spec for KeyVault SKU 2020-03-11 20:48:34 -04:00
Mike Brancato
3c6b248bd5 Fix formatting 2020-03-11 20:45:44 -04:00
Mike Brancato
926e3ac2e4 Add support for configurable KeyVault SKU 2020-03-11 20:33:57 -04:00
Paul Cichonski (pcichons)
c3d793255e Do not test if NIC is reachable when ssh bastion is required
Relates to https://github.com/hashicorp/packer/issues/8866
2020-03-11 19:27:48 -04:00
Wilken Rivera
66ad6f3483
builders: Fix gosimple S1007 linting issue (#8871)
Results before change
```
⇶  golangci-lint run ./... --disable-all --enable=gosimple | grep 1007
builder/alicloud/ecs/image_config.go:208:9: S1007: should use raw string
post-processor/vsphere-template/step_mark_as_template.go:130:8: S1007: shape twice (gosimple)
builder/azure/arm/config.go:58:27: S1007: should use raw string (`...`)
builder/azure/arm/config.go:59:27: S1007: should use raw string (`...`)
builder/qemu/driver.go:192:15: S1007: should use raw string (`...`)
```

Results after change
```
⇶  golangci-lint run ./... --disable-all --enable=gosimple | grep 1007
```
2020-03-11 10:29:22 +01:00
Megan Marsh
4133acbdf3 update spot price docs 2020-03-09 08:46:30 -07:00
jnsc
764b4cb50a
updated link to GuestOsIdentifier (#8849)
Co-authored-by: Adrien Delorme <adrien.delorme@icloud.com>
2020-03-06 15:30:11 +01:00
Wilken Rivera
698924f246
vSphere ISO supports more common options (#8845)
The `convert_to_template` and `create_snapshot` are supported across
both builders, but currently only shown in the vSphere Clone docs, this adds
them to it.
2020-03-05 15:04:15 -05:00
Megan Marsh
7e382d0df7
Merge pull request #8828 from mvitaly/fix_8816
Remove all floppy controllers before adding a new one
2020-03-05 09:35:20 -08:00
Megan Marsh
8832b3e2ca
Merge pull request #8787 from jhawk28/vsphere_iso_multiple_disks
(vsphere-iso) add ability to define multiple disks
2020-03-04 15:17:54 -08:00
Wilken Rivera
e1a46ec293
Fix gosimple S1025 linting errors (#8838)
Remove unneeded use of fmt.Sprintf for variables that are already strings.
2020-03-04 15:31:30 -05:00
Joshua Foster
1dbe5abc14 update documentation based on feedback 2020-03-04 09:48:01 -05:00
Joshua Foster
d7230827cd (vsphere-iso) add ability to define multiple disks
Closes #8749
2020-03-04 09:48:01 -05:00
Vitaly Polonetsky
25f59a1592 Add a simple test for the call to remove all floppy controllers 2020-03-03 20:58:09 -08:00
Sylvia Moss
ce674ff272
Add exclude mapstructure tag to exclude from hcl2spec struct (#8785) 2020-03-03 17:13:39 +01:00
Megan Marsh
6dbe86fcf4
only re-set path name if it needs to be unquoted; otherwise unquote r… (#8826) 2020-03-03 11:17:48 +01:00
Vitaly Polonetsky
67c9c2a59a Remove all floppy controllers before adding a new one 2020-03-02 21:56:20 -08:00
Megan Marsh
9c9826ee4b
Merge pull request #8714 from williamb1024/hyperv-gen1-boot-order
WIP: Add Hyper-V builder `first_boot_device` setting to allow the selection of the initial device or device class used for booting the VM.
2020-03-02 12:27:25 -08:00
Calle Pettersson
17fa6a3e95 proxmox: template_name cannot contain spaces 2020-02-26 08:44:27 +01:00
William Brooks
8e0ed66318 Fix raw string breaks escaping 2020-02-22 02:40:41 -06:00
William Brooks
efa9d94d8e use raw string around regex to make go lint happy 2020-02-22 02:22:59 -06:00
William
d246d0c82a
More testing (#4)
Additional testing for SetFirstBootDevice and checking configuration in config.Prepare()
2020-02-22 02:03:42 -06:00
William
b5b190b1f0
Bootdevice testing (#3)
Start step_first_boot_device_test and rejigger ParseBootDeviceIdentifier to avoid regex where reasonable.
2020-02-22 00:29:05 -06:00
William Brooks
723a9eba9a really, really, really fix driver_mock 2020-02-21 01:53:13 -06:00
William Brooks
11fae17308 again, really fix driver_mock 2020-02-21 01:44:49 -06:00
William Brooks
2de731453f really fix driver_mock this time 2020-02-21 01:43:03 -06:00
William Brooks
0a0fbfc33b fmt 2020-02-21 01:31:18 -06:00
William Brooks
dd8f4370c6 initial support for gen2 and fix driver_mock 2020-02-21 01:30:59 -06:00
William Brooks
5e1e4ec701 fmt && generate 2020-02-21 01:07:58 -06:00
William Brooks
d7300f4635 Remove legacy_boot and replace with first_boot_device (initial) 2020-02-21 01:01:09 -06:00
Rens Sikma
3d8bda31a4 modify docstring 2020-02-20 12:54:35 +01:00
Megan Marsh
dde74232f2
Clearly document all template-engine-enabled options (#8770) 2020-02-20 11:05:27 +01:00
Megan Marsh
eb35617985
Merge pull request #8756 from aeber/feature_eagerly_scrub_disks
vsphere-iso: add support for eagerly zeroed / scrubbed disks
2020-02-19 09:47:49 -08:00
Megan Marsh
5846c0cdd7
Merge pull request #8753 from jhawk28/bug_8743
fix #8743 by using interface instead of Network object
2020-02-18 10:12:34 -08:00
Joshua Foster
3f80414e6d fix #8743 by using interface instead of Network object 2020-02-18 10:05:18 -05:00
Li Kexian
f3231018ca
showing tencentcloud image id after copy to desination region (#8763) 2020-02-18 11:17:19 +01:00
Jason A. Beranek
9cbb49bacb
builder/vmware/iso: Expand guest_os_type docs (#8760) 2020-02-18 11:11:20 +01:00
Anselm Eberhardt
94130b5def
add autogenerated help for disk_eagerly_scrub 2020-02-17 17:01:00 +01:00
Anselm Eberhardt
6c749eecf7
add support for eagerly zeroed / scrubbed disks 2020-02-17 16:26:07 +01:00
William
807f39284d
Merge pull request #2 from hashicorp/master
merge from hashicorp/packer
2020-02-15 23:13:38 -06:00
jhawk28
7f0de5fc8d
add ability to define multiple NICs for vsphere-iso (#8739) 2020-02-14 17:51:57 +01:00
Wilken Rivera
9ec8b67392
Add golangci-lint to project (#8686)
* Add golangci-lint as linting tool

* Disable failing staticchecks to start; GitHub issue to handle coming soon

* Run `goimports -w` to repair all source files that have improperly
formatted imports

* makefile: Add ci-lint target to run on travis

This change adds a new make target for running golangci-lint on newly
added Go files only. This target is expected to run during Packer ci builds.

* .github/contributing: Add code linting instructions

* travis: Update job configuration to run parallel builds
2020-02-14 11:42:29 -05:00
Megan Marsh
4f7670a1e6
Merge pull request #8690 from daxgames/vsphere_iso_remove_cdrom
vsphere iso remove cdroms
2020-02-13 11:00:47 -08:00
Sylvia Moss
23fa3107a3
Render variables one time on prepare method (#8727) 2020-02-13 17:35:23 +01:00
Dax T. Games
78012dc56f add autogenerated help for vsphere iso remove cdrom 2020-02-12 11:31:46 -05:00
Wilken Rivera
c99dc56544 Update Azure ARM documentation
* Change generated documentation to indicate what image selection
options are required, and when.

* Refactor the structure of the documentation to highlight required
options for different types of builds
2020-02-10 21:14:11 -05:00
Megan Marsh
a90f75585b
Merge pull request #8709 from hashicorp/aws_max_retries
add max_retries option to aws builders
2020-02-10 14:58:44 -08:00
Wilken Rivera
7e45a10e90
Merge pull request #8717 from luba239/master
Add service account ID to config #8716
2020-02-10 14:27:59 -05:00
Megan Marsh
dfefe7e8d9
Merge pull request #8704 from hashicorp/custom_vault_azure
Custom vault azure
2020-02-10 10:51:06 -08:00
Luba Grinkevich
a067b23e6d Execute make generate #8716 2020-02-10 18:51:29 +03:00
Luba Grinkevich
38fe16e01f Add service account ID to config #8716 2020-02-10 18:36:19 +03:00
William Brooks
61f5f867eb make generate 2020-02-09 16:41:07 -06:00
William Brooks
9891e75f75 update hyper-v driver_mock.go 2020-02-09 15:39:35 -06:00
William Brooks
31622b50ac applied fmt 2020-02-09 15:22:36 -06:00
William Brooks
7152732597 changing SetBootDvdDrive messaging to be truthful 2020-02-09 14:26:46 -06:00
William Brooks
55ae803852 Add Hyper-V support for Gen-1 boot order with ISO 2020-02-09 13:08:22 -06:00
Adrien Delorme
7d5f0c11af add max_retries option to aws builders 2020-02-07 16:36:14 +01:00
Sylvia Moss
6d7c6ba18c
Add step_http_ip_discover to virtualbox to allow HTTPIP in vboxmanage (#8700) 2020-02-07 10:38:48 +01:00
Megan Marsh
2181f10e79 fix statebag setup; simplify conditional 2020-02-06 16:54:07 -08:00
Megan Marsh
7dd1fa44db regenerate code 2020-02-06 16:41:28 -08:00
Megan Marsh
9643ad35f1 add tests 2020-02-06 16:41:28 -08:00
Megan Marsh
6d6b94d515 Add ability to use custom keyvault into azure builds 2020-02-06 16:41:28 -08:00
Wilken Rivera
a1d9ba0e32
Merge pull request #8699 from fly1028/fix-instance-running-timeout
Instance Running waiter not aware of global waiter settings
2020-02-06 17:18:59 -05:00
Rens Sikma
c8062cc8b3 fix #8679 with source_image_project_id as list 2020-02-06 10:30:04 +01:00
Patrick Ng
e5e5fd1198 Instance Running waiter not aware of global waiter settings 2020-02-05 15:09:09 -08:00
Dax T. Games
1cb6f4e456 Merge branch 'vsphere_iso_remove_cdrom' of https://github.com/daxgames/packer into vsphere_iso_remove_cdrom
* 'vsphere_iso_remove_cdrom' of https://github.com/daxgames/packer:
  format
  Update builder.go
2020-02-05 11:11:43 -05:00
Dax T. Games
76680ac1c6 add docs 2020-02-05 11:10:50 -05:00
Dax T. Games
6b82bf5a93 format 2020-02-05 15:25:49 +00:00
Dax T Games
9756a9858a
Update builder.go 2020-02-04 14:41:44 -05:00
Dax T. Games
4fa0f6baa3 recreate https://github.com/jetbrains-infra/packer-builder-vsphere/pull/238 2020-02-04 14:25:45 -05:00
Wilken Rivera
561f02cc2f
builder/azure-arm: Update logic for setting subscriptionID (#8685)
* builder/azure-arm: Update logic for setting subscriptionID

Previously, when using managed identities, the Azure builder would set the SubscriptionID in the Prepare method. But would not update it after getting the updated SubscriptionID from the metadata server. This change updates the Run method to ensure a valid subscriptionID is saved to the statebag before continuing with an image build.

Co-authored-by: Paul Meyer <paul.meyer@outlook.com>
2020-02-04 10:54:58 -05:00
Sylvia Moss
08b0bd1d2c
Fix HCL2 code generation for slices within another slice (#8669) 2020-02-03 17:03:28 +01:00
Yu SungDuk
df18187032
builder/ncloud: Migrate ncloud-sdk-go-v1 to ncloud-sdk-go-v2 (#8678) 2020-02-03 14:55:01 +01:00
Megan Marsh
d252a24b82 allow user to set winrm_host override like we do ssh_host override 2020-01-30 15:22:22 -08:00
nywilken
654cc4c4d5 builder/azure-arm: Set WinRMPassword on the communicator config
Build results before change
```
azure-arm: output will be in this color.

==> azure-arm: Running builder ...
azure-arm:
==> azure-arm: Provisioning with Powershell...
==> azure-arm: Provisioning with powershell script:
/tmp/powershell-provisioner922851060
==> azure-arm: Exception calling "RegisterTaskDefinition" with "7" argument(s): "(38,4):Task:"
==> azure-arm: At C:\Windows\Temp\packer-elevated-shell-5e320d29-bdbd-b619-9e64-0c8a301b9d1d.p
==> azure-arm: s1:60 char:1 ==> azure-arm: + $f.RegisterTaskDefinition($name, $t, 6,
"packer", $password, $logon_type,
==> azure-arm: $null) ...
==> azure-arm: +
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
==> azure-arm: ~~~
==> azure-arm:     + CategoryInfo          : NotSpecified:
(:) [], MethodInvocationException
==> azure-arm:     + FullyQualifiedErrorId :
ComMethodTargetInvocation
==> azure-arm:
==> azure-arm: Exception calling "GetTask" with "1"
argument(s): "The system cannot find the
==> azure-arm: file specified. (Exception from HRESULT:
0x80070002)"
==> azure-arm: At
C:\Windows\Temp\packer-elevated-shell-5e320d29-bdbd-b619-9e64-0c8a301b9d1d.p
==> azure-arm: s1:61 char:1
==> azure-arm: + $t = $f.GetTask("\$name")
==> azure-arm: + ~~~~~~~~~~~~~~~~~~~~~~~~~
==> azure-arm:     + CategoryInfo          : NotSpecified:
(:) [], MethodInvocationException
==> azure-arm:     + FullyQualifiedErrorId :
ComMethodTargetInvocation
==> azure-arm:
==> azure-arm: Method invocation failed because
[System.__ComObject] does not contain a
==> azure-arm: method named 'Run'.
==> azure-arm: At
C:\Windows\Temp\packer-elevated-shell-5e320d29-bdbd-b619-9e64-0c8a301b9d1d.p
==> azure-arm: s1:62 char:1
==> azure-arm: + $t.Run($null) | Out-Null
==> azure-arm: + ~~~~~~~~~~~~~~~~~~~~~~~~
==> azure-arm:     + CategoryInfo          :
InvalidOperation: (Run:String) [], RuntimeExcept
==> azure-arm:    ion
==> azure-arm:     + FullyQualifiedErrorId : MethodNotFound
==> azure-arm:
Cancelling build after receiving interrupt
==> azure-arm: Removing the created Deployment object:
'pkrdp087bb80ibj'
==> azure-arm: Removing the created Deployment object:
'kvpkrdp087bb80ibj'
==> azure-arm:
==> azure-arm: Cleanup requested, deleting resource group
...
==> azure-arm: Resource group has been deleted.
Build 'azure-arm' errored: Build was cancelled.
Cleanly cancelled builds after being interrupted.
```

Build results after change
```
azure-arm: WinRM connected.
==> azure-arm: <Objs Version="1.1.0.1"
xmlns="http://schemas.microsoft.com/powershell/2004/04"><Obj S="progress" RefId="0"><TN RefId="0"><T>System.Management.Automation.PSCustomObject</T><T>System.Object</T></TN><MS><I64
N="SourceId">1</I64><PR N="Record"><AV>Preparing modules for first use.</AV><AI>0</AI><Nil /><PI>-1</PI><PC>-1</PC><T>Completed</T><SR>-1</SR><SD> </SD></PR></MS></Obj><Obj S="progress" RefId="1"><TNRef RefId="0" /><MS><I64 N="SourceId">2</I64><PR N="Record"><AV>Preparing modules for first use.</AV><AI>0</AI><Nil /><PI>-1</PI><PC>-1</PC><T>Completed</T><SR>-1</SR><SD> </SD></PR></MS></Obj><Obj S="progress" RefId="2"><TNRef RefId="0" /><MS><I64 N="SourceId">3</I64><PR N="Record"><AV>Preparing modules for first use.</AV><AI>0</AI><Nil /><PI>-1</PI><PC>-1</PC><T>Completed</T><SR>-1</SR><SD> </SD></PR></MS></Obj></Objs>
==> azure-arm: Connected to WinRM!
==> azure-arm: Running local shell script:
/tmp/packer-shell091779215 azure-arm: 022xUtbwAH3DdqIoRCOh9caZi8tOYqcY
==> azure-arm: Provisioning with Powershell...
==> azure-arm: Provisioning with powershell script: /tmp/powershell-provisioner469853889
azure-arm: HELLO NEW USER; automatically generated aws password is: 022xUtbwAH3DdqIoRCOh9caZi8tOYqcY
==> azure-arm: Querying the machine's properties ...
```
2020-01-30 12:07:48 -05:00
Sylvia Moss
dc31bad539
Sharing info with post-processors via artifact (#8632) 2020-01-30 11:27:58 +01:00
nywilken
d2a9e6b32e Format code with gofmt -s -w 2020-01-28 16:52:50 -05:00
Megan Marsh
e57004b2ec
Merge pull request #8662 from hashicorp/return_with_ssh_wait_timeout
WIP Add ssh_wait_timeout back for backward compatibility
2020-01-28 12:08:42 -08:00
Megan Marsh
6a07d76416
Merge pull request #8654 from hashicorp/fix_8583
Extract http ip discover to a new step
2020-01-28 08:50:48 -08:00
Moss
6ad7f593bf Undo ssh_wait_timeout backward incompatibility 2020-01-28 17:26:01 +01:00
Moss
61bee60ecf Add StepHttpIpDiscover tests 2020-01-28 10:31:17 +01:00
Chris Lundquist
56206aa3ae
Merge pull request #8636 from hashicorp/clundquist/fix-lxd-dir-upload
fixes and closes #8547
2020-01-27 19:22:49 -08:00
Moss
df38d11270 Fix compilation error 2020-01-27 17:15:13 +01:00
Moss
0566f1f999 Extract http ip discover to a new step 2020-01-27 17:06:56 +01:00
Megan Marsh
8c8de27509 add note about error abort to vmware warning 2020-01-24 09:02:30 -08:00
Megan Marsh
b0b10f6939
Merge pull request #8496 from ryanhartje/delete_arm_deployment_on_cleanup
attempting to resolve deployment quota issue due to non-cleanup
2020-01-23 09:48:20 -08:00
Ryan Hartje
c4a9715e50 updated the deleteTemplate invocation to a defer at the start of cleanup 2020-01-22 16:58:26 -06:00
Wilken Rivera
111bab86d9
Merge pull request #8622 from datalot/pre-validate-with-filters
Allow aws builder pre validation to pass when subnet filters are present
2020-01-22 15:00:44 -05:00
Chris Lundquist
15cbe4769c fixes and closes #8547 2020-01-21 19:49:49 -08:00
Sylvia Moss
0b7251a4bb
Share .Device and .MountPath between builders, provisioners and post-processors (#8621) 2020-01-20 16:29:38 +01:00
Calle Pettersson
8e4c165173 Proxmox upload ISO 2020-01-17 22:17:28 +01:00
Rich Cavanaugh
4fb0de5256 allow validation to pass when subnet filters are present 2020-01-17 11:57:42 -05:00
Sylvia Moss
39c25b2c66
Add retry mechanism to amazon DeleteSnapshot (#8614) 2020-01-16 14:38:46 +01:00
Sylvia Moss
0677b02e18
Share SourceImageName with provisioners and manifest post-processor (#8603) 2020-01-16 12:04:03 +01:00
Megan Marsh
83dc0a7c8b fix config decode 2020-01-15 14:27:55 -08:00
Megan Marsh
fac320d290
Merge pull request #8480 from hashicorp/merge-vsphere-builder
Merge the vSphere builder
2020-01-15 14:11:20 -08:00
Megan Marsh
ecf0e5794a
Merge pull request #8607 from hashicorp/fix_vagrant_crash
Fix a crash in the vagrant driver
2020-01-15 13:33:23 -08:00
Megan Marsh
a847530a83
Update builder/vagrant/driver_2_2.go
Co-Authored-By: Wilken Rivera <dev@wilkenrivera.com>
2020-01-15 13:12:44 -08:00
Megan Marsh
d55f256cac
Merge pull request #8414 from footplus/fix_osc_ssh_host_detection
builder/osc: fix ssh host detection in Public Cloud and Nets
2020-01-15 12:13:28 -08:00
Megan Marsh
48811ed4e5 replace buffer copy loop with a scanner that handles carriage returns 2020-01-15 12:05:29 -08:00
Megan Marsh
6315f69019 break out of loop once channel is read from. 2020-01-15 11:00:41 -08:00
Megan Marsh
b8edaa9850
Merge pull request #8605 from hashicorp/fix_8599
remove unhelpful quotes to fix bug with reading key from a path with …
2020-01-15 10:56:23 -08:00
Megan Marsh
bbd64896a0 use strconv.unquote instead of DIY 2020-01-15 10:23:25 -08:00
Sylvia Moss
0e177915f8
Add retry mechanism to DeregisterImage from awsec2 (#8598) 2020-01-15 10:28:14 +01:00
Megan Marsh
5980d32efb remove unhelpful quotes to fix bug with reading key from a path with spaces in it. 2020-01-14 13:57:11 -08:00
Megan Marsh
82f03fca7c fix to work with hcl2; update tests 2020-01-13 15:52:05 -08:00
Megan Marsh
dfb45e86cc remove unused file, set up prepare() properly to work with HCL2 in vsphere-clone builder 2020-01-13 12:33:56 -08:00
Megan Marsh
9459e2233b fix config loading to work with HCL2 2020-01-13 11:51:36 -08:00
Megan Marsh
f84634aff3 small log line improvements 2020-01-13 11:43:53 -08:00
Sylvia Moss
d6a351b173
Rename communicator config variables and remove deprecated code (#8584) 2020-01-09 08:37:30 -08:00
Sylvia Moss
baa203bb53
Adds acpi_shutdown to virtualbox builder (#8587) 2020-01-09 08:36:19 -08:00
Moss
6a2d73a0e9 Add missing doc variable description 2020-01-08 15:28:53 -08:00
Megan Marsh
e87aa237dd Get plugin up to parity with v1.5.0. Remove custom jetbrains-internal testing logic; disable acceptance tests (for now) until we can set up a test rig inside of HashiCorp. Regenerate code based on vendoring changes. 2020-01-08 14:41:51 -08:00
Shengyu Liu
c3c2622204 builder/tencentcloud: Correct the image name length validation, the max length of image name is 60 (#8536) 2020-01-08 12:05:37 +01:00
Megan Marsh
073eda76aa remove extraneous files from when vsphere builder was a plugin, and move README into packer website as separated docs for vsphere-clone and vsphere-iso. Move option descriptions into struct code, and generate documentation directly from those structs as we do inside of the other builders 2020-01-07 16:59:31 -08:00
Megan Marsh
8cb1f7b1c1 Merge branch 'master' into merge-vsphere-builder 2020-01-07 14:23:38 -08:00
Megan Marsh
eeac289fa5
Merge pull request #8535 from alexyueer/master
fix issue #8534
2020-01-07 12:47:23 -08:00
Megan Marsh
21edd085c7
Merge pull request #8560 from alexyueer/feature/support_aliyun_profile_20200103
support aliyun profile
2020-01-07 12:45:54 -08:00
Megan Marsh
e9bb81a440
Merge pull request #8578 from hashicorp/unstick_vmware_shutdown_tests
bump the timeout to a very high level to protect against laggy CI mac…
2020-01-07 12:44:48 -08:00
Megan Marsh
7d789a1483
Merge pull request #8579 from hashicorp/do_8562
step_download: return without error if Urls is empty
2020-01-07 12:01:24 -08:00
Megan Marsh
c446bf07c5
Merge pull request #8574 from hashicorp/fix_8541
Fix 8541
2020-01-07 12:00:27 -08:00
Megan Marsh
90bdcf58bd update step_download to return an ActionContinue if the URls field is empty. this allows us to simplify the hyperv builder, and is still safe because all other builders and uses of step_download already validate that the iso url is not empty if that's what they need, most of them inside of the IsoConfig prepare function. 2020-01-07 10:45:24 -08:00
Megan Marsh
be3c1ef106 bump the timeout to a very high level to protect against laggy CI machines 2020-01-07 09:59:25 -08:00
Megan Marsh
af2c4346f8
Merge pull request #8561 from ata18/ata18-end-of-life
Set expiry for image versions in SIG
2020-01-07 09:53:14 -08:00
Adrien Delorme
7b5a868de2 virtualbox/vm.Builder: use config as a non pointer to avoid a panic
this is a continuation to #8513
2020-01-07 16:55:50 +01:00
Adrien Delorme
13ea97a1df mapstructure-to-hcl2: make basic named types pointers ( optional ) 2020-01-07 12:46:27 +01:00
Adrien Delorme
731904d3d2 mapstructure-to-hcl2: use accessor for named types and not named type + go genrate + tests 2020-01-07 11:44:22 +01:00
Megan Marsh
be97507088 delete qmp socket path. Also, clean up unnecessary use of statebag to recieve step values. (#8572) 2020-01-07 11:18:01 +01:00
Aishwarya Thangappa
9f24869e36 Update the error handling for end-of-life-date parsing 2020-01-06 22:58:26 -08:00
Aishwarya Thangappa
9569d35d14 Set expiry for image versions in SIG
Updates azure builder to support setting end-of-life-date for
image versions in shared image gallery. In addition, this change adds
the ability to set the global replica count for the image version
and allows the vms deployed from the latest version of the Image
Definition to exclude this Image Version.
2020-01-06 22:58:26 -08:00
Megan Marsh
b7ee807cf1
Merge pull request #8571 from hashicorp/fix_8565
fix ssh interface docs for amazon builders
2020-01-06 14:34:40 -08:00
Megan Marsh
6655f93b59 fix typo and regenerate code 2020-01-06 14:12:29 -08:00
Megan Marsh
7411a8a6ef
Merge pull request #8550 from tpounds/add-ami-owner-to-template
Add source AMI owner ID/name to build template
2020-01-06 13:38:49 -08:00
Megan Marsh
76251e5fd2 fix ssh interface docs for amazon builders 2020-01-06 12:01:30 -08:00
Lars Lehtonen
8098ba9cdf builder/virtualbox/common: remove unused url variable (#8559) 2020-01-06 16:45:05 +01:00
alexyueer
ec4a7b6af0 support aliyun profile 2020-01-03 12:17:34 +08:00
Trevor Pounds
47e48ebc24 Add source AMI owner ID/name to build template. 2019-12-30 14:04:49 -05:00
wujin
2e2f197bc3 add SecurityGroupId when DescribeSecurityGroups if user specify SecurityGroupId 2019-12-24 09:47:52 +08:00
Megan Marsh
348e00422e
Merge pull request #8509 from hashicorp/fix_step_import_panic
Remove config dependency from inside StepImport
2019-12-20 09:19:30 -08:00
Moss
7912e496aa Remove config dependency inside StepImport 2019-12-20 11:58:28 +01:00
Megan Marsh
127905e855 remove time flaky time limited tests (#8522)
* remove flaky test. It isn't very useful anyway given that we're slowly adding retries to the checks for lockfiles

* remove time-component from retry test; in underpowered CI builds, this can flake fairly often.
2019-12-20 08:16:18 +01:00
zhuzhih2017
66445ecd2d
Merge pull request #8425 from haoshuwei/master
add show expired arg when describe image
2019-12-20 13:33:55 +08:00
haoshuwei
37dc411f30 add skip_image_validation arg to use an expired image as the soure image
Signed-off-by: haoshuwei <haoshuwei24@gmail.com>
2019-12-20 11:28:31 +08:00
Wilken Rivera
f45d315be4
Merge pull request #8518 from hashicorp/update_jdcloud_config_pointer
update jdcloud statebag to use pointers for config, to bring in line …
2019-12-19 15:45:40 -05:00
Megan Marsh
f47d9f1b1f
Merge pull request #8514 from hashicorp/fix_5821
Configure NAT interface before forwarded port mapping
2019-12-19 11:30:33 -08:00
Megan Marsh
09489da149 update jdcloud statebag to use pointers for config, to bring in line with other implementations 2019-12-19 11:17:04 -08:00
Adrien Delorme
f1e6f8eac1 removed unused config puts 2019-12-19 18:06:39 +01:00
Adrien Delorme
a67948f155 fix config pointers 2019-12-19 17:51:57 +01:00
Moss
9216f43463 Configure NAT interface before forwarded port mapping 2019-12-19 17:03:31 +01:00
Moss
42cf9ef064 Remove pointer fixing panic on interface conversion 2019-12-19 13:30:54 +01:00
Wilken Rivera
a72242cd70
Merge pull request #8498 from hashicorp/f-builder_docker-typeassertion-check
builder/docker: Fix interface conversion issue when getting config from state bag
2019-12-17 18:08:00 -05:00
Megan Marsh
dca2c03cdb
Merge pull request #7866 from hashicorp/sharing_info
Add new struct to Provision() method signature, allowing us to share connection and credential info generated at build time with provisioners.
2019-12-17 14:55:20 -08:00
nywilken
9403d55549 builder/docker: Add type assertion check when reading config from state bag 2019-12-17 17:48:35 -05:00
nywilken
0ba6b22fee builder/docker: Update type of config stored in state bag 2019-12-17 17:48:35 -05:00
Ryan Hartje
bfc3b72050 attempting to resolve deployment quota issue due to non-cleanup 2019-12-17 09:57:57 -06:00
nywilken
1eb55c2ae3 builder/azure: Remove double override of GalleryImageVersionsClient.PollDuration
This change fixes an issues where custom timeouts set for the
GalleryImagesVersionClient was being over written by the default client
poll duration.
2019-12-17 10:47:32 -05:00
Adrien Delorme
4b7132c87c Merge remote-tracking branch 'origin/master' into sharing_info 2019-12-17 11:57:09 +01:00
Adrien Delorme
0785c2f6fc
build using HCL2 (#8423)
This follows #8232 which added the code to generate the code required to parse
HCL files for each packer component.

All old config files of packer will keep on working the same. Packer takes one
argument. When a directory is passed, all files in the folder with a name
ending with  “.pkr.hcl” or “.pkr.json” will be parsed using the HCL2 format.
When a file ending with “.pkr.hcl” or “.pkr.json” is passed it will be parsed
using the HCL2 format. For every other case; the old packer style will be used.

## 1. the hcl2template pkg can create a packer.Build from a set of HCL (v2) files

I had to make the packer.coreBuild (which is our one and only packer.Build ) a public struct with public fields

## 2. Components interfaces get a new ConfigSpec Method to read a file from an HCL file.

  This is a breaking change for packer plugins.

a packer component can be a: builder/provisioner/post-processor

each component interface now gets a `ConfigSpec() hcldec.ObjectSpec`
which allows packer to tell what is the layout of the hcl2 config meant
to configure that specific component.

This ObjectSpec is sent through the wire (RPC) and a cty.Value is now
sent through the already existing configuration entrypoints:

 Provisioner.Prepare(raws ...interface{}) error
 Builder.Prepare(raws ...interface{}) ([]string, error)
 PostProcessor.Configure(raws ...interface{}) error

close #1768


Example hcl files:

```hcl
// file amazon-ebs-kms-key/run.pkr.hcl
build {
    sources = [
        "source.amazon-ebs.first",
    ]

    provisioner "shell" {
        inline = [
            "sleep 5"
        ]
    }

    post-processor "shell-local" {
        inline = [
            "sleep 5"
        ]
    }
}

// amazon-ebs-kms-key/source.pkr.hcl

source "amazon-ebs" "first" {

    ami_name = "hcl2-test"
    region = "us-east-1"
    instance_type = "t2.micro"

    kms_key_id = "c729958f-c6ba-44cd-ab39-35ab68ce0a6c"
    encrypt_boot = true
    source_ami_filter {
        filters {
          virtualization-type = "hvm"
          name =  "amzn-ami-hvm-????.??.?.????????-x86_64-gp2"
          root-device-type = "ebs"
        }
        most_recent = true
        owners = ["amazon"]
    }
    launch_block_device_mappings {
        device_name = "/dev/xvda"
        volume_size = 20
        volume_type = "gp2"
        delete_on_termination = "true"
    }
    launch_block_device_mappings {
        device_name = "/dev/xvdf"
        volume_size = 500
        volume_type = "gp2"
        delete_on_termination = true
        encrypted = true
    }

    ami_regions = ["eu-central-1"]
    run_tags {
        Name = "packer-solr-something"
        stack-name = "DevOps Tools"
    }
    
    communicator = "ssh"
    ssh_pty = true
    ssh_username = "ec2-user"
    associate_public_ip_address = true
}
```
2019-12-17 11:25:56 +01:00
Megan Marsh
0f6d1beccf add an extra string array to the Prepare() return values in the builder interfaces; this sets up the ability for builders to give the provisioners custom user-accessible build-time variables. 2019-12-16 21:23:05 -08:00
Sylvia Moss
c57f093efe
Remove unnecessary source_path validation for virtualbox-ovf (#8489) 2019-12-16 16:50:21 +01:00
Sylvia Moss
0a8b172bf9 Remove duplicated retry mechanism when deleting VM ffrom virtual box (#8485)
This retry was also added to fix a locked by session error reported in #5501 and fixed in #5512.
2019-12-16 14:31:15 +01:00
Megan Marsh
84063d2132 implement ID and Type values in the provisioner template info sharing 2019-12-13 11:57:01 -08:00
Kris Hicks
40357e2534 docs/builder/azure-arm: Remove errant html comment (#8484)
* Remove errant html comment from source

* make generate
2019-12-13 10:35:24 -05:00
Sylvia Moss
2ee3311082
Retry command execution when VM session is locked (#8483) 2019-12-13 10:47:19 +01:00
Megan Marsh
3389d843f0 update all provisioners that used the winrmpassword tooling to use the new generateddata option 2019-12-12 16:42:53 -08:00
Sylvia Moss
c6b9efb522 Fix virtualbox-iso TestBuilderAcc_basic (#8481)
make sure the test works for later usage
2019-12-12 10:43:51 +01:00
Megan Marsh
6f418d0e54 get data sharing to a working state with the powershell provisioner 2019-12-11 15:43:38 -08:00
Megan Marsh
601007e3e2 pas data into provisioners well 2019-12-11 15:43:38 -08:00
Oded Priva
5e81c6f44e added the option to skip IAM instance profile validation (#8457) 2019-12-10 09:17:38 +01:00
Chris Doherty
1140504935 Merge remote-tracking branch 'packer-builder-vsphere/master' into cd/merge 2019-12-09 17:15:08 -08:00
Chris Doherty
ffcae91e8e Re-arrange directory structure for merge. 2019-12-09 17:14:55 -08:00
Sylvia Moss
2f63c581a0
Remove unnecessary 1 sec sleep (#8453) 2019-12-06 11:43:28 +01:00
Sylvia Moss
5ff5623433
Add disable_shutdown option to VirtualBox builder (#8449) 2019-12-05 14:34:56 +01:00
deisenzimmer
2b3935778e amazon-ebssurrogate plugin: StepSnapshotVolumes: Added mutex to synchronise map access across threads. (#8432) 2019-12-04 15:13:07 +01:00
Megan Marsh
de9f391a1c
Merge pull request #8430 from hashicorp/fix_8359
Fix request retry mechanism  to launch aws instance
2019-12-03 16:03:03 -08:00
Megan Marsh
05b972e550
Merge pull request #8444 from ad-m/hyperone-builder
Fix tags & modernize config for HyperOne builder
2019-12-03 10:30:26 -08:00
Megan Marsh
9fc37f9456
Merge pull request #8438 from hashicorp/fix_qemu_sizes
make sure we continue to default to Megabytes for qemu disk size to p…
2019-12-03 09:58:21 -08:00
Adam Dobrawy
a97ff7ce8b builder/hyperone: Update schema for cli config 2019-12-03 14:57:41 +01:00
Adam Dobrawy
3b091e6046 builder/hyperone: fix & add tests for tags 2019-12-03 14:57:40 +01:00
Megan Marsh
7d8f1c01c4 Revert "fix: persist default drive/device" (#8440)
This reverts commit 30ccab4 which introduced the issue 8436.
2019-12-03 13:42:11 +01:00
Megan Marsh
fcda07ee6a clarify docs by removing unclear string (#8439)
the docs generator from code PR #7724  mis scrapped it
2019-12-03 10:07:46 +01:00
Megan Marsh
f5806afda8 update docs 2019-12-02 16:04:29 -08:00
Megan Marsh
effd330945 make sure we continue to default to Megabytes for qemu disk size to prevent backwards incompatabilities. 2019-12-02 15:13:17 -08:00
Lars Lehtonen
df031db9da builder/azure/common/template: remove unused TemplateBuilder.getResourceByType2() (#8419)
builder/azure/common/template: remove unused TemplateBuilder.toKeyVaultID()
2019-12-02 18:09:42 +01:00
Ilhaan Rasheed
2c22b9f721 Update LXD directory upload command (#8416) 2019-12-02 12:01:18 +01:00
Moss
28c720bd3a Organize imports 2019-12-02 10:17:36 +01:00
Moss
250643d54b Remove 5 sec sleep after adding iam instance profile 2019-12-02 10:13:26 +01:00
Moss
4516978555 Fix request retry mechanism to run aws instance 2019-11-29 18:11:10 +01:00
Jon Allie
c31bbcf4cf builder/amazon: AmiFilterOptions.GetOwners: avoid taking the address of a loop iterator var (#8417)
GetOwners() always returned a slice of pointers to the last value. Because slice ranging reuses the same local variable.
2019-11-27 12:28:07 +01:00
Aurélien Guillaume
1a397b9fcd builder/osc: fix ssh host detection in Public Cloud and Nets 2019-11-26 17:50:30 +01:00
Mike Dziedziela
7c3e032fb7 amazon docs: update block-device-configuration docs (#8395)
So that it works for all builders as some use it with the following field names: launch_block_device_mappings, ami_block_device_mappings or ebs_volumes. the refactored docs weird being to specific.
2019-11-25 11:58:30 +01:00
henry-aj-jones
d317d7f3d1 post-processor/docker-tag: Allow to tag an artifact with multiple tags (#8392) 2019-11-22 11:48:36 +01:00
Megan Marsh
59e6e1d4d5
Merge pull request #8393 from hashicorp/fix_8362
Add no_ephemeral template option to nuke ephemeral drives from launch mappings
2019-11-21 16:08:50 -08:00
Megan Marsh
818d9bb087 send to step run spot instance 2019-11-21 13:21:56 -08:00
Megan Marsh
67c3373107 enable no_ephemeral for spot devices, clean up ranging behavior, update docs 2019-11-21 12:46:31 -08:00
Anthony Dong
2e989088e5 amazon-ebssurrogate: allow enabling ena/sr-iov on spot instances 2019-11-21 11:13:32 +01:00
Megan Marsh
08e97ba4d8 generate code for no_ephemeral option 2019-11-20 13:49:04 -08:00
Megan Marsh
0e2bdc8be6 forcibly prevent ephemeral drives from being created in the amazon-ebs builder, when no_ephemeral is set 2019-11-20 13:42:14 -08:00
DanHam
b40e5d90b6
builder/amazon/common/step_pre_validate: Return DescribeVpcs errors 2019-11-19 20:18:53 +00:00
nywilken
afb880c134 test/builder/amazon/common/step_pre_validate: Update DescribeVpcs mock
* Update condition to check for a empty VpcId
2019-11-19 14:48:07 -05:00
DanHam
074be9942d
Only validate the user has provided a subnet_id when vpc_id has been set 2019-11-19 14:09:58 +00:00
Lars Lehtonen
3571c585bb builder/googlecompute: fix dropped error (#8385) 2019-11-19 11:41:39 +01:00
Wilken Rivera
ad74a87b5c
Merge pull request #8360 from hashicorp/fix-7167
builder/amazon: Add validation for `subnet_id` when specifying `vpc_id`
2019-11-18 16:50:11 -05:00
nywilken
f9f4726eff builder/amazon/step_pre_validate: Add check for non-default VPCs
Subnet information is only really needed when the specified `vpc_id` is
not the default VPC for the region where the builder is being executed.
This change uses the AWS API to determine if the VPC provided is a
non-default VPC and only validates the existence of a `subnet_id` if a
user has provided a non-default `vpc_id`.

Tests after change
```
> make test TEST=./builder/amazon/... TESTARGS='-count=1 -v -run=TestStepPreValidate_checkVpc'
...

=== RUN   TestStepPreValidate_checkVpc
=== RUN   TestStepPreValidate_checkVpc/DefaultVpc
=== RUN   TestStepPreValidate_checkVpc/NonDefaultVpcNoSubnet
=== RUN   TestStepPreValidate_checkVpc/NonDefaultVpcWithSubnet
=== RUN   TestStepPreValidate_checkVpc/SubnetWithNoVpc
=== RUN   TestStepPreValidate_checkVpc/NoVpcInformation
--- PASS: TestStepPreValidate_checkVpc (0.00s)
    --- PASS: TestStepPreValidate_checkVpc/DefaultVpc (0.00s)
    --- PASS: TestStepPreValidate_checkVpc/NonDefaultVpcNoSubnet (0.00s)
    --- PASS: TestStepPreValidate_checkVpc/NonDefaultVpcWithSubnet (0.00s)
    --- PASS: TestStepPreValidate_checkVpc/SubnetWithNoVpc (0.00s)
    --- PASS: TestStepPreValidate_checkVpc/NoVpcInformation (0.00s)
PASS

...
```
2019-11-18 16:44:09 -05:00
Megan Marsh
ef137a8f08
Merge pull request #8380 from bennu/qemu-args
fix: persist default drive/device
2019-11-18 11:05:45 -08:00
Megan Marsh
dfa134cd98 ditch else statement for improved clarity 2019-11-18 10:11:59 +01:00
Megan Marsh
ce8bca349f Update builder/amazon/ebs/step_create_ami.go
Co-Authored-By: Adrien Delorme <azr@users.noreply.github.com>
2019-11-18 10:11:59 +01:00
Megan Marsh
a35ac0127e fix bug in step_region_copy 2019-11-18 10:11:59 +01:00
bugbuilder
30ccab472f fix: persist default drive/device 2019-11-17 04:38:30 -03:00
Megan Marsh
437983343a
Merge pull request #8371 from stephentawn/master
Fix error message when ovftool is missing
2019-11-14 16:07:12 -08:00
Stephen Tawn
c66219084e Fix error message when ovftool is missing 2019-11-14 23:11:16 +00:00
Lars Lehtonen
59472c6aad
builder/lxc: fix dropped error 2019-11-14 13:40:40 -08:00
nywilken
488e539f63 builder/amazon: Add helper function for checking against AWSError
Replace all straight forward occurrences of `if err, ok := err.(awserr.Error)` with the `isAWSErr` helper function
2019-11-12 15:27:47 -05:00
Lars Lehtonen
4c9cfed743
builder/ncloud: fix dropped error 2019-11-11 20:56:55 -08:00
Lars Lehtonen
418152f23a
builder/digitalocean: fix dropped error on RSA key generation 2019-11-08 10:35:48 -08:00
Lars Lehtonen
643fce7b8a builder/hcloud: handle dropped ssh errors 2019-11-08 11:35:58 +01:00
Adrien Delorme
db4f242a24 go generate ./builder/qemu after #7676 2019-11-08 11:27:00 +01:00
Megan Marsh
6e2456d028 make error messaging around ResourceNotReady better, update docs with other possible issues (#8349) 2019-11-08 11:15:24 +01:00
Megan Marsh
98c94ab8cb
Merge pull request #7676 from ltrager/master
Add display template option for qemu.
2019-11-07 15:41:17 -08:00
Megan Marsh
e70e82d892
Merge pull request #8342 from cove/retry-runinstances2
retry runinstances aws api that wasn't retried
2019-11-07 15:39:02 -08:00
Li Kexian
f2f544c434 fixed get copy region value (#8345) 2019-11-07 11:12:19 +01:00
Megan Marsh
d5ba530b26 make it clear we expect pem format not some other formate (#8344) 2019-11-07 10:30:51 +01:00
Lars Lehtonen
5f02150e05
builder/vmware/common: defer close after testing for errors 2019-11-06 14:28:17 -08:00
cove
2898d66812
retry runinstances aws api that wasn't retried and could fail 2019-11-06 14:06:35 -08:00
Adrien Delorme
a36b94320a virtualbox: simplify ParseSnapshotData 2019-11-06 10:24:20 +01:00
Lars Lehtonen
5a0dc48f0f
builder/file: defer close after testing for errors 2019-11-05 11:40:42 -08:00
Adrien Delorme
116a038de9 Update snapshot.go
avoid a panic on a too short slice.
2019-11-05 15:48:32 +01:00
Adrien Delorme
44a7c49334
Merge pull request #8320 from hashicorp/do_8228
re-add backwards incompatible changes to 1.5.0
2019-11-05 14:40:48 +01:00
Adrien Delorme
ee6b72570b Update builder.hcl2spec.go 2019-11-05 14:21:07 +01:00
Megan Marsh
5692294a96 use absolute path for vagrantfile to avoid confusion with build directory later 2019-11-04 15:15:37 -08:00
Megan Marsh
6c704f7046 Revert "fix template imports"
This reverts commit 0e70e0e5a4.
2019-11-04 14:29:00 -08:00
Megan Marsh
d010762dbf Revert "Revert "Qemu builder disk size as a string""
This reverts commit 9c782f4d04.
2019-11-04 14:28:48 -08:00
Megan Marsh
517834d528 Revert "Revert "remove clean_ami_name and clean_image_name; complete the deprecation for these functions in favor of clean_resource_name""
This reverts commit 44f91c9afc.
2019-11-04 14:28:40 -08:00
Adrien Delorme
14243ce56a
Merge pull request #8305 from hashicorp/fix_8301
allow nvme, since virtualbox 6.0 allows it
2019-11-04 17:58:18 +01:00
Adrien Delorme
c935eb1435
Merge pull request #8308 from alrs/prune-dead-linode-func
builder/linode: remove unused sshConfig() and associated import
2019-11-04 15:57:29 +01:00
Adrien Delorme
a23801d4a9 builder.virtualbox.iso: document that EFI mode needs to be enabled for pcie/nvme to work too 2019-11-04 14:30:59 +01:00
Lars Lehtonen
9924d16fc3
builder/vmware/common: remove unused testHWConfig() 2019-11-01 19:13:26 -07:00
Lars Lehtonen
6eefe55e23
builder/vmware/iso: remove unused testState() 2019-11-01 19:11:42 -07:00
Lars Lehtonen
af1e41793d
builder/linode: move commHost() out of orphaned ssh.go 2019-11-01 19:02:52 -07:00
Lars Lehtonen
9dad09b9d3
builder/linode: remove unused sshConfig() function and associated import 2019-11-01 18:58:14 -07:00
Megan Marsh
fcb65ee422
Merge pull request #8307 from hashicorp/fix_8116
delete amazon import post-processor intermediary snapshots
2019-11-01 14:55:22 -07:00
Megan Marsh
e9e4c102e5 delete amazon import post-processor intermediary snapshots 2019-11-01 14:17:44 -07:00
Megan Marsh
974eba443a update docs to include warning about extension pack 2019-11-01 09:48:35 -07:00
Adrien Delorme
b790776096 vbox iso: use NVMe Controller when the hard drive interface if pcie 2019-11-01 14:43:59 +01:00
Adrien Delorme
86e24df947
Merge pull request #8304 from alrs/remove-dead-openstack-test-function
builder/openstack: remove dead testConfig() function
2019-11-01 11:06:50 +01:00
Adrien Delorme
1b7ef252d2
Merge pull request #8303 from alrs/amazon-builder-cleanup
Cleanup builder/amazon/common
2019-11-01 11:06:06 +01:00
Megan Marsh
6f54468dd5 fix mocks 2019-10-31 15:36:22 -07:00
Megan Marsh
65ad3105b3 udpdate generated code 2019-10-31 15:28:36 -07:00
Megan Marsh
9343a23021 add driver calls to enable nvme controller 2019-10-31 15:21:52 -07:00
Megan Marsh
d2867c47f0 allow nvme, since virtualbox 6.0 allows it 2019-10-31 14:43:46 -07:00
Lars Lehtonen
b68c75ea3e
builder/openstack: remove dead testConfig() function 2019-10-31 13:36:00 -07:00
Lars Lehtonen
d072079899
builder/amazon/common: remove dead test type and function mockEC2Conn_Modify_EBS.ModifyInstanceAttribute() 2019-10-31 12:38:32 -07:00
Lars Lehtonen
953be1603b
builder/amazon/common: remove dead test type and function mockEC2ConnSpot.DescribeSpotPriceHistory() 2019-10-31 12:34:11 -07:00
Lars Lehtonen
7a09f9c678
builder/amazon/common: remove dead test function fakeModifyEBSBackedInstanceState() 2019-10-31 12:22:10 -07:00
Lars Lehtonen
0a13b620d6
builder/amazon/common: remove dead test function StepModifyEBSBackedInstance_EnableAMIENASupport() 2019-10-31 12:19:28 -07:00
Lars Lehtonen
c74df8b652
builder/amazon/common: remove dead test function getMockConnSpot() 2019-10-31 12:15:53 -07:00
Lars Lehtonen
e5e2bfa83f
builder/amazon/common: remove nil check on slice, len() on nil slices is zero 2019-10-31 12:09:32 -07:00
Adrien Delorme
1efd86e809 Linode: remove unused StateTimeout field 2019-10-31 16:13:06 +01:00
Adrien Delorme
819329228a Change back to make sure all durations are a time.Duration
It is simply the best/simplest solution and trying to prevent users from passing and integer here would be like opening a can of worms. Because:

* we cannot make mapstructure validate our duration string ( with an UnmarshalJSON func etc.)
* we cannot make mapstructure spit a string instead of a duration and packer will decode-encode-decode config.
* the hcl2 generated code asks for a string, so this will be enforced by default.
2019-10-31 16:12:07 +01:00
Adrien Delorme
bf3d9841c6 Force durations to be passed a strings
Before this commit it was possible to set a duration using an integer or a float. Go's time.Duration is an int64 internally an mapstructure will take advantage of this and load the number as a int64 but `1` means one ns which is unexpected/confusing. To avoid confusion and enforce readability this forces users to pass a string with a unit for a duration; ex "56s".
2019-10-31 11:47:19 +01:00
Adrien Delorme
ada9821897
Merge pull request #8294 from hashicorp/do_7974
add insert_key option for toggling whether to add Vagrant's insecure key
2019-10-31 10:27:27 +01:00
Megan Marsh
2fa79c6086 fix tests 2019-10-30 13:48:12 -07:00
Megan Marsh
8f996cd4de update docs 2019-10-30 13:36:56 -07:00
Megan Marsh
3b3aa562ed add insert_key option for toggling whether to add Vagrant's insecure key 2019-10-30 13:27:34 -07:00
Megan Marsh
553ca2e15d
Merge pull request #8293 from alrs/fix-azure-chroot-dropped-err
builder/azure/chroot: fix dropped error
2019-10-30 13:13:25 -07:00
Megan Marsh
ca64cc1237
Merge pull request #8261 from shawnmssu/feature/ucloud_import
Packer Post-Processor support UCloud import
2019-10-30 13:11:55 -07:00
Lars Lehtonen
6862e3534f
builder/azure/chroot: fix dropped error 2019-10-30 11:14:32 -07:00
Megan Marsh
6191b9c8c6
Merge pull request #8288 from hashicorp/fix_8271
add some extra layers of validation to make sure that people don't tr…
2019-10-30 10:41:52 -07:00
Megan Marsh
d084cd1895 Update builder/amazon/common/ami_config.go 2019-10-30 09:41:23 -07:00
Adrien Delorme
d915618819
Merge pull request #8289 from hashicorp/test_filter_builder
add test to catch this case
2019-10-30 10:34:58 +01:00
mingsheng.su
545575b879 optimize code about ufile config 2019-10-29 16:11:44 -07:00
mingsheng.su
37e898e115 optimize code style 2019-10-29 16:11:44 -07:00
mingsheng.su
9de1c42ad4 fix ucloud builder acctest 2019-10-29 16:11:44 -07:00
Megan Marsh
a4f95c8e7d fux gebeaj 2019-10-29 16:11:44 -07:00
mingsheng.su
2c513fce64 update ucloud packer 2019-10-29 16:11:43 -07:00
mingsheng.su
61f9d3a9fe add ucloud import 2019-10-29 16:11:43 -07:00
Megan Marsh
e9f02e44cb add test to catch this case 2019-10-29 11:28:56 -07:00
Megan Marsh
7cf47fc463 add some extra layers of validation to make sure that people don't trip over magical encrypt_boot settings later in the build 2019-10-29 11:26:22 -07:00
Andrey Kaipov
5da5b00e1c [builder/openstack] adds option to discover provisioning network 2019-10-29 13:02:27 -04:00
Adrien Delorme
8b6f1358fb
Merge pull request #8281 from alrs/fix-builder-oneandone-errors
builder/oneandone: fix dropped errors
2019-10-29 12:25:27 +01:00
Adrien Delorme
b2b12d6b04
Merge pull request #8280 from blinohod/cloudstack-display-name
[WIP] Add instance_display_name for cloudstack builder
2019-10-29 12:19:50 +01:00
Megan Marsh
e2283445f2 need to initialize variables scoped to the individual loop, because the address of k,v stay the same and that means we overwrite previous variables when assigning them to the struct directly. 2019-10-28 14:31:13 -07:00
Lars Lehtonen
6f7693577d
builder/oneandone: fix dropped errors 2019-10-28 08:25:48 -07:00
Michael Bochkaryov
da7e72246c Add instance_display_name parameter for Cloudstack builder
This change introduce instance_display_name optional parameter
for Cloudstack builder to set custom VM display name.
By default it is set to "Created by Packer".
2019-10-26 21:13:45 -07:00
Megan Marsh
0cb098b713 regenerate code because of hyperv refactor 2019-10-25 09:52:37 -07:00
Megan Marsh
2d01b3b7ab
Merge pull request #8274 from hashicorp/fix_8264
Make Vagrant driver code pass through logs as it receives them rather…
2019-10-24 14:38:53 -07:00
Megan Marsh
a783a09ea3
Merge pull request #8269 from paulmey/paulmey/generalize-chroot
[amazon/chroot] Move common/generic chroot builder steps to common directory
2019-10-24 14:32:01 -07:00
Megan Marsh
a7be0bed30 Make Vagrant driver code pass through logs as it receives them rather than buffering and returning them all at the end of the call. 2019-10-24 13:12:35 -07:00
Megan Marsh
eccdb44e3b
Merge pull request #8246 from hashicorp/fix_8089
Add the additional_disk_size option tho the hyperv vmcx builder.
2019-10-24 11:50:58 -07:00
Megan Marsh
7928b5b045 fix transcription error from when we moved to generated docs 2019-10-24 10:19:03 -07:00
Paul Meyer
3be7d81ce2 Move common steps together 2019-10-24 04:21:46 +00:00
Paul Meyer
e6dfe301ac Move CommandWrapper & ShellCommand to common 2019-10-24 04:06:29 +00:00
Megan Marsh
1731f87ad0
Merge pull request #8186 from puetzk/issue8178
fix: set openstack metadata for use_blockstorage_volume
2019-10-23 12:53:30 -07:00
Megan Marsh
436e21ae15 Merge branch 'master' into pr/8186 2019-10-23 12:08:02 -07:00
Paul Meyer
b54a2ee09d Set correct user agent for Azure clientset 2019-10-23 11:31:29 -07:00
Megan Marsh
b9245a402d add structure to its own struct to make generated code stop complaining 2019-10-23 10:46:42 -07:00
Megan Marsh
5614f307fb regerate code
generate flat FlatPolicyDocument
add PolicyDocument to generate command
2019-10-23 10:46:07 -07:00
Kevin Puetz
00d0297d26 Merge branch 'master' into issue8178 2019-10-23 00:34:38 -05:00
Megan Marsh
d15f43e4eb
Merge pull request #8232 from hashicorp/artifact-tree
HCL2 configs - part one
2019-10-22 11:54:34 -07:00
Megan Marsh
cdc3fdf926
Merge pull request #8247 from b-b3rn4rd/master
New Feature: allow to specify  IAM policy for a temporary instance profile
2019-10-22 09:33:23 -07:00
Bernard Baltrusaitis
ec1d70dc44 adding required changes 2019-10-22 21:40:18 +11:00
Megan Marsh
0c2fba089d
Merge pull request #8250 from tencentyun/master
tencentcloud-cvm builder: we added retry on remote api call to improve the user experience
2019-10-21 14:45:37 -07:00
Megan Marsh
34f5bfa498 regenerated things 2019-10-21 14:21:15 -07:00
Megan Marsh
e439dd039b fix tests 2019-10-21 14:08:49 -07:00
Megan Marsh
fe5ea886a2 refactir hyperv builders to remove duplicated config and prepare code 2019-10-21 13:29:56 -07:00
Megan Marsh
eb7bce0728 add additional disk size option to hyperv-vmcx 2019-10-21 13:29:55 -07:00
Megan Marsh
836aaafaa3
Merge pull request #8203 from sumit-kalra/master
Azure-ARM builder: Deploy NSG if list of IP addresses is provided in config
2019-10-21 11:10:58 -07:00
Li Kexian
6fb8988d08
we added retry on remote api call to improve the user experience 2019-10-21 13:21:56 +08:00
Bernard Baltrusaitis
65d1447b64 adding formatting 2019-10-19 21:33:58 +11:00
Bernard Baltrusaitis
6e2146324f Merge branch 'master' of github.com:b-b3rn4rd/packer 2019-10-19 20:56:49 +11:00
Bernard Baltrusaitis
8b83cca064 adding temporary instance profile document policy 2019-10-19 20:56:18 +11:00
Adrien Delorme
8b76453e7f make generate 2019-10-16 10:50:45 +02:00
Adrien Delorme
4542666e25 fix func calls after master merge 2019-10-16 10:40:25 +02:00
Adrien Delorme
cf1555bf17 Merge remote-tracking branch 'origin/master' into artifact-tree 2019-10-16 10:22:56 +02:00
Paul Meyer
575de8659e
Merge pull request #8226 from larohra/IncreasePollingDuration
[azure] Increase polling duration
2019-10-15 16:25:36 -07:00
Paul Meyer
b716299d8e PR comment 2019-10-15 21:14:20 +00:00
Paul Meyer
d3dc1be71c Doc updates 2019-10-15 21:14:20 +00:00
Paul Meyer
9b724d4ca0 Add artifact 2019-10-15 21:14:20 +00:00
Paul Meyer
0866cb3714 Reorganize client/common packages 2019-10-15 21:14:20 +00:00
Paul Meyer
fe584f4448 Format updates 2019-10-15 21:14:20 +00:00
Paul Meyer
19a3502b36 Add 'vm' template function 2019-10-15 21:14:20 +00:00
Paul Meyer
f72c4ec7a3 Update example and docs 2019-10-15 21:14:20 +00:00
Paul Meyer
b5c0742951 Add test that verifies disksize bug (2/2) 2019-10-15 21:14:20 +00:00
Paul Meyer
98175c06d5 Add test that verifies disksize bug (1/2) 2019-10-15 21:14:20 +00:00
Paul Meyer
eb5dc9326d Adding more tests 2019-10-15 21:14:20 +00:00
Paul Meyer
5943881051 Default for Gen 1 VMs 2019-10-15 21:14:20 +00:00
Paul Meyer
716f19a457 make fmt 2019-10-15 21:14:20 +00:00
Paul Meyer
8c73450f3d fixup! Add documentation to config struct 2019-10-15 21:14:20 +00:00
Paul Meyer
11ef06b94d Add StepVerifySourceDisk 2019-10-15 21:13:37 +00:00
Paul Meyer
cb729e5a38 Add documentation to config struct 2019-10-15 21:13:37 +00:00
Paul Meyer
27a5bfe11c Add implementation for disk as source 2019-10-15 21:13:37 +00:00
Paul Meyer
eff3f2bdcf Add test for disk input validation 2019-10-15 21:13:37 +00:00
Paul Meyer
57cff8961a Allow skipping OSDisk cleanup 2019-10-15 21:13:37 +00:00
Paul Meyer
6dee4d2d32 Wait for detach optimization 2019-10-15 21:13:37 +00:00
Paul Meyer
bbac79f0a4 Make PIR images work 2019-10-15 21:13:37 +00:00
Paul Meyer
b5401d552a Make from_scratch work 2019-10-15 21:13:37 +00:00
Paul Meyer
b9b5bb2951 Use DiskStorageAccountTypes 2019-10-15 21:13:37 +00:00
Paul Meyer
b4d0865548 Update azure-chroot builder 2019-10-15 21:13:37 +00:00
Paul Meyer
e11a5bdb40 Put os disk id in state 2019-10-15 21:13:37 +00:00
Paul Meyer
77b782c5b5 Add StepEarlyCleanup 2019-10-15 21:13:37 +00:00
Paul Meyer
977ca5be1c Add StepCopyFiles and StepChrootProvision 2019-10-15 21:13:37 +00:00
Paul Meyer
9a3e6661b1 Add StepMountExtra 2019-10-15 21:13:37 +00:00
Paul Meyer
addbdedea9 Add StepPostMountCommands 2019-10-15 21:13:37 +00:00
Paul Meyer
d1f8b8545d Add StepAttachDisk 2019-10-15 21:13:37 +00:00
Paul Meyer
4d750ddefa Reuse amazon/chroot/step_pre_mount_commands.go 2019-10-15 21:13:37 +00:00
Paul Meyer
45d3f28c67 Add StepCreateNewDisk 2019-10-15 21:13:37 +00:00
Paul Meyer
3d329cf87d Add chroot builder framework 2019-10-15 21:13:37 +00:00
Paul Meyer
369ec9a84c Create disk attacher component 2019-10-15 21:13:37 +00:00
Paul Meyer
3c33aa4fc5 Add metadata client 2019-10-15 21:13:37 +00:00
Paul Meyer
113dc12346 Add function to detect whether Packer is running on Azure 2019-10-15 21:13:37 +00:00
Paul Meyer
f106adbd12 Add Azure client set for chroot builder 2019-10-15 21:13:37 +00:00
Paul Meyer
2ded8f25ec Add metadata client 2019-10-15 21:13:37 +00:00
Paul Meyer
72fdce09ba Allow GetServicePrincipalToken to be called independently 2019-10-15 21:13:37 +00:00
Adrien Delorme
21a0cbffba fmt 2019-10-15 12:56:43 +02:00
Adrien Delorme
078ba7c8c3 commit old code generation tool
for history
2019-10-15 12:56:42 +02:00
Adrien Delorme
438f704333 fmt 2019-10-15 12:56:42 +02:00
Adrien Delorme
766e5c77ef builder.vmware.vmx: remove duplicate RemoteType field. 2019-10-15 12:56:42 +02:00
Adrien Delorme
00e3f97f5b builder.vmware.iso: remove duplicate Format field 2019-10-15 12:56:42 +02:00
Adrien Delorme
6fbd664b66 builder.vagrant: simplify communicator.Config field 2019-10-15 12:56:42 +02:00
Adrien Delorme
3fe1c96491 builder.proxmox: make ProxmoxURL *url.URL field unexported
the only exported field we/users care about is ProxmoxURLRaw
2019-10-15 12:56:42 +02:00
Adrien Delorme
40692a4e38 builder.profitbricks: remove duplicate communicator.Config field 2019-10-15 12:56:41 +02:00
Adrien Delorme
3fa614b5e1 builder.oracle.oci: make ConfigProvider unexported
so that it doesn't temper with hcl2 code generation & parsing.

The field is set only later on after further processing.
2019-10-15 12:56:41 +02:00
Adrien Delorme
17c069baa5 builder.google:
* make CustomerEncryptionKey our own type so that it can be hcl2 generated
* make Account setting unexported so that it doesn't temper with HCL2 generation ( the field is set a bit later after processing )
2019-10-15 12:56:41 +02:00
Adrien Delorme
f8402f1b91 builder.azure.common: make CloudEnvironment private so it doesn't temper with hcl2 code generation
the struct is not read from file but later set after some computations
2019-10-15 12:56:41 +02:00
Adrien Delorme
221e72e9c3 builder.amazon.common: remove pointer (*) from []*string and map[*string]*string types
because they make hcl2/cty decoding panic
2019-10-15 12:56:41 +02:00
Adrien Delorme
8b8c2fc138 builder.amazon.chroot: remove specific BlockDevice definition
because the common one already has a KmsKeyId field
2019-10-15 12:56:41 +02:00
Adrien Delorme
d2f5daf98f
Merge pull request #8209 from dvrkps/patch-3
Ignore retry.Config var
2019-10-15 10:29:51 +02:00
Megan Marsh
f05fd3969f
Merge pull request #8212 from hashicorp/fix_8204
Fix 8204
2019-10-14 14:40:17 -07:00
Megan Marsh
2e20facc8b fix tests 2019-10-14 14:13:21 -07:00
Megan Marsh
0e70e0e5a4 fix template imports 2019-10-14 13:22:06 -07:00
Megan Marsh
9c782f4d04 Revert "Qemu builder disk size as a string"
This reverts commit 1ecfa032ba.
2019-10-14 13:09:22 -07:00
Megan Marsh
44f91c9afc Revert "remove clean_ami_name and clean_image_name; complete the deprecation for these functions in favor of clean_resource_name"
This reverts commit 0026792d2f.
2019-10-14 13:08:15 -07:00
larohra
936ae42b00 Added a new parameter in config to override the default Azure Go SDK PollingDuration timeout 2019-10-11 15:29:02 -07:00
Davor Kapsa
29a6938de6
clean and return nil for retry.Config 2019-10-10 20:48:26 +02:00
Sumit Kalra
4bd09f381e
Fixing documentation (#6) 2019-10-10 11:30:28 -07:00
Davor Kapsa
4c615341ef
Ignore retry.Config var
retry.Config is struct.
Call it err is wrong.
2019-10-10 17:33:24 +02:00
Megan Marsh
4bc381183d make aws instsance builder work with recent changes for volume copy 2019-10-09 16:59:51 -07:00
Megan Marsh
e283023d9b make sure step_register_ami in chroot builder respects encryption and ami skip build retion values once the copy happens 2019-10-09 16:52:41 -07:00
Megan Marsh
469af8e592 ebssurrogate builds didn't keep up with recent optimizations to region encryption in the ebs builder, and that was causing bugs with the common ami region copy step 2019-10-09 16:02:37 -07:00
Davor Kapsa
3eb075b9fc
Consolidate receiver name 2019-10-09 21:18:46 +02:00
Davor Kapsa
fb267dd1dc
Add error check 2019-10-09 21:08:40 +02:00
Davor Kapsa
50262ba0b8
Remove explicit err var declaration 2019-10-09 13:17:43 +02:00
Sumit Kalra
595b103bbe
Adding NSG to the ARM deployment template when needed (#3)
* Adding NSG to the ARM eployment template when needed

* Adding tests and fixing bugs

* Removing denyall rule

* Fixing logic to determine which port to open

* Fixing config description
2019-10-08 14:56:43 -07:00
Lee Trager
c7f38b232f Add display template option for QEMU. Fixes #7675 2019-10-08 12:04:49 -07:00
Samuel Noordhuis
eecac683b8
Update builder/proxmox/config.go
Co-Authored-By: Adrien Delorme <azr@users.noreply.github.com>
2019-10-08 19:45:15 +11:00
Adrien Delorme
ef4db8b158
Merge branch 'master' into f-proxmox-cpu-type-support 2019-10-08 10:34:53 +02:00
Samuel Noordhuis
5add6cc6c8
Add ability to select CPU type 2019-10-06 21:39:53 +11:00
Samuel Noordhuis
d3f369494a
Add support for SCSI controller selection 2019-10-06 20:14:04 +11:00
Megan Marsh
e3257ba088
Merge pull request #8192 from hashicorp/fix_7904
use a unique temp dir for each build to prevent concurrent builds fro…
2019-10-04 09:39:03 -07:00
Adrien Delorme
3a4079f97a yandex: use clean_resource_name too 2019-10-04 11:31:33 +02:00
Adrien Delorme
d4600a7716 fix go imports 2019-10-04 11:19:45 +02:00
Megan Marsh
0026792d2f remove clean_ami_name and clean_image_name; complete the deprecation for these functions in favor of clean_resource_name 2019-10-03 15:49:01 -07:00
Megan Marsh
de8e8557ae make config dir if it doens't exist. 2019-10-03 15:16:27 -07:00
Megan Marsh
7f040dfed8 update tests 2019-10-03 15:06:01 -07:00
Megan Marsh
7c41244e15 use a unique temp dir for each build to prevent concurrent builds from stomping on each other 2019-10-03 14:50:53 -07:00
Megan Marsh
f685931cde
Merge pull request #8176 from winklerm/issue5575
Fix Issue 5575 - OpenStack builder should warn instead of fail on terminate if instance is already shut down
2019-10-03 09:41:47 -07:00
Kevin Puetz
6e069c94e8 fix: set openstack metadata for use_blockstorage_volume
Also set os-set_image_metadata on the tempoary volume before uploading
(volume metadata does not automatically become image metadata)
so the uploaded image will be created with the desired metadata
2019-10-02 17:59:13 -05:00
Megan Marsh
e16fb19bfc don't abort on a single error if another availability zone was able to create the instance 2019-10-02 14:17:00 -07:00
Marek Winkler
0bd256326f builder/openstack: Fix interface conversion panic when attempting to find a volume when not using volumes 2019-10-02 22:16:18 +02:00
Megan Marsh
c138edcbe1
Merge pull request #8177 from alrs/virtualbox-builder-dropped-error
builder/virtualbox/vm: fix dropped error
2019-10-02 13:00:39 -07:00