Commit Graph

204 Commits

Author SHA1 Message Date
Adrien Delorme 522d122858 regen all code 2020-10-21 12:04:10 +02:00
Adrien Delorme 54032d6c11 gen code and docs 2020-10-15 16:51:23 +02:00
Megan Marsh 709a173060 fix docs linking issue 2020-10-09 14:01:21 -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
sylviamoss 778d77e4a2 add floppy and cd to vsphere-clone 2020-09-18 17:09:01 +02:00
Sylvia Moss ce2047f30b
vSphere StepAddCDRom tests (#9955) 2020-09-18 09:57:01 +02:00
Megan Marsh ef01bb5ba6 generated code 2020-09-14 15:35:38 -07:00
Megan Marsh e70e8c8651 add cd_files 2020-09-14 14:59:51 -07:00
Sylvia Moss caf65781d7
Add vsphere-clone mac_address option (#9930)
* add vsphere-clone mac_address option

* check on prepare if network is set together with mac_address
2020-09-14 13:18:39 +02:00
Andreas Botzner 3739970b84
Adds ability to specify interfaces for http_directroy and VM for the Proxmox builder (#9874)
Adds two config options to the Proxmox builder:
```
http_interface
vm_interface
```
Both give the user the ability to specify an interface whos IP will be set as the `.HTTPIP` and VMIP respectively.

This is useful when the VM and or the machine executing Packer has multiple interfaces.
Until now Packer would accept the first non-loopback IP as the `.HTTPIP` and VMIP.

I'm open to suggestions and any kind of feedback. 


* Added ability to define the NIC where the HTTPIP is taken from.
* Added VM interface config option
* fmt and documentation
* Moved HTTPInterface into HTTPCommon
* Build Fix
* Documentation Fix
2020-09-14 12:24:01 +02:00
Megan Marsh 8ffa0d2060
Merge pull request #9842 from jason-azze/patch-1
Builders vsphere-iso and vsphere-clone - CPUs is actually for cores, not sockets.
2020-09-09 16:03:45 -07:00
Megan Marsh ca650c9602 fix struct comment for generation 2020-09-09 16:01:30 -07:00
Troy Lindsay d1a61cac33
Add NVMe controller support to vsphere-iso builder (#9880) 2020-09-03 11:14:58 +02:00
Troy Lindsay 602729ac23
Fix vsphere-iso acceptance tests (#9878) (#9881) 2020-09-03 10:17:49 +02:00
Sylvia Moss 903deb9e6a
vSphere StepHardware tests (#9866) 2020-09-02 10:19:57 +02:00
Sylvia Moss 24dbd0a28b
Fix iso_path validation regex (#9855) 2020-09-01 10:11:48 +02:00
Sylvia Moss 58a0bdd780
Look for a default resource pool when root resource pool is not found (#9809) 2020-08-31 16:26:48 +02:00
Sylvia Moss 942bfbf221
Add driver mocks and write tests to steps Remote Upload and Create VM (#9833) 2020-08-31 10:34:41 +02:00
Sylvia Moss 2152fa3313
Accept content library path in iso_paths (#9801) 2020-08-24 16:54:30 +02:00
Sylvia Moss ada2a431ef
Modularise vCenter rest client (#9793) 2020-08-20 17:55:25 +02:00
Sylvia Moss a1524bf96a
Add option to also import OVF templates to the Content Library (#9755) 2020-08-19 13:20:25 +02:00
Megan Marsh acba3ea3e7
Document network path (#9762) 2020-08-13 11:26:40 -04:00
Sylvia Moss e475db6a66
check for ip after timeout (#9748) 2020-08-12 10:39:12 +02:00
Sylvia Moss 80960d7a64
Fix vsphere boot command and check for context cancelation when waiting for ip (#9739) 2020-08-10 18:16:19 +02:00
Megan Marsh 3f61498704
Merge pull request #9704 from ntoofu/f-vsphere-export-permission
Add `directory_permission` config option to `vsphere` builder
2020-08-05 10:57:30 -07:00
Sylvia Moss dcacf7ad4c
Add vSphere HCL examples to the docs (#9674) 2020-08-05 19:23:52 +02:00
ntoofu a53e81d9a2 Make docs more clear
https://github.com/hashicorp/packer/pull/9704#discussion_r465393240
2020-08-06 01:11:02 +09:00
jhawk28 6b8d086e94
alt, ctrl, and shift should be outside variables (#9702) 2020-08-05 17:36:40 +02:00
Megan Marsh 825deef43d
Merge pull request #9665 from hashicorp/vsphere_clone_customization
Add step to customize cloned VM
2020-08-05 08:30:31 -07:00
Sylvia Moss dd37a10355
fix configuration_parameters (#9713) 2020-08-05 16:57:12 +02:00
ntoofu 5493285f65 Add `directory_permission` config option to `vsphere` builder 2020-08-02 15:02:31 +09:00
sylviamoss c6e9bde97b add step customize and docs 2020-07-29 15:07:44 +02:00
jhawk28 3370c91cf2
add some additional messaging when a boot command fails to type (#9661) 2020-07-29 15:06:45 +02:00
Megan Marsh a687d6fe12
ci/tech-debt: Fix vmware acceptance tests (#9636)
* add kex algorithm option to ssh config

* regenerate code

* This commit fixes old vmware acceptance tests that have not been run in some time. It does this in two parts:
1) It modifies the minimal vmware build configuration to use a custom kex algorithm, which enables the ssh connection to succeed.
2) It modifies logic in reading and defaulting hardware config values, which was crashing.
3) It adds a new acceptance test with a preseed file to test loading from an http directory.
2020-07-23 09:40:57 +02:00
Megan Marsh aa4933c28a
Merge pull request #9574 from jhawk28/vsphere_usb_controllers
(vsphere) add ability to add a xhci/usb3 controller
2020-07-14 10:09:33 -07:00
Joshua Foster b49c844637 ignore false and 0 in case someone defined the field as "false" or false 2020-07-14 12:11:24 -04:00
Sylvia Moss 5a006f226a
Don't use Packer context as vSphere driver context (#9576) 2020-07-14 11:45:19 +02:00
Sylvia Moss eb5c3c3efb
fix file size descriptor (#9568) 2020-07-14 11:36:49 +02:00
Sylvia Moss 3a0dfa1259
add option to destroy vm after deploy to content library (#9569) 2020-07-14 10:07:20 +02:00
Joshua Foster b0fa05704a change usb controllers to a list. add ability to set as a usb3
Closes #8874
2020-07-13 20:54:46 -04:00
Roger Hu 28f8241a05 update generated files 2020-07-10 16:58:06 -07:00
Moss 921078ccc0 add force_bios_setup configuration option 2020-07-10 12:30:22 +02:00
jhawk28 ae5156a70d
add ability to define multiple disk controllers (#9519) 2020-07-10 12:25:46 +02:00
Sylvia Moss 9c1409dbba
Add content_library_destination to import VM template to a Content Library (#9551) 2020-07-10 11:01:10 +02:00
Megan Marsh 61b79b6e53
Merge pull request #9542 from jhawk28/bug_9511
clean up folder path so that it is what vsphere expects
2020-07-09 16:08:18 -07:00
Megan Marsh b7f1aedf96
Merge pull request #9556 from hashicorp/fix_9107
Match network to host when multiple networks are found
2020-07-09 14:52:32 -07:00
Joshua Foster 765d96e8eb unset HardwareConfig.Firmware since CreateConfig.Firmware configures the firmware in StepCreateVM 2020-07-09 10:34:48 -04:00
Moss b74e28a479 match network to host when multiple networks are found 2020-07-09 15:59:15 +02:00
Sylvia Moss 268e95364f
Adds vApp properties config and save public ssh key to a vApp property (#9507) 2020-07-08 10:33:45 +02:00
Megan Marsh 673858a63c
Merge pull request #9513 from hashicorp/undocument_ssh_temp_key
Undocument ssh options not used by all builders
2020-07-07 14:26:21 -07:00
Wilken Rivera 892413b7ea
docs/builder/vsphere-iso: Add documentation for BootConfig (#9538)
* docs/builder/vsphere-iso: Add documentation for BootConfig

* Add documenation for http_ip

* Remove duplicate build configuration section
2020-07-07 13:57:51 -04:00
Joshua Foster a6170b0c35 clean up folder path so that it is what vsphere expects 2020-07-07 12:25:14 -04:00
Joshua Foster 500ec5ccc7 fix return 2020-07-02 12:55:10 -04:00
Joshua Foster e4dffeed35 clean up if logic 2020-07-02 12:33:28 -04:00
Moss 8ea64c5b35 undocument ssh_keypair_name and ssh_agent_auth 2020-07-02 14:55:58 +02:00
Joshua Foster 63f9282f5c fix vshere ToolsSyncTime and ToolsUpgradePolicy 2020-07-01 13:58:50 -04:00
Moss 41edd09d3c undocument temporary_key_pair_name and ssh_private_key_file 2020-07-01 16:33:18 +02:00
Megan Marsh f8e21db9bc
Merge pull request #9450 from jhawk28/vsphere_multi_ip_wait
(vsphere) look at all IPs when waiting for the IP
2020-06-24 10:43:11 -07:00
Ivo van Geel e54ad3f1fb
Add boot_command support to vsphere-clone builder, including support … (#9397) 2020-06-24 11:14:30 +02:00
Megan Marsh 4f77bb0c4a add new ssh_ciphers option 2020-06-17 16:48:23 -07:00
Joshua Foster 50b6c86b1c look at all the IPs of the VM when waiting for an IP 2020-06-17 17:40:21 -04:00
Joshua Foster dd40c68ff8 fix default IP address in test to all ipv4 addresses 2020-06-17 16:00:38 -04:00
Joshua Foster fb159e7060 add test cases for Network 2020-06-17 11:40:39 -04:00
Joshua Foster 7fc2ea8422 add a fallback to an ipv4 address if the the range can't find one 2020-06-17 01:46:30 -04:00
Joshua Foster aaf9103330 use the ip_wait_address range to determine the default for the http server IP 2020-06-17 01:36:55 -04:00
Megan Marsh 4178625afb re-add winrm_no_proxy option. Winrm code needs to be modified in order to read no_proxy env var when client is created rather than when net/http library is instantiated. 2020-06-16 10:27:30 -07:00
Moss c1c350a657 remove comments 2020-06-12 14:51:52 +02:00
Moss 45058847c0 return BootConfig prepare err 2020-06-12 14:51:52 +02:00
Moss 653eb95bdb adds tests to usb_driver and step_http_ip_discover 2020-06-12 14:51:52 +02:00
Moss 65cfb880fd Fix boot_command and update docs 2020-06-12 14:51:52 +02:00
Moss ba767d1663 remove duplicated press 2020-06-12 14:51:52 +02:00
Moss 585a86fe03 Add usb_driver to common boot_command and use it on vsphere 2020-06-12 14:51:52 +02:00
Conlan 4afcc794be
Fix typo in VSphere Docs (#9405)
* Fix typo in VSphere Docs

* Update ConfigParamsConfig-not-required.mdx

Co-authored-by: Adrien Delorme <adrien.delorme@icloud.com>
2020-06-12 11:18:51 +02:00
Joshua Foster e59fab952d create the folders if they don't exist 2020-06-11 10:37:24 -04:00
Joshua Foster f5a795a22e use path.Join to make a cleaner path 2020-06-10 09:12:21 -04:00
Joshua Foster c7a6315ca4 use datacenter inventory path for find folder 2020-06-10 08:24:23 -04:00
Megan Marsh 48b448dfd5
Merge pull request #9366 from hashicorp/fix_9248
Add ToolSyncTime and ToolUpgradePolicy to vSphere
2020-06-05 13:03:58 -07:00
Megan Marsh 7fcd702b45
Merge pull request #9358 from jhawk28/bug_9349
(vsphere-iso) add the ability to check if the IP is within the an IP range
2020-06-05 12:18:51 -07:00
Moss 112638da01 Add ToolSyncTime and ToolUpgradePolicy to vSphere 2020-06-05 17:20:44 +02:00
Sylvia Moss 1422085ede
Validate host and network when looking for network (#9361) 2020-06-05 11:01:58 +02:00
Joshua Foster d87e53b841 return false instead of continue to match logic from govmomi 2020-06-05 00:09:57 -04:00
Joshua Foster 3a6d42e0df ip check should continue if the ip is NOT in the range 2020-06-04 23:17:02 -04:00
Joshua Foster 90463e5394 make default for wait address to be any ipv4 address. add some better documentation 2020-06-04 23:13:46 -04:00
Joshua Foster 27a1ceef6d add example for any ipv4 address 2020-06-04 12:15:53 -04:00
Joshua Foster 1fb22a7b7b add the ability to check if the IP is within the an IP range 2020-06-04 01:55:25 -04:00
Joshua Foster d35f342319 add the ability to configure the http bind address. defaults to 0.0.0.0. 2020-06-03 16:40:18 -07:00
Sylvia Moss 434c9bcae0
Check if task result is nil and return error (#9354) 2020-06-03 17:37:30 +02:00
Joshua Foster 30bff17799 use the Datacenter's VmFolder instead of hand generating it 2020-06-01 19:53:54 -04:00
RedTail72 374f82b978
buidler/vsphere-iso: ISOUrl Fix (#9321)
* ISOUrl Fix

Added the check for ISOUrls back in addition to a check for RawSingleISOUrl.  This should allow both ISOUrls[] or ISOUrl to work while not requiring them all the time.

* Update config.go

Fixed formatting.
2020-06-01 15:27:26 -04:00
Megan Marsh 5efb1a195e update docs for configuration_paramaters to explain what it actually is. 2020-05-29 15:07:34 -07:00
Adrien Delorme 40947c2bf6
HCL2: generate hcl tags with go-cty tags too (#9306)
This will allow to generate the config files:

```go
package main

import (
	"fmt"

	"github.com/hashicorp/hcl/v2/gohcl"
	"github.com/hashicorp/hcl/v2/hclwrite"
	"github.com/hashicorp/packer/builder/alicloud/ecs"
)

func main() {
	name := "name"
	app := ecs.FlatConfig{
		AlicloudImageName: &name,
		ECSSystemDiskMapping: &ecs.FlatAlicloudDiskDevice{
			DiskName: &name,
		},
	}

	f := hclwrite.NewEmptyFile()
	block := gohcl.EncodeAsBlock(&app, `source "something" "something"`)
	f.Body().AppendBlock(block)
	fmt.Printf("%s", f.Bytes())
}

```

Will output:

```
source "something" "something" {
  packer_user_variables      = null
  packer_sensitive_variables = null
  image_name                 = "name"
  image_share_account        = null
  image_unshare_account      = null
  image_copy_regions         = null
  image_copy_names           = null
  tags                       = null
  tag                        = null
  system_disk_mapping        = { disk_category = null, disk_delete_with_instance = null, disk_descri
ption = null, disk_device = null, disk_encrypted = null, disk_name = "name", disk_size = null, disk_
snapshot_id = null }
  image_disk_mappings        = null
  ssh_remote_tunnels         = null
  ssh_local_tunnels          = null
  ssh_public_key             = null
  ssh_private_key            = null
}
```

This is a good first step for #9015 and #9282 

fix #9304
2020-05-28 11:19:00 +02:00
Adrien Delorme 0fa60c68fb
Drop the iso_checksum_type & iso_checksum_url fields (#8437)
* Drop the iso_checksum_type & iso_checksum_url fields

In favor of simply using iso_checksum that will know what to do.

* fix after master merge

* Update builder_test.go

* Update builder_test.go

* Update builder_test.go

* Update builder_test.go

* Update builder_test.go

* remove checksum lowercasing tests

* Update builder_test.go

* Update builder_test.go

* better docs

* Update builder_test.go

* even better docs

* Update config.go

* Update builder_test.go

* Update step_create_vmx_test.go

* make generate

* better docs

* fix imports

* up tests

* Update _ISOConfig-required.html.md

* Update builder_test.go

* don't use sha1.Sum("none") as a caching path

* Update builder_test.go

* better docs

* Update iso_config_test.go

remove ISOChecksumType/ISOChecksumURL references

* Update step_download_test.go

* add iso_checksum_url and iso_checksum_type fixers + tests

* add concrete examples of checksum values

* add examples of checksumming from local file

* update go-getter dep

* up deps

* use new go-getter version

* up ESX5Driver.VerifyChecksum: use go-getter's checksumming

* ISOConfig.Prepare: get checksum there in case we need it as a string in ESX5Driver.VerifyChecksum

* Update iso_config.go

* get go-getter from v2 branch

* Update driver_esx5.go

add more comments

* Update driver_esx5.go

* show better error message when the checksum is invalid

* Update builder_test.go

put in a valid checksum to fix tests, checksum is md5("packer")

* Update builder_test.go

test invalid and valid checksum

* more test updating

* fix default md5 string to be a valid md5

* TestChecksumFileNameMixedCaseBug: use 'file:' prefix for file checksumming

* Update iso_config_test.go

* Update iso_config_test.go

* Update builder_test.go

* Update builder_test.go

* Update builder_test.go

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update go.mod

* Update go.mod

* Update CHANGELOG.md
2020-05-28 11:02:09 +02:00
Joshua Foster 828440d852 rebase and run generate 2020-05-27 15:05:23 -07:00
Joshua Foster 43714049e8 add set_host_for_datastore_uploads flag 2020-05-27 15:00:08 -07:00
Joshua Foster 9895f90451 dont set the host for the datastore upload 2020-05-27 15:00:08 -07:00