$ 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.
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.
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.
This commit allows user to specify the service account they want
to associate with the virtual machine provisionned by setting
the service_account_email field in the config.
It allows to manage permissions of the instantiated VM properly,
using a service account that can be tied up to IAM roles and
permissions.
Run now takes a context as well as a statebag. We'll assign the context
to the blank identifier to prevent namespace collisions. We'll let the
step authors opt-in to using the context.
`find . -iname "step_*.go" -exec gsed -i'' 's/func \(.*\)Run(/func \1Run(_ context.Context, /' {} \;`
This seemed to be missing from the googlecompute provider. Now if the
ssh_private_key_file is provided, that will be used in place of a temporary
key. I didn't update the googlecompute specific docs under `./website/`, since
this parameter is already documented under the communicators templates page.
- 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
This change adds an `omit_external_ip` configuration property that, when true,
will cause no external IP address to be associated with the Google Compute
Engine VM provisioned to create an image. When using `omit_external_ip`, you
must also set the `use_internal_ip` configuration property to true.
Addresses #3296