Commit graph

6150 commits

Author SHA1 Message Date
Megan Marsh
19bdc8b49e fix conflicts 2020-11-30 14:34:20 -08:00
Megan Marsh
0eff73293a fix imports, vendoring, and linting 2020-11-30 14:30:30 -08:00
Megan Marsh
d5971ca25e fix tests by moving mock hooks and communicators, and BasicUi definition, into SDK 2020-11-30 14:30:30 -08:00
Megan Marsh
56a45b04ab Move hook and communicator definitions to packer-plugin-sdk 2020-11-30 14:30:30 -08:00
Megan Marsh
a6fdeca099 move logsecretfilter into packer sdk 2020-11-30 14:30:30 -08:00
Megan Marsh
14bdb9516c move Artifact and artifact mock to the sdk 2020-11-30 14:29:52 -08:00
Megan Marsh
c70870cb83 move multierror and multierrorappend into sdk 2020-11-30 14:29:06 -08:00
Megan Marsh
001886670d move Ui definition into the packer plugin sdk. 2020-11-30 14:26:54 -08:00
Megan Marsh
a56477c2e4
Merge branch 'master' into yandex/prepare-user-data 2020-11-30 13:57:35 -08:00
Megan Marsh
862700b1a5
Merge pull request #10306 from bugfood/fix-attach
allow attaching guest additions without a communicator
2020-11-30 10:58:23 -08:00
Wilken Rivera
d82b9d2072
builder/qemu: Add ok check for state values (#10249)
This changes fixes two crashes in `step_run` that expects certain
information to be in state from prior steps. This change requires
testing to ensure the bugs have been fixed.

I believe there may be more state values that need to be checked as they
may not be put into state if a build configuration has attributes that
would skip or otherwise not put data into the statebag.
2020-11-30 10:40:03 -05:00
Corey Hickey
fdb36e329d allow attaching guest additions without a communicator
This avoids the error:
* guest_additions_mode has to be 'disable' when communicator = 'none'.

...when the following are set:
"communicator": "none",
"guest_additions_mode": "attach",

This particular combination of parameters is valid; for example, in my
case, a kickstart post-install script mounts the CD image from /dev/sr1
and runs the installer, without needing any intervention from packer
itself.

From my reading of the documentation, it appears that the "upload" mode
would indeed require a communicator, so I change the logic to check for
that specifically.
2020-11-24 15:46:14 -08:00
Roman Mingazeev
2b8fcead23 support shellscript 2020-11-23 17:15:12 +03:00
Roman Mingazeev
0101eb1bb1 support merge cloud user-data 2020-11-23 13:19:50 +03:00
Megan Marsh
b50fe930e5
fix retries (#10290) 2020-11-23 09:39:17 +01:00
Megan Marsh
5a804de9a3
Merge pull request #10212 from OblateSpheroid/GH8211
Feat (builder/oracle-oci): support image launch mode
2020-11-20 15:53:18 -08:00
Megan Marsh
f4041ee4d0
Merge pull request #10200 from aleksandrserbin/feature/describe-instance-on-fail
amazon-ebs: log state details on change
2020-11-20 15:31:40 -08:00
Megan Marsh
10c1b638b6 fix spaces vs tabs in formatting from github commit resolution 2020-11-20 15:24:43 -08:00
Megan Marsh
ba1e60ff35
Update builder/amazon/common/block_device_test.go 2020-11-20 15:15:39 -08:00
Megan Marsh
b3401b4f4d
Merge branch 'master' into feature/aws-ebs-io-validation 2020-11-20 15:09:22 -08:00
Megan Marsh
6bf4e89615
Merge pull request #10181 from remyleone/profile
scaleway: use the SDK functions to load profile from file and env
2020-11-20 15:06:50 -08:00
Megan Marsh
8ec7ee0ab7
Merge pull request #10093 from ufukty/digitalocean-connect-with-private-ip
Adds the capability of provisioning with private ip for digitalocean
2020-11-20 14:33:03 -08:00
Megan Marsh
60e62bbb51
Merge pull request #10287 from hashicorp/implement_9990
Add configuration options to add additional storage to a cloned vm
2020-11-20 13:34:56 -08:00
Megan Marsh
030f40a7b6
Merge pull request #10286 from hashicorp/hcl2template_extraction
move hcl2template kv types into the config/custom_types
2020-11-20 12:48:26 -08:00
sylviamoss
99e7ac5f42 fix test and generated code 2020-11-20 17:15:47 +01:00
sylviamoss
3b523e147e add config opt to additional storage to cloned vm 2020-11-20 16:20:46 +01:00
Megan Marsh
ea1ac530b0 move hcl2template kv types into the config/custom_types with trilean definitions 2020-11-18 15:46:59 -08:00
Megan Marsh
cbaecf9077 remove unused SkipValidation field which was a duplicate of the SkipRegionValidation field.
remove duplicate temporary key pair name
change communicator code
2020-11-18 14:21:40 -08:00
Megan Marsh
f8f1ebf0c7 move version and useragent definitions into sdk 2020-11-18 11:42:02 -08:00
Megan Marsh
9e47696dff move helper/config to bundle with the other template definitions 2020-11-18 10:34:59 -08:00
Megan Marsh
007337989e move communicator helpers into communicator dir 2020-11-18 10:24:25 -08:00
Megan Marsh
3f6deb8828 move multistep into the plugin sdk 2020-11-17 16:31:03 -08:00
Megan Marsh
7d658149ea update tests and website and generated partials to reflect new package format 2020-11-17 10:36:01 -08:00
Megan Marsh
1ffc358ada move tmp helper func into packer-plugin-sdk 2020-11-16 15:13:08 -08:00
Megan Marsh
4ead224c3b
Merge pull request #10256 from hashicorp/plugin-sdk-4
Plugin sdk 4
2020-11-16 12:00:06 -08:00
Megan Marsh
94a660147e rename retry so it doesn't stutter 2020-11-16 11:49:33 -08:00
Megan Marsh
bf7daa1d93
Merge pull request #10255 from hashicorp/plugin-sdk-3
Plugin sdk 3
2020-11-16 11:36:17 -08:00
Megan Marsh
efe11da4a3
Merge pull request #10254 from hashicorp/plugin-sdk-2
Plugin sdk 2
2020-11-16 11:29:20 -08:00
Megan Marsh
220bca460e
Merge pull request #10253 from hashicorp/plugin-sdk-1
Plugin sdk 1
2020-11-16 11:13:59 -08:00
Megan Marsh
3e54e9ea80
Merge pull request #10235 from hashicorp/refactor_version_code
Refactor version code
2020-11-16 11:12:59 -08:00
loloolllool
54afe0b880 Generating new hcl2specs for proxmox builder. 2020-11-14 23:41:16 +01:00
lollen
2bdfd53756 Proxmox-builder pass through boot-order
Adding the boot field supported by Proxmox api and proxmox-api-go library.
This is due to a change in Proxmox to allow for multiple boot harddrives which would break the packer proxmox builder (the hardcoded cdn boot value).

Can be specified like the following example:     
      "disks": [
        {
          "type": "scsi",
          "disk_size": "20G",
          "storage_pool": "vmstorage",
          "storage_pool_type": "lvm"
        }
      ],
      "boot": "order=scsi0;ide2",
      "iso_file": "media:iso/{{ user `ubuntu_iso_file` }}"

Not sure this is ideal, but it's a workaround for the #10252 issue.
2020-11-14 07:27:55 +01:00
Megan Marsh
f52a2ad0fa move retry function that is only used by osc builder into that builder's common dir instead of the global common dir. Fix bug in quemu where the wrong retry value is checked against. 2020-11-13 15:24:58 -08:00
Megan Marsh
c4d0c5505a fix tests
regenerate code
regenerate code, revendor
fix website
2020-11-13 15:00:12 -08:00
Megan Marsh
e04eaa89e6 move steps and step configs from packer/common to packer/common/commonsteps 2020-11-13 11:15:04 -08:00
Megan Marsh
6402362018 create packer-plugin-sdk directory and begin moving the relevant folders into it. 2020-11-13 10:47:36 -08:00
Megan Marsh
df9febef1b move communicators into sdk-internals directory 2020-11-13 10:44:07 -08:00
Megan Marsh
6871a3a85d
Merge pull request #10250 from Direnol/yandex/change-disk-creation-method
fix(yandex): change disk creation method to manual
2020-11-13 09:28:10 -08:00
Roman Mingazeev
6be26e50e0
Update builder/yandex/config.go
Co-authored-by: GennadySpb <lipenkov@gmail.com>
2020-11-13 17:27:50 +03:00
Roman Mingazeev
5bf03df694 fix fmt 2020-11-13 16:44:15 +03:00
Roman Mingazeev
6a327b1330 add labels for temp disk 2020-11-13 16:35:48 +03:00
Roman Mingazeev
fe9dca4c75 change disk creation method to manual 2020-11-13 16:16:35 +03:00
Megan Marsh
3db40194af version files 2020-11-10 14:48:06 -08:00
Megan Marsh
8ecd16db81 regenerate code 2020-11-10 08:16:59 -08:00
Megan Marsh
1ecd715221 refactor code so that packer/version is not a dependency of sdk code or plugin code 2020-11-09 17:20:42 -08:00
Megan Marsh
2bf912bddf
Merge pull request #10203 from aleksandrserbin/feature/launch-template-tags
amazon-ebs: add tags to launch template
2020-11-09 09:14:02 -08:00
Megan Marsh
88e03280b6
Extract plugin-specific examples to plugin directories (#10228)
* move alicloud examples from common example directory to alicloud builder

* move amazon examples to amazon builder dir

* move examples into ansible provisioner directory

* move azure examples to builder dir

* move hyperone examples into builder directory

* move jdcloud builder examples into builder directory

* move tencent cloud examples into the builder directory

* move ucloud examples into ucloud builder directory
2020-11-09 12:17:41 +01:00
Paul Meyer
5ea90fea5b
Merge pull request #10210 from sumit-kalra/master
[builder/azure-arm] Create keyvaults with SoftDelete enabled
2020-11-06 14:07:41 -08:00
Megan Marsh
efc117fb55
Merge pull request #10218 from hashicorp/clean_plugin_sdk
Clean plugin sdk
2020-11-06 12:35:23 -08:00
Simon Gottschlag
65b7d3b604
Add Azure CLI authentication (#10157)
Adds the ability to use an active `az login` session for authenticating the Azure builder
2020-11-06 14:24:16 -05:00
Megan Marsh
2d90ffe7a4 move GeneratedData struct and PlaceholderMsg to same package under common 2020-11-06 10:45:38 -08:00
Megan Marsh
f13f3d4d5f fix single tag interpolation to allow golang template engine usage 2020-11-05 16:27:53 -08:00
Megan Marsh
7a1680df97
modify a ton of error messages to make them specifically placable. (#10191)
* modify a ton of error messages to make them specifically placable.
* remove specific loglines but keep the specialized error messages

Co-authored-by: Adrien Delorme <azr@users.noreply.github.com>
2020-11-05 11:27:07 +01:00
Megan Marsh
45b5f0c2ee move custom http client creation with env proxy args into same package as other network related helpers 2020-11-04 14:51:14 -08:00
Megan Marsh
7b57e28600 move localexec to common/shell-local dir since it is related to shelling out locally 2020-11-04 11:56:46 -08:00
Aleksandr Serbin
a763c8ab02 amazon: validate IOPS only for io volumes 2020-11-04 20:49:04 +01:00
Aleksandr Serbin
09c2620c48 amazon: validate IOPS max and min values 2020-11-04 20:29:09 +01:00
Megan Marsh
23552bfbd7
Merge pull request #10213 from chrisroberts/vagrant-driv-stderr
Return error if ssh-config command fails
2020-11-04 10:39:23 -08:00
Megan Marsh
d8fec2e9e5
move the hyperv-only powershell dependency into the hyperv subdirectory (#10198) 2020-11-04 15:15:43 +01:00
Marin Salinas
8b5e2903b9
feat: add hk endpoint support for osc builder (#10207) 2020-11-04 15:13:37 +01:00
Aleksandr Serbin
0cf9b55c5c amazon-ebs: validate IOPS ratio 2020-11-04 14:37:41 +01:00
Chris Roberts
8248f52ff7 Return error if ssh-config command fails
Update error detection to return an error if the process fails instead
of testing for content in stderr.
2020-11-03 16:20:34 -08:00
Aleksandr Serbin
7cb8af1441 amazon: remove region from state for chroot builder 2020-11-03 22:28:19 +01:00
Aleksandr Serbin
8dab31b548 amazon: use spot tags for launch template tags
- use `spot_tags` instead of `run_tags` for launch template
- move region to `StepRunSpotInstance` from state
2020-11-03 22:16:00 +01:00
js-g
749a1372d2 test (builder/oracle-oci): add config test for LaunchMode 2020-11-03 11:36:11 -05:00
js-g
ba6173b84c fix (builder/oracle-oci): remove subnet from LaunchInstanceDetails
Deprecated use. Use subnet in CreateVnicDetails instead.
2020-11-03 11:35:34 -05:00
js-g
c3ffb3dc22 feat (builder/oracle-oci): add launch mode property to image 2020-11-03 10:33:23 -05:00
Sumit Kalra
2b69a5f496 azure-arm builder: Create keyvaults with SoftDelete enabled 2020-11-02 20:42:55 -08:00
Marin Salinas
f2b386a9d0 feat: add x509 certificate support 2020-11-02 10:04:00 -06:00
Aleksandr Serbin
d561b404d6 amazon-ebs: add tags to launch template 2020-11-01 16:25:43 +01:00
Aleksandr Serbin
4669c0f852 amazon-ebs: log state details on change 2020-10-31 16:00:19 +01:00
Megan Marsh
845a10867e
Merge pull request #10003 from hashicorp/ssm_session_retry
Add retry mechanism to retry SSM session creation
2020-10-29 16:02:54 -07:00
Megan Marsh
72fd763207 fix crash 2020-10-29 14:29:16 -07:00
Rémy Léone
0cfaf4a620 Fix 2020-10-29 17:45:03 +01:00
Wilken Rivera
01d5e5ca76 test/amazon/ebs: Add acceptance test for Session Manager Interface connectivity
Test Results
```
...

2020/10/29 09:35:39 ui:     test: Starting session with SessionId: wilken-00bcfae4d314f54e7
2020/10/29 09:35:40 [DEBUG] TCP connection to SSH ip/port failed: dial tcp [::1]:8047: connect: connection refused
2020/10/29 09:35:40 ui:     test: Port 8047 opened for sessionId wilken-00bcfae4d314f54e7.
2020/10/29 09:35:45 [INFO] Attempting SSH connection to localhost:8047...
2020/10/29 09:35:45 [DEBUG] reconnecting to TCP connection for SSH
2020/10/29 09:35:45 ui:     test: Connection accepted for session wilken-00bcfae4d314f54e7.
2020/10/29 09:35:45 [DEBUG] handshaking with SSH
2020/10/29 09:35:45 [DEBUG] SSH handshake err: ssh: handshake failed: ssh: invalid packet length, packet too large
2020/10/29 09:35:52 [INFO] Attempting SSH connection to localhost:8047...
2020/10/29 09:35:52 [DEBUG] reconnecting to TCP connection for SSH
2020/10/29 09:35:52 [DEBUG] handshaking with SSH
2020/10/29 09:35:52 [DEBUG] handshake complete!
2020/10/29 09:35:52 [DEBUG] Opening new ssh session
2020/10/29 09:35:53 [INFO] agent forwarding enabled
2020/10/29 09:35:53 ui: ==> test: Connected to SSH!
2020/10/29 09:35:53 Running the provision hook
2020/10/29 09:35:53 ui: ==> test: Stopping the source instance...
2020/10/29 09:35:53 ui:     test: Stopping instance
2020/10/29 09:35:54 ui: ==> test: Waiting for the instance to stop...
2020/10/29 09:36:25 ui: ==> test: Creating AMI packer-ssm-test-1603978447 from instance i-0853cb6186a3406d5
2020/10/29 09:36:25 ui:     test: AMI: ami-0868a41bbb2df77b3
2020/10/29 09:36:25 ui: ==> test: Waiting for AMI to become ready...
2020/10/29 09:37:59 ui: ==> test: Terminating the source AWS instance...
2020/10/29 09:37:59 ui error: ==> test: Bad exit status: -1
2020/10/29 09:38:15 ui: ==> test: Cleaning up any extra volumes...
2020/10/29 09:38:15 ui: ==> test: No volumes to clean up, skipping
2020/10/29 09:38:15 ui: ==> test: Deleting temporary security group...
2020/10/29 09:38:16 ui: ==> test: Deleting temporary keypair...
2020/10/29 09:38:16 Deregistering image ID (ami-0868a41bbb2df77b3) from region (us-east-1)
2020/10/29 09:38:17 Deregistered AMI id: ami-0868a41bbb2df77b3
2020/10/29 09:38:17 Deleted snapshot: snap-09602f15994bc9f51
--- PASS: TestBuilderAcc_SessionManagerInterface (249.87s)
PASS

```
2020-10-29 09:39:19 -04:00
Adrien Delorme
aae1992649 remove default PauseBeforeSSM, this will have to be set manually 2020-10-29 13:38:03 +01:00
Adrien Delorme
6c45f04467 Delete ssm_mock_funcs.go 2020-10-29 13:37:44 +01:00
Adrien Delorme
5d06a6e6df rename file correctly 2020-10-29 13:26:09 +01:00
Adrien Delorme
c6e2dd5538 remove unit test file for now, I think that an acceptance test will be easier here 2020-10-29 13:22:17 +01:00
Adrien Delorme
a4bd744955 simplify things a bit more 2020-10-29 13:11:07 +01:00
Adrien Delorme
aef3d24213 Update step_create_ssm_tunnel.go 2020-10-29 12:31:01 +01:00
Adrien Delorme
f329cb5b93 simplify code 2020-10-29 12:18:41 +01:00
Adrien Delorme
b058de072a move packer/builder/amazon/common.IsAWSErr to builder/amazon/common/awserrors.Matches
to avoid cyclic dependency issues
2020-10-29 12:02:41 +01:00
Adrien Delorme
8e355d0fe7 Move ssm code to its own ssm package and make it singlethreaded 2020-10-29 11:57:29 +01:00
Rémy Léone
db96c5c9ae Fix 2020-10-29 11:21:31 +01:00
Rémy Léone
3413fc5c46 Fix 2020-10-29 11:19:18 +01:00
Rémy Léone
adb74ba15d Fix 2020-10-29 11:09:04 +01:00
Megan Marsh
69312458c4
Merge pull request #10111 from hashicorp/azr_selectable_temp_keygen_type_gcp
GCP: Allow to select algo when generating temporary SSH keypair
2020-10-28 11:25:50 -07:00
Rémy Léone
288e29b1e0 scaleway: use the SDK functions to load profile from file and env 2020-10-28 17:52:34 +01:00
Wilken Rivera
646b973bd3 Remove logic to retry a connection that reuses an existing SSM Session
After testing it was found that once an session is terminated via an
instance restart, console termination, or SSM agent restart. Any active
session will essentially be terminated and unusable. So knowing that it
is always best to start a new session and let the old one timeout get
terminated.
2020-10-28 06:36:23 -04:00
Wilken Rivera
dff9cde775 Remove waitgroups 2020-10-28 06:36:23 -04:00
Wilken Rivera
eb11009e2a Check for closed channels as opposed to using a separate closeRetry channel 2020-10-28 06:36:23 -04:00
Megan Marsh
fb3d357e84
fix step_shutdown when a null communicator is used (#10178) 2020-10-28 11:14:03 +01:00
sylviamoss
aa73cc7d7e add close chan to avoid unwanted retries 2020-10-27 16:32:20 -04:00
sylviamoss
1f62249097 add retry terminated session chan 2020-10-27 16:32:20 -04:00
sylviamoss
8e3f3e514c improve logs 2020-10-27 16:32:20 -04:00
sylviamoss
b2c7897f58 add WaitGroup to avoid data race 2020-10-27 16:32:20 -04:00
sylviamoss
1c2b469acd add retry channel to ssm driver 2020-10-27 16:32:19 -04:00
Megan Marsh
8f3a115c5a
Merge pull request #10173 from hashicorp/azr-fix-hcl2-gcp-image_encryption_key
Fix GCP HCL image_encryption_key fields and use the same casing in JSON and HCL2
2020-10-27 10:56:26 -07:00
Megan Marsh
dc38fadeeb
Merge pull request #10155 from hashicorp/logging_for_10042
builder/vsphere: Don't try to delete a cd file from the remote datastore if the upload of the cd failed
2020-10-27 10:54:07 -07:00
Megan Marsh
8adbba6904 switch to guard clause format 2020-10-27 10:37:03 -07:00
Adrien Delorme
ef32147a4a Fix GCP HCL image_encryption_key fields and use the same casing in JSON and HCL2
this closes #9997
2020-10-27 15:46:45 +01:00
Megan Marsh
c4866504e1
respect the destroy flag in content library config (#10165)
* respect the destroy flag in content library config

* Make vsphere-clone respect delete_vm state tag; use a common delete func to prevent future drift
2020-10-27 09:07:08 -04:00
Adrien Delorme
bab29060fe regen hcl after master merge 2020-10-26 15:48:10 +01:00
Adrien Delorme
f5e037e8b4 Merge remote-tracking branch 'origin/master' into azr_selectable_temp_keygen_type_gcp 2020-10-26 15:47:29 +01:00
blz-ea
73370570f4
Fix Proxmox builder unhandled buildvar type (#10154)
* Fix Proxmox builder unhandled buildvar type #10139

Co-authored-by: Calle Pettersson <carlpett@users.noreply.github.com>
Co-authored-by: Adrien Delorme <adrien.delorme@icloud.com>
2020-10-26 15:11:09 +01:00
Megan Marsh
25f4e24772
Merge pull request #10150 from nshalman/nshalman/tag-snapshots
amazon/ebssurrogate: apply snapshot tags right when taking snapshot
2020-10-23 15:57:18 -07:00
Megan Marsh
7646ecf8c6 fix tests 2020-10-23 15:35:37 -07:00
Megan Marsh
4862b2c0f0
Merge pull request #10163 from hashicorp/fix-azure_arm-manageddisk-deletion-regression
builder/azure_arm: Fix build failures due to the deletion of attached managed disks
2020-10-23 15:19:30 -07:00
Megan Marsh
fc619dc977
Merge pull request #9626 from featheredtoast/add-proxmox-vm-clone
builder/proxmox FEATURE: split Proxmox into proxmox-iso and proxmox-clone
2020-10-23 13:36:45 -07:00
Megan Marsh
56c7a9cda5 rebase 2020-10-23 11:47:20 -07:00
netapp-jgriffit
15467aa868 Update builder/vsphere/common/step_shutdown.go
Co-authored-by: Sylvia Moss <sylviamoss.m@gmail.com>
2020-10-23 11:41:03 -07:00
James Griffith
185f3d9d48 vsphere clone config not yet using warnings, leaving code commented out 2020-10-23 11:41:03 -07:00
James Griffith
c8ad66f419 update to docs as suggested 2020-10-23 11:41:03 -07:00
James Griffith
c86a48fbc9 syntax change 2020-10-23 11:41:03 -07:00
James Griffith
f86f7c4464 Another instance using Prepare() needed an update 2020-10-23 11:41:03 -07:00
James Griffith
09edada93d moved the warning into Prepare() and updated the invocation 2020-10-23 11:41:03 -07:00
James Griffith
572de129d7 update documentation 2020-10-23 11:41:03 -07:00
James Griffith
1048cdbcc4 check for no communicator and provide messaging to user 2020-10-23 11:41:03 -07:00
James Griffith
2ecf5cc9aa Communicator is not needed unless shutdown_command is populated 2020-10-23 11:41:03 -07:00
James Griffith
6b39b1eed6 StepShutdown should still occur if Comm.Type is none 2020-10-23 11:41:03 -07:00
James Griffith
65ff092fd4 hashicorp/packer#9924 2020-10-23 11:41:03 -07:00
Megan Marsh
19bd997f11 add directory existence check 2020-10-23 11:06:25 -07:00
Wilken Rivera
a1d69bfe91 Fix liniting issues 2020-10-23 13:52:05 -04:00
Wilken Rivera
afd33679f5 builder/azure_arm: Fix build failures due to the deletion of attached managed disks
Previously (prior to v1.6.2) the Azure ARM builder had two delete functions
one that would run before any of the StepDelete* types, and one on deployment template
cleanup. The refactored coded re-introduces the logic from the previously removed
step in v1.6.1 as the main delete logic for the whole deployment
template. Ensuring that all deployed items are deleted before trying to
remove any managed disks.

This change moves all the deletion logic into the
step_deployment_template#Cleanup function to ensure that dependent steps
are only called once the created deployment items (i.e
StepDelateAdditionalDisks) have been deleted.

Test results before change
```

    compute.DisksClient#Delete: Failure sending request: StatusCode=0 -- Original Error: autorest/azure: Service returned an error. Status=<nil> Code="OperationNotAllowed" Message="Disk pkrdd02e9rzzu5k-1 is attached to VM /subscriptions/1f90521a-24f6-4758-ac3d-88d869fb0bf5/resourceGroups/packer-acceptance-test/providers/Microsoft.Compute/virtualMachines/pkrvm02e9rzzu5k."
--- FAIL: TestBuilderAcc_ManagedDisk_Windows_Build_Resource_Group_Additional_Disk (454.00s)
FAIL
FAIL    github.com/hashicorp/packer/builder/azure/arm   454.008s

```

Test results after change
```
--- PASS: TestBuilderAcc_ManagedDisk_Windows_Build_Resource_Group_Additional_Disk (563.56s)

```

Closes #10070
2020-10-23 13:44:27 -04:00
Megan Marsh
8f67f939f9
Merge pull request #10158 from Direnol/yandex-add-support-iam-auth
Added support for IAM credential in the token field and YC_TOKEN env
2020-10-23 09:39:46 -07:00
Roman Mingazeev
75befba67e add more doc 2020-10-23 18:01:52 +03:00
Roman Mingazeev
60595ad522 remove extra log 2020-10-23 14:09:05 +03:00
Roman Mingazeev
72fe3bbc26
Update builder/yandex/access_config.go
Co-authored-by: GennadySpb <lipenkov@gmail.com>
2020-10-23 14:05:39 +03:00
Roman Mingazeev
ae7fc84557 Added support for IAM credential in the token field and YC_TOKEN env 2020-10-23 11:47:28 +03:00
Megan Marsh
7fac596b37 don't try to delete a cd file if the upload of the cd itself failed 2020-10-22 16:53:40 -07:00
Megan Marsh
3be53e10af
Merge pull request #10128 from nayyara-samuel/add-state-timeout-linode
Add documented `state_timeout` parameters to Linode builder
2020-10-22 15:13:59 -07:00
Megan Marsh
c4001734d0
Merge pull request #10143 from hashicorp/do_9951
builder/vsphere: skip iso download if hashed file is already present on remote datastore
2020-10-22 15:06:04 -07:00
Megan Marsh
00037d8e69
Merge pull request #10145 from hashicorp/fix_10135
commhostport isn't present if communicator is null; protect casting i…
2020-10-22 14:24:23 -07:00
Megan Marsh
70cb4097e1 review comments, add plugin type for a few missing builders 2020-10-21 16:17:32 -07:00
Megan Marsh
c0ce8a9414 rework fixer deprecation code so we know what plugins they relate to 2020-10-21 15:28:59 -07:00
Megan Marsh
f1f834b8fe commhostport isn't present if communicator is null; protect casting in a check 2020-10-21 14:30:23 -07:00
Nahum Shalman
83a672f2c9 amazon/ebssurrogate: apply snapshot tags right when taking snapshot 2020-10-21 16:17:37 -04:00
Megan Marsh
796c40f89b builder/vsphere: skip iso download if hashed file is already present in remote packer_cache 2020-10-21 11:33:43 -07:00
Wilken Rivera
a2ba700ac0 Remove deprecated object ids from configs 2020-10-21 13:56:22 -04:00
Adrien Delorme
522d122858 regen all code 2020-10-21 12:04:10 +02:00
Adrien Delorme
4aea2efd0f HCL2: fully name SSHTemporaryKeyPair fields so that they don't conflict and can be generated 2020-10-21 11:53:07 +02:00
Wilken Rivera
1621ab59d8
tests/azure/arm: Update test image name (#10133)
I've run into a few cases where running the full test suite for the ARM
builder would fail because of conflicting image names. This is a
workaround for now the bigger fix is to have the acceptance clean up any
created images.

Results before change
```
the managed image named testBuilderAccManagedDiskWindows-1603151855 already exists in the resource group packer-acceptance-test, use the -force option to automatically delete it.
--- FAIL: TestBuilderAcc_ManagedDisk_Windows_Build_Resource_Group (0.66s)
```

Results after change
```
PASS
ok      github.com/hashicorp/packer/builder/azure/arm   2431.115s

```
2020-10-21 11:12:50 +02:00
Megan Marsh
799c548c40
Merge pull request #10116 from OblateSpheroid/GH8915
Feat (builder/oracle-oci): Allow filtering on base image
2020-10-20 14:41:09 -07:00
Boran Car
9b89439ec2 Rearrange cert add after err check for idiomatic 2020-10-20 22:20:57 +02:00
Boran Car
1082bffddd Add Azure PFX certificate support
Azure typically uses pfx files for service principal authentication.
These are PKCS#12 files so just try and read a cert file as such if we
can't already read it as PEM.
2020-10-20 22:15:38 +02:00
Adrien Delorme
d1e0214bec avoid panic debugging ssh key 2020-10-20 16:59:46 +02:00
Adrien Delorme
f51b231c17 Merge remote-tracking branch 'origin/master' into azr_selectable_temp_keygen_type_gcp 2020-10-20 16:39:01 +02:00
Adrien Delorme
536421efaf debug mode: don't dump the ssh key if its from a file 2020-10-20 12:00:49 +02:00
js-g
2f26e6d823 tests (builder/oracle-oci): test base image filter in config 2020-10-19 23:30:46 -04:00
Nayyara Samuel
32ebabfcf5 Add documented state_timeout parameters to Linode builder 2020-10-19 22:07:22 -04:00
Ufuk
2124d3d6b8 builder/digitalocean: tests added for new features vpc_uuid and connect_with_private_ip 2020-10-19 23:19:11 +03:00
Megan Marsh
b8e6e2c081
Merge pull request #10085 from 10000coins/f-aws-tenancy
builder/amazon: Support for source instance tenancy
2020-10-19 12:49:07 -07:00
Megan Marsh
ef1b401a22
Merge pull request #10102 from mattr-/update-amazon-builder-for-io2
builder/amazon: Add io2 as a supported volume type
2020-10-16 16:32:57 -07:00
Bryan Hundven
ecc8c6a44a Replace create_image with skip_create_image, as requested
Closes #9965
2020-10-16 15:42:30 -07:00
Bryan Hundven
476eefa26b Add 'create_image' option to googlecompute
When building a CI/CD deployment, during the PR process it's nice to be
able to run the builder, but not create the image the build produces.

Closes #9965
2020-10-16 15:42:17 -07:00
Megan Marsh
456214eb51
Merge pull request #10056 from marinsalinas/new_client
New official Outscale SDK migration.
2020-10-16 15:28:54 -07:00
Evan Pipho
608307cd1e Re-allow spot + tenancy. Validate tenancy is set to a usable value 2020-10-16 21:43:22 +00:00
Evan Pipho
d5d1a8708e Add tests for Tenancy vs Spot Price 2020-10-16 21:43:22 +00:00
Evan Pipho
6967e02103 Add support for source instance tenancy to amazon builders 2020-10-16 21:43:22 +00:00
js-g
0c34d6ca12 feat (builder/oracle-oci): add regex search on base image name 2020-10-15 15:28:38 -04:00
js-g
27128dc62f feat (builder/oracle-oci): allow filtering on base image 2020-10-15 11:02:16 -04:00
Adrien Delorme
54032d6c11 gen code and docs 2020-10-15 16:51:23 +02:00
Adrien Delorme
f4f731b83c Refactor google compute's temporary ssh keygen genertion to use the sshkey package 2020-10-15 16:51:11 +02:00
Matt Rogers
15f97421e2
builder/amazon: Add io2 as a supported volume type
io2 volumes are new as of 2020-08-24. This adds support for specifying
them in a packer template and having the iops value specified take
effect.
2020-10-14 09:01:17 -05:00
Wilken Rivera
c7ba5c9a14
Fix line ending issues for test files (#10096) 2020-10-14 11:03:43 +02:00
Marin Salinas
22a49a2f2e chore: fix test 2020-10-13 16:19:15 -05:00
Marin Salinas
472b008a94 chore: fix test 2020-10-13 15:16:01 -05:00
Megan Marsh
4810a3d86f
Merge pull request #10077 from hashicorp/document_3348
builder/qemu: docs: users must re-apply packer defaults for drive and device arguments
2020-10-13 11:41:28 -07:00
Marin Salinas
2578bbbb50 chore: fix test 2020-10-13 12:54:25 -05:00
Marin Salinas
09f57537bf chore: fix lint issues on osc builder 2020-10-13 11:02:13 -05:00
Ufuk
a100fe496b go fmt 2020-10-13 18:57:57 +03:00
Marin Salinas
56807553fc chore: fix lint issues on osc builder 2020-10-13 10:45:32 -05:00
Ufuk
49cd4baa0c VPCUUID and ConnectWithPrivateIP have been added to builder/digitalocean 2020-10-13 18:26:00 +03:00
Jeff Wong
0f12414126
Merge branch 'master' into add-proxmox-vm-clone 2020-10-12 10:48:15 -07:00
Megan Marsh
01ed398756
fix up alicloud docs to make it clearer that disk_size and other disk device options are not top level fields. (#10080) 2020-10-12 10:28:25 +02:00
Jeff Wong
2861ad9074
clean up imports 2020-10-11 11:47:02 -07:00
Megan Marsh
709a173060 fix docs linking issue 2020-10-09 14:01:21 -07:00
Megan Marsh
b05fd9303e document that users must re-apply packer defualts for drive and device arguments 2020-10-09 10:39:27 -07:00
Megan Marsh
774a168957
Merge pull request #10064 from hashicorp/refactor_step_run
builder/qemu: (tech-debt) Major refactor of step_run.
2020-10-08 11:54:34 -07:00
Megan Marsh
3e35630d8d remove slashes to prevent windows test fails 2020-10-08 11:36:36 -07:00
Megan Marsh
62a401ef28
Fix 10060 (#10065)
* fix overeager validation
* fix validation of openstack source images
2020-10-08 10:54:41 +02:00
Jeff Wong
93531b3ec5
[proxmox] Adds proxmox fixer and fixer test
Add fixer for proxmox to proxmox-iso. Updated gofmt.
2020-10-08 00:04:43 -07:00
Jeff Wong
a140c13943
[proxmox] add proxmox builder alias
Adds an alias for `proxmox` that points to proxmox-iso builder for
backwards compatibility
2020-10-07 23:43:12 -07:00
Megan Marsh
d6aa172edc remove typo'd option from docs 2020-10-07 16:14:13 -07:00
Megan Marsh
8e632866b1 typo 2020-10-07 15:22:08 -07:00
Megan Marsh
b54b778572 major refactor of the step_run. Splits step into two major parts:
- generating defaults
- overriding defaults with user args

The default generation has been shuffled around some, in order to
make sure that any changes to a specific arg happen in one place
to make it easier to reason about those args. Related args have
been moved close to one another.

The deviceArgs and driveArgs were overly complex after several
layers of copy/paste modifications. Careful pruning reduced the
layers of logic and repeated code, to help make it easier to reason
about.
2020-10-07 15:09:45 -07:00
Patrik
d4d78feed2
feat(scaleway): get image by label if not an UUID (#10061)
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
2020-10-07 16:04:00 +02:00
abarbare
a478bf6f37
fix: update scaleway website documentation (#10058) 2020-10-07 12:02:08 +02:00
Ricardo Rosales
809f38be3a
[azure-chroot] Updating parameter exlude_from_latest to exclude_from_latest (#10034) 2020-10-07 11:08:33 +02:00
Jeff Wong
cd3bdc9e38
REFACTOR: do not pass comm ref through statebag 2020-10-06 22:45:19 -07:00
Jeff Wong
fdda18e392
Use Trilean for boolean value, and allow for missing values for defaults 2020-10-06 17:24:45 -07:00
Jeff Wong
977022fb35
Go format 2020-10-06 16:53:29 -07:00
Jeff Wong
a26e3e6887
[Proxmox] FIX: tests, add required iso_file to basic iso config tests 2020-10-06 16:04:18 -07:00
Megan Marsh
61c6085651
final fix to make service account impersonation work with iap tunnels (#10054) 2020-10-06 15:34:06 -04:00
Megan Marsh
7ee9a4b638
Merge pull request #9968 from upodroid/google-impersonation
GCP: add service account impersonation
2020-10-06 11:32:03 -07:00
Adrien Delorme
f6d362d392 skip Ctx 2020-10-06 11:54:04 +02:00
Adrien Delorme
25d7e7ce17 fix tests 2020-10-06 11:48:24 +02:00
Adrien Delorme
5b3ff89cb0 proxmox: move iso.storageConfig to common.storageConfig 2020-10-06 11:42:49 +02:00
Adrien Delorme
1260e123aa proxmox.Config: remove mapstructure:",squash" tag 2020-10-06 11:14:09 +02:00
Adrien Delorme
b2be255057 Merge remote-tracking branch 'origin/master' into pr/featheredtoast/9626-1 2020-10-06 11:11:04 +02:00
Megan Marsh
deb08409f1
Merge pull request #10040 from OblateSpheroid/GH6844
Feat (oracle/oci): allow specifying image compartment
2020-10-05 15:02:23 -07:00
Megan Marsh
721cbac645
Merge pull request #9996 from hashicorp/fix_9995
Make shell-local post-processor return copy of previous artifact
2020-10-05 13:00:51 -07:00
js-g
c892f0582b GH#6844: allow image compartment to be specified 2020-10-02 22:30:52 -04:00
Megan Marsh
157b5cdc28
Merge pull request #10017 from kostasns/oci_boot_volume
Allow to specify boot volume size in OCI builder
2020-10-02 11:04:05 -07:00
upodroid
b1c74f9df0 Merge branch 'master' of github.com:hashicorp/packer into google-impersonation 2020-10-01 23:19:15 +01:00
upodroid
f13099edfb rebase the branch 2020-10-01 20:39:06 +01:00
Kostas
8c07e21be8 update hcl2spec 2020-10-01 09:06:22 +03:00
Kostas
18c4f271ac rename variable; add docs 2020-10-01 09:01:51 +03:00
Marin Salinas
49e4d83cd7 refactor: remove oapi references in bsusurrogate builder 2020-09-30 10:39:24 -05:00
Marin Salinas
aa3ec3fd0f refactor: change chroot builder to new SDK 2020-09-30 10:38:31 -05:00
Marin Salinas
c0c0f003f9 refactor: fix bsu builder to accept proxy 2020-09-30 10:37:41 -05:00
Marin Salinas
d813c3647d refactor: change bsuvolume builder to new SDK 2020-09-30 10:37:09 -05:00
Braunson
b2047bd938
Put the correct AzureTags type in StateBag (#10014)
Azure expects the tags format to use a pointer to the string for the map value.
The configuration from the builder is not a pointer so when storing in the state bag for
reference in later execution we convert it when creating the StateBag.

Fixes #10012 and #10013.

* Use the MapToAzureTags helper and error check in resource group creation

* Added test case for tag values not using a pointer

* test/azure/arm: Add test to verify tags stored in state

* test/azure/arm: Add azure_tags to existing acceptance test for Linux

Test Before Fix
```
--- FAIL: TestBuilderAcc_ManagedDisk_Linux (1.81s)
panic: interface conversion: interface {} is map[string]string, not map[string]*string [recovered]
        panic: interface conversion: interface {} is map[string]string, not map[string]*string
FAIL    github.com/hashicorp/packer/builder/azure/arm   1.822s

```

Test After Fix
```
2020/09/29 17:23:03 ui: ==> test: Resource group has been deleted.
--- PASS: TestBuilderAcc_ManagedDisk_Linux (517.41s)
    PASS
    ok      github.com/hashicorp/packer/builder/azure/arm   517.426s
```

Co-authored-by: Wilken Rivera <dev@wilkenrivera.com>
2020-09-30 09:55:46 -04:00
Kostas
72166febee allow to specify boot volume size 2020-09-30 13:31:37 +03:00
Megan Marsh
4c0ac6917e switch to using aws base config, which means we're using code tested and maitnained by the terraform crowd. 2020-09-29 14:26:38 -07:00
sylviamoss
c8874c9382 improve docker_tag cast to avoid failures 2020-09-29 14:41:43 +02:00
Lik
bdb1c47532
Pass QemuImgArgs to stepConvertDisk (#10001) 2020-09-28 11:43:20 +02:00
sylviamoss
aa9c162c60 improve docker_tags artifact state read 2020-09-28 10:52:28 +02:00
sylviamoss
e758891878 make shell-local post-processor return copy of previous artifact 2020-09-25 16:53:59 +02:00
Roman Tomjak
b6ff793496
builder/proxmox: add support for io threads (#9969) 2020-09-25 14:59:54 +02:00
Niels Pardon
a2ceb54b1a
Add support for external source image url (#9992)
Signed-off-by: Niels Pardon <par@zurich.ibm.com>
2020-09-25 14:59:00 +02:00
Niels Pardon
29d23c13d0
Add additional debugging for OpenStack (#9972)
Signed-off-by: Niels Pardon <par@zurich.ibm.com>
2020-09-25 13:16:53 +02:00
Sylvia Moss
96e3def294
Add pause_before_ssm config to pause before establishing the Session Manager session (#9988) 2020-09-25 10:19:19 +02:00
Megan Marsh
108455a7dc
Merge pull request #9983 from hashicorp/tools_upload_path
allow user to set tools upload path
2020-09-24 10:41:08 -07:00
Megan Marsh
d66b358100
Merge pull request #9991 from hashicorp/b-amazon-ssm-infinite-loop
amazon/ssm_driver: Update log polling logic
2020-09-24 09:55:39 -07:00
Megan Marsh
8d0058dad6 allow user to set tools source path 2020-09-24 09:51:01 -07:00
Wilken Rivera
2f2b5683a2 amazon/ssm_driver: Update log polling logic
This change checks for closed iochans related to the log polling
function and will break out of the loop when both channels are closed.
Which is an indicator that the SSM session has been terminated by some
external process. This fixes an issue where Packer hangs, due to the
infinite loop, when an SSM session is killed outside of Packer.

Related to #9442
2020-09-24 10:19:37 -04:00
Adrien Delorme
654fade0a9
azure arm: make map[string]*string => map[string]string to simplify things (#9985)
* azure arm: make map[string]*string => map[string]string to simplify things
* go generate ./builder/azure/...
* tests !

fix #9984
2020-09-24 12:19:26 +02:00
Megan Marsh
e41100290e
Merge pull request #9981 from hashicorp/assume_role
Implement assume_role for Packer.
2020-09-23 13:44:45 -07:00
Megan Marsh
429d431365 Implement assume_role for Packer. This functionality is copied shamelessly
from the Terraform AWS provider
2020-09-23 13:18:26 -07:00
Megan Marsh
9170204a93
Merge pull request #9963 from hashicorp/implement_9868
Add floppy_files, cd_files, and iso_paths to vsphere-clone
2020-09-23 11:37:17 -07:00
sylviamoss
75d649e051 add step_remove_cdrom tests 2020-09-23 12:09:33 +02:00
sylviamoss
2de3f2755a add step_remove_floppy tests 2020-09-23 12:00:28 +02:00
sylviamoss
7cd6ee2b3b add FindDatastore driver test 2020-09-22 17:42:35 +02:00
sylviamoss
b881a59bc8 refactor vcenter simulator setup 2020-09-22 16:48:53 +02:00
sylviamoss
7b1af2c4e8 add step_add_floppy unit tests 2020-09-22 16:23:11 +02:00
sylviamoss
b46f587450 vsphere-clone use common step_add_cdrom 2020-09-22 11:34:49 +02:00
upodroid
be56632f7e fix vendoring 2020-09-20 16:50:03 +01:00
upodroid
9b121e85f9 fix dodgy pointers 2020-09-20 15:31:45 +01:00