$ 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]
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.
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.
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".
The ability to use a service account other than the default was
introduced in #5928. This change adds to that by introducing the
'disable_default_service_account' config option. If true - and
'service_account_email' is not set - Packer will create a GCE VM
with no service account.
- startup scripts don't run for Windows since it is isn't implemented yet.
- startup scripts use instance metadata instead of serial port output to flag when they are done.
- added licenses to Image data type (to check if an Image is a Windows Image).
- added GetImage and GetImageFromProject to googlecompute Drivers.
- changed some of the builder/googlecompute tests to use github.com/stretchr/testify/assert.
Tests:
- (in the Packer directory) `go test .`, `go test ./builder/googlecompute`, and `go test ./post-processor/googlecompute-export`
- manual run of `packer build packer_template.json` with the following files
--packer_template.json--
{
"builders": [
{
"type": "googlecompute",
"account_file": "creds.json",
"project_id": "google.com:packer-test",
"source_image": "debian-8-jessie-v20160629",
"zone": "us-central1-a",
"startup_script_file": "startup_script.sh",
"metadata": {
"startup-script": "#!/bin/sh\necho \"This should be overwritten.\"",
"startup-script-log-dest": "gs://packer-test.google.com.a.appspot.com/startup-script.log"
},
"image_name": "test-packer-modifications",
"ssh_username": "foo"
}
],
"post-processors": [
{
"type": "googlecompute-export",
"paths": [
"gs://packer-test.google.com.a.appspot.com/foo.tar.gz",
"gs://packer-test.google.com.a.appspot.com/bar.tar.gz"
],
"keep_input_artifact": true
}
]
}
--startup_script.sh--
\#!/bin/sh
echo "Hi, my name is Scott. I'm waiting 60 seconds!" >> /scott
sleep 60
echo "I'm done waiting!" >> /scott
Fixes the following vet reports:
builder/googlecompute/step_create_instance_test.go:42: possible formatting directive in Fatal call
builder/googlecompute/step_teardown_instance_test.go:29: possible formatting directive in Fatal call
builder/googlecompute/step_teardown_instance_test.go:39: possible formatting directive in Fatal call