Commit Graph

118 Commits

Author SHA1 Message Date
Megan Marsh 88b7b0e14a remove sdk 2020-12-17 13:29:25 -08:00
Megan Marsh 26946f1300
Merge pull request #10320 from seventieskid/gcp-wait-to-add-ssh-keys-10312
Gcp wait to add ssh keys 10312
2020-12-08 15:52:52 -08:00
Gareth Rees 833855eec5 Amend commit author for license pass 2020-12-03 11:33:02 +00:00
Gareth Rees 3ab9bae79c Amend commit author for license pass
$ make test
find: -executable: unknown primary or operator
find: -executable: unknown primary or operator
==> Checking that only certain files are executable...
Check passed.
ok  	github.com/hashicorp/packer	0.098s
ok  	github.com/hashicorp/packer/builder/alicloud/ecs	70.102s
?   	github.com/hashicorp/packer/builder/alicloud/version	[no test files]
ok  	github.com/hashicorp/packer/builder/amazon/chroot	0.076s
ok  	github.com/hashicorp/packer/builder/amazon/common	0.052s
?   	github.com/hashicorp/packer/builder/amazon/common/awserrors	[no test files]
?   	github.com/hashicorp/packer/builder/amazon/common/ssm	[no test files]
ok  	github.com/hashicorp/packer/builder/amazon/ebs	0.053s
?   	github.com/hashicorp/packer/builder/amazon/ebs/acceptance	[no test files]
ok  	github.com/hashicorp/packer/builder/amazon/ebssurrogate	0.057s
ok  	github.com/hashicorp/packer/builder/amazon/ebsvolume	0.052s
ok  	github.com/hashicorp/packer/builder/amazon/instance	0.092s
?   	github.com/hashicorp/packer/builder/amazon/version	[no test files]
ok  	github.com/hashicorp/packer/builder/azure/arm	8.929s
ok  	github.com/hashicorp/packer/builder/azure/chroot	0.071s
ok  	github.com/hashicorp/packer/builder/azure/common	0.032s
ok  	github.com/hashicorp/packer/builder/azure/common/client	2.768s
?   	github.com/hashicorp/packer/builder/azure/common/constants	[no test files]
?   	github.com/hashicorp/packer/builder/azure/common/lin	[no test files]
?   	github.com/hashicorp/packer/builder/azure/common/logutil	[no test files]
ok  	github.com/hashicorp/packer/builder/azure/common/template	0.038s
ok  	github.com/hashicorp/packer/builder/azure/dtl	1.508s
ok  	github.com/hashicorp/packer/builder/azure/pkcs12	0.250s
ok  	github.com/hashicorp/packer/builder/azure/pkcs12/rc2	0.018s
?   	github.com/hashicorp/packer/builder/azure/version	[no test files]
ok  	github.com/hashicorp/packer/builder/cloudstack	0.074s
?   	github.com/hashicorp/packer/builder/cloudstack/version	[no test files]
ok  	github.com/hashicorp/packer/builder/digitalocean	0.078s
?   	github.com/hashicorp/packer/builder/digitalocean/version	[no test files]
ok  	github.com/hashicorp/packer/builder/docker	0.054s
?   	github.com/hashicorp/packer/builder/docker/version	[no test files]
ok  	github.com/hashicorp/packer/builder/file	0.037s
?   	github.com/hashicorp/packer/builder/file/version	[no test files]
ok  	github.com/hashicorp/packer/builder/googlecompute	7.982s
?   	github.com/hashicorp/packer/builder/googlecompute/version	[no test files]
ok  	github.com/hashicorp/packer/builder/hcloud	0.037s
?   	github.com/hashicorp/packer/builder/hcloud/version	[no test files]
ok  	github.com/hashicorp/packer/builder/hyperone	0.031s
?   	github.com/hashicorp/packer/builder/hyperone/version	[no test files]
ok  	github.com/hashicorp/packer/builder/hyperv/common	0.042s
ok  	github.com/hashicorp/packer/builder/hyperv/common/powershell	0.017s
ok  	github.com/hashicorp/packer/builder/hyperv/common/powershell/hyperv	0.027s
ok  	github.com/hashicorp/packer/builder/hyperv/iso	0.193s
?   	github.com/hashicorp/packer/builder/hyperv/version	[no test files]
ok  	github.com/hashicorp/packer/builder/hyperv/vmcx	0.160s
ok  	github.com/hashicorp/packer/builder/jdcloud	0.038s
?   	github.com/hashicorp/packer/builder/jdcloud/version	[no test files]
ok  	github.com/hashicorp/packer/builder/linode	0.074s
?   	github.com/hashicorp/packer/builder/linode/version	[no test files]
ok  	github.com/hashicorp/packer/builder/lxc	0.038s
?   	github.com/hashicorp/packer/builder/lxc/version	[no test files]
ok  	github.com/hashicorp/packer/builder/lxd	0.033s
?   	github.com/hashicorp/packer/builder/lxd/version	[no test files]
ok  	github.com/hashicorp/packer/builder/ncloud	0.038s
?   	github.com/hashicorp/packer/builder/ncloud/version	[no test files]
ok  	github.com/hashicorp/packer/builder/null	0.036s
?   	github.com/hashicorp/packer/builder/null/version	[no test files]
ok  	github.com/hashicorp/packer/builder/oneandone	0.038s
?   	github.com/hashicorp/packer/builder/oneandone/version	[no test files]
ok  	github.com/hashicorp/packer/builder/openstack	0.048s
?   	github.com/hashicorp/packer/builder/openstack/version	[no test files]
ok  	github.com/hashicorp/packer/builder/oracle/classic	0.055s
?   	github.com/hashicorp/packer/builder/oracle/common	[no test files]
ok  	github.com/hashicorp/packer/builder/oracle/oci	6.349s
?   	github.com/hashicorp/packer/builder/oracle/version	[no test files]
ok  	github.com/hashicorp/packer/builder/osc/bsu	0.045s
ok  	github.com/hashicorp/packer/builder/osc/bsusurrogate	0.043s
ok  	github.com/hashicorp/packer/builder/osc/bsuvolume	0.048s
ok  	github.com/hashicorp/packer/builder/osc/chroot	0.035s
ok  	github.com/hashicorp/packer/builder/osc/common	0.030s
ok  	github.com/hashicorp/packer/builder/osc/common/retry	0.018s
?   	github.com/hashicorp/packer/builder/osc/version	[no test files]
ok  	github.com/hashicorp/packer/builder/parallels/common	1.546s
ok  	github.com/hashicorp/packer/builder/parallels/iso	0.047s
ok  	github.com/hashicorp/packer/builder/parallels/pvm	0.044s
?   	github.com/hashicorp/packer/builder/parallels/version	[no test files]
ok  	github.com/hashicorp/packer/builder/profitbricks	0.046s
?   	github.com/hashicorp/packer/builder/profitbricks/version	[no test files]
?   	github.com/hashicorp/packer/builder/proxmox	[no test files]
?   	github.com/hashicorp/packer/builder/proxmox/clone	[no test files]
ok  	github.com/hashicorp/packer/builder/proxmox/common	0.070s
ok  	github.com/hashicorp/packer/builder/proxmox/iso	0.072s
?   	github.com/hashicorp/packer/builder/proxmox/version	[no test files]
ok  	github.com/hashicorp/packer/builder/qemu	0.088s
?   	github.com/hashicorp/packer/builder/qemu/version	[no test files]
ok  	github.com/hashicorp/packer/builder/scaleway	0.062s
?   	github.com/hashicorp/packer/builder/scaleway/version	[no test files]
ok  	github.com/hashicorp/packer/builder/tencentcloud/cvm	0.037s
?   	github.com/hashicorp/packer/builder/tencentcloud/version	[no test files]
ok  	github.com/hashicorp/packer/builder/triton	0.057s
?   	github.com/hashicorp/packer/builder/triton/version	[no test files]
ok  	github.com/hashicorp/packer/builder/ucloud/common	0.039s
ok  	github.com/hashicorp/packer/builder/ucloud/uhost	0.045s
?   	github.com/hashicorp/packer/builder/ucloud/version	[no test files]
ok  	github.com/hashicorp/packer/builder/vagrant	0.046s
?   	github.com/hashicorp/packer/builder/vagrant/version	[no test files]
ok  	github.com/hashicorp/packer/builder/virtualbox/common	2.546s
ok  	github.com/hashicorp/packer/builder/virtualbox/iso	0.053s
?   	github.com/hashicorp/packer/builder/virtualbox/iso/acceptance	[no test files]
ok  	github.com/hashicorp/packer/builder/virtualbox/ovf	0.043s
?   	github.com/hashicorp/packer/builder/virtualbox/version	[no test files]
?   	github.com/hashicorp/packer/builder/virtualbox/vm	[no test files]
ok  	github.com/hashicorp/packer/builder/vmware/common	5.228s
ok  	github.com/hashicorp/packer/builder/vmware/iso	0.104s
?   	github.com/hashicorp/packer/builder/vmware/version	[no test files]
ok  	github.com/hashicorp/packer/builder/vmware/vmx	0.055s
ok  	github.com/hashicorp/packer/builder/vsphere/clone	0.072s
ok  	github.com/hashicorp/packer/builder/vsphere/common	0.037s
?   	github.com/hashicorp/packer/builder/vsphere/common/testing	[no test files]
ok  	github.com/hashicorp/packer/builder/vsphere/driver	0.443s
?   	github.com/hashicorp/packer/builder/vsphere/examples/driver	[no test files]
ok  	github.com/hashicorp/packer/builder/vsphere/iso	0.063s
?   	github.com/hashicorp/packer/builder/vsphere/version	[no test files]
ok  	github.com/hashicorp/packer/builder/yandex	0.098s
?   	github.com/hashicorp/packer/builder/yandex/version	[no test files]
?   	github.com/hashicorp/packer/cmd/generate-fixer-deprecations	[no test files]
?   	github.com/hashicorp/packer/cmd/mapstructure-to-hcl2	[no test files]
?   	github.com/hashicorp/packer/cmd/snippet-extractor	[no test files]
?   	github.com/hashicorp/packer/cmd/ssh-keygen	[no test files]
?   	github.com/hashicorp/packer/cmd/struct-markdown	[no test files]
ok  	github.com/hashicorp/packer/command	3.717s
?   	github.com/hashicorp/packer/command/enumflag	[no test files]
ok  	github.com/hashicorp/packer/command/flag-kv	0.019s
ok  	github.com/hashicorp/packer/command/flag-slice	0.018s
ok  	github.com/hashicorp/packer/fix	0.026s
ok  	github.com/hashicorp/packer/hcl2template	0.281s
?   	github.com/hashicorp/packer/hcl2template/addrs	[no test files]
ok  	github.com/hashicorp/packer/hcl2template/function	0.028s
?   	github.com/hashicorp/packer/hcl2template/internal	[no test files]
?   	github.com/hashicorp/packer/hcl2template/repl	[no test files]
ok  	github.com/hashicorp/packer/hcl2template/shim	0.019s
ok  	github.com/hashicorp/packer/helper/builder/testing	0.027s
ok  	github.com/hashicorp/packer/helper/communicator	0.034s
ok  	github.com/hashicorp/packer/helper/communicator/ssh	4.204s
ok  	github.com/hashicorp/packer/helper/communicator/sshkey	2.744s
?   	github.com/hashicorp/packer/helper/tests	[no test files]
?   	github.com/hashicorp/packer/helper/tests/acc	[no test files]
?   	github.com/hashicorp/packer/helper/wrappedreadline	[no test files]
?   	github.com/hashicorp/packer/helper/wrappedstreams	[no test files]
ok  	github.com/hashicorp/packer/packer	0.221s
ok  	github.com/hashicorp/packer/packer/plugin	0.417s
ok  	github.com/hashicorp/packer/packer/rpc	0.059s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/adapter	0.063s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/bootcommand	2.778s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/chroot	0.038s
?   	github.com/hashicorp/packer/packer-plugin-sdk/common	[no test files]
?   	github.com/hashicorp/packer/packer-plugin-sdk/filelock	[no test files]
ok  	github.com/hashicorp/packer/packer-plugin-sdk/guestexec	0.029s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/iochan	0.019s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/json	0.017s [no tests to run]
ok  	github.com/hashicorp/packer/packer-plugin-sdk/multistep	0.126s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/multistep/commonsteps	0.136s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/net	1.041s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/packerbuilderdata	0.018s
?   	github.com/hashicorp/packer/packer-plugin-sdk/random	[no test files]
ok  	github.com/hashicorp/packer/packer-plugin-sdk/retry	0.021s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/sdk-internals/communicator/none	0.026s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/sdk-internals/communicator/ssh	0.095s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/sdk-internals/communicator/winrm	0.062s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/shell	0.023s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/shell-local	0.045s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/shell-local/localexec	0.031s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/shutdowncommand	0.032s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/template	0.041s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/template/config	0.033s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/template/interpolate	0.032s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/template/interpolate/aws/secretsmanager	0.030s
?   	github.com/hashicorp/packer/packer-plugin-sdk/tmp	[no test files]
ok  	github.com/hashicorp/packer/packer-plugin-sdk/useragent	0.018s
ok  	github.com/hashicorp/packer/packer-plugin-sdk/uuid	0.019s
?   	github.com/hashicorp/packer/packer-plugin-sdk/version	[no test files]
ok  	github.com/hashicorp/packer/plugin/example	0.040s [no tests to run]
?   	github.com/hashicorp/packer/post-processor/alicloud-import	[no test files]
?   	github.com/hashicorp/packer/post-processor/alicloud-import/version	[no test files]
?   	github.com/hashicorp/packer/post-processor/amazon-import	[no test files]
?   	github.com/hashicorp/packer/post-processor/amazon-import/version	[no test files]
?   	github.com/hashicorp/packer/post-processor/artifice	[no test files]
?   	github.com/hashicorp/packer/post-processor/artifice/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/checksum	0.032s
?   	github.com/hashicorp/packer/post-processor/checksum/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/compress	0.046s
?   	github.com/hashicorp/packer/post-processor/compress/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/digitalocean-import	0.038s
?   	github.com/hashicorp/packer/post-processor/digitalocean-import/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/docker-import	0.036s
?   	github.com/hashicorp/packer/post-processor/docker-import/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/docker-push	0.037s
?   	github.com/hashicorp/packer/post-processor/docker-push/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/docker-save	0.038s
?   	github.com/hashicorp/packer/post-processor/docker-save/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/docker-tag	0.042s
?   	github.com/hashicorp/packer/post-processor/docker-tag/version	[no test files]
?   	github.com/hashicorp/packer/post-processor/exoscale-import	[no test files]
?   	github.com/hashicorp/packer/post-processor/exoscale-import/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/googlecompute-export	0.044s [no tests to run]
?   	github.com/hashicorp/packer/post-processor/googlecompute-export/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/googlecompute-import	0.035s
?   	github.com/hashicorp/packer/post-processor/googlecompute-import/version	[no test files]
?   	github.com/hashicorp/packer/post-processor/manifest	[no test files]
?   	github.com/hashicorp/packer/post-processor/manifest/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/shell-local	0.047s
?   	github.com/hashicorp/packer/post-processor/shell-local/version	[no test files]
?   	github.com/hashicorp/packer/post-processor/ucloud-import	[no test files]
?   	github.com/hashicorp/packer/post-processor/ucloud-import/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/vagrant	0.045s
?   	github.com/hashicorp/packer/post-processor/vagrant/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/vagrant-cloud	0.089s
?   	github.com/hashicorp/packer/post-processor/vagrant-cloud/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/vsphere	0.038s
?   	github.com/hashicorp/packer/post-processor/vsphere/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/vsphere-template	0.047s
?   	github.com/hashicorp/packer/post-processor/vsphere-template/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/yandex-export	0.055s
?   	github.com/hashicorp/packer/post-processor/yandex-export/version	[no test files]
ok  	github.com/hashicorp/packer/post-processor/yandex-import	0.052s
?   	github.com/hashicorp/packer/post-processor/yandex-import/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/ansible	0.469s
?   	github.com/hashicorp/packer/provisioner/ansible/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/ansible-local	0.055s
?   	github.com/hashicorp/packer/provisioner/ansible-local/version	[no test files]
?   	github.com/hashicorp/packer/provisioner/azure-dtlartifact	[no test files]
?   	github.com/hashicorp/packer/provisioner/azure-dtlartifact/version	[no test files]
?   	github.com/hashicorp/packer/provisioner/breakpoint	[no test files]
?   	github.com/hashicorp/packer/provisioner/breakpoint/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/chef-client	0.056s
?   	github.com/hashicorp/packer/provisioner/chef-client/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/chef-solo	0.045s
?   	github.com/hashicorp/packer/provisioner/chef-solo/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/converge	0.033s
?   	github.com/hashicorp/packer/provisioner/converge/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/file	0.051s
?   	github.com/hashicorp/packer/provisioner/file/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/inspec	0.050s
?   	github.com/hashicorp/packer/provisioner/inspec/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/powershell	2.095s
?   	github.com/hashicorp/packer/provisioner/powershell/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/puppet-masterless	0.049s
?   	github.com/hashicorp/packer/provisioner/puppet-masterless/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/puppet-server	0.043s
?   	github.com/hashicorp/packer/provisioner/puppet-server/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/salt-masterless	0.054s
?   	github.com/hashicorp/packer/provisioner/salt-masterless/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/shell	0.085s
?   	github.com/hashicorp/packer/provisioner/shell/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/shell-local	0.071s
?   	github.com/hashicorp/packer/provisioner/shell-local/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/sleep	0.027s
?   	github.com/hashicorp/packer/provisioner/sleep/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/windows-restart	0.051s
?   	github.com/hashicorp/packer/provisioner/windows-restart/version	[no test files]
ok  	github.com/hashicorp/packer/provisioner/windows-shell	0.039s
?   	github.com/hashicorp/packer/provisioner/windows-shell/version	[no test files]
?   	github.com/hashicorp/packer/scripts	[no test files]
?   	github.com/hashicorp/packer/version	[no test files]
2020-12-03 11:32:34 +00:00
Gareth Rees a05c554d14 Amend commit author for license pass 2020-12-03 10:05:07 +00:00
Megan Marsh 39354f64e5 move helper/communicator dir into packer-plugin-sdk
fix imports; fix website and generated partials
2020-12-02 08:41:32 -08:00
Megan Marsh 0eff73293a fix imports, vendoring, and linting 2020-11-30 14:30:30 -08:00
Megan Marsh c70870cb83 move multierror and multierrorappend into sdk 2020-11-30 14:29:06 -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 7d658149ea update tests and website and generated partials to reflect new package format 2020-11-17 10:36:01 -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
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 70cb4097e1 review comments, add plugin type for a few missing builders 2020-10-21 16:17:32 -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
upodroid f13099edfb rebase the branch 2020-10-01 20:39:06 +01:00
upodroid 2faacfd5d7 add service account impersonation 2020-09-20 15:18:37 +01:00
Chris Chilvers 37544f4d5f Support using WinRM over an IAP tunnel
This avoids the need to expose WinRM ports on the internet and allows
using instances with only an internal private IP address.

When using a WinRM tunnel there is a race condition between the tunnel
connection attempt timing out and packer assuming the connection was
successful. To allow for this, when using WinRM the default success
timeout is increased to 40 seconds.
2020-07-19 01:28:31 +01:00
Megan Marsh 8bb2cb44c0 rename launch timeout to launch wait 2020-07-15 10:24:55 -07:00
Megan Marsh af009c2aa0 make tunnel timeout configurable 2020-07-15 10:17:13 -07:00
Wei Cheng e5606d483d
builder/googlecompute: add support for oslogin (#9339)
* feat: add support for oslogin

Signed-off-by: Wei Cheng <calvinpohwc@gmail.com>

Co-authored-by: Wilken Rivera <dev@wilkenrivera.com>
2020-07-08 06:30:25 -04:00
Wilken Rivera 4462c0b5ab builder/googlecompute: Add WrapStartupScriptFile configuration option
By default the Google builder will wrap any provided startup script file
in order to track its execution via custom metadata. The wrapper script
can add a bit of complexity to the start script file so a new option is
being added `wrap_startup_script`. This option allows a user to disable
the script wrapping and just let GCE do its own thing when executing a
startup script.
2020-07-07 07:08:09 -04:00
Wilken Rivera ce6284f760 docs/builder/google: Add note about boolean values for compute instance metadata
Closes #9393
2020-06-18 09:50:40 -04:00
Megan Marsh 02590f6c44
Merge pull request #9329 from hashicorp/je.website-maintenance-5-29-20
🌷 Website Spring Maintenance
2020-06-03 16:25:23 -07:00
Jeff Escalante f4d7b5f493
fix some stuff 2020-06-02 17:22:40 -04:00
Wei Cheng e0cfb404fb
builder/googlecompute: add support to specify storage location for GCP images (#9326)
* feat: add support to specify storage location for GCP images

Signed-off-by: Wei Cheng <calvinpohwc@gmail.com>
2020-06-02 13:42:33 -04:00
Megan Marsh 9476aa03de
Merge pull request #9105 from hashicorp/google_iap
Implement iap proxy for googlecompute
2020-05-08 12:40:42 -07:00
Megan Marsh c578afc62c working on windows 2020-05-08 10:13:43 -07:00
Megan Marsh 3e1ddad0c7 fix behavior when not using IAP, try to use more sophisticated streaming than buffer.String() 2020-05-08 10:13:42 -07:00
Megan Marsh f67a8ab431 revert unneeded changes to driver roles 2020-05-08 10:13:42 -07:00
Megan Marsh e6073bcec7 implement iap proxy for googlecompute. ssh-only so far 2020-05-08 10:13:42 -07:00
Markus Liljedahl d807e81adb
Changed default disk size for when using googlecompute to match minimum disk sice to the google api. Closes https://github.com/hashicorp/packer/issues/9023 (#9071) 2020-05-08 15:55:38 +02:00
Svetlin Zamfirov b706f02408 Fixing auto-generated code errors 2020-04-16 16:22:42 -07:00
Svetlin Zamfirov d827f4f757 Adding custom shielded images support (GCP)
Adds `enable_secure_boot`, `enable_vtpm` and `enable_integrity_monitoring`
config options to enable building of custom Shielded GCP Compute images.

Feedback on this is more than welcome as this is my first attempt in
contributing to anything Packer related.

Packer is great for us to build custom images on top of GCP but we would
like to enhance that to support Shielded VM images. This will allow us
to have more secure and trusted images which our team(s) will be using.
2020-04-16 16:22:41 -07:00
Jeff Escalante 4afd107eeb
patch source files for extensions changes 2020-04-07 17:50:51 -04:00
Jeff Escalante bcc848a83d
were rendering yay 2020-04-07 17:50:47 -04:00
Megan Marsh 0f9415297f
Merge pull request #8679 from kwibus/gcp-fallback-image
[WIP] fix #8589 gcp public fallback image
2020-04-02 16:49:50 -07:00
Wilken Rivera 7b705545d9
docs: Various doc clean-ups to fix code block formatting and syntax highlighting (#8868) 2020-03-12 15:05:08 +01:00
Rens Sikma 3d8bda31a4 modify docstring 2020-02-20 12:54:35 +01:00
Rens Sikma c8062cc8b3 fix #8679 with source_image_project_id as list 2020-02-06 10:30:04 +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
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 078ba7c8c3 commit old code generation tool
for history
2019-10-15 12:56:42 +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
Megan Marsh 3c14c50aba Allow user to real oauth token from properly configured Vault instance 2019-09-23 13:26:03 -07:00
Adrien Delorme 3fe9d52e3f Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config 2019-09-20 11:15:44 +02:00
Miles Crabill 2bff60bac8
address review feedback 2019-09-16 13:50:43 -07:00
Miles Crabill c11a444f77
googlecompute: fail fast when image name is invalid, replace unusable characters w/ -'s 2019-09-16 10:10:41 -07:00
Adrien Delorme 4cb7c30987 Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config 2019-08-21 16:44:23 +02:00