$ 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]
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.
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.
- 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
- Startup scripts can be provided through the instance creation metadata field 'startup-script'.
- Script log can be copied to a GCS location by setting the metadata field 'startup-script-log-dest'.
Added Retry method to googlecompute package.
Added GetSerialPortOutput to googlecompute Drivers.
Added StepWaitInstanceStartup (and associated test) which waits for an
instance startup-script to finish.
Changed the instance service account to use the same service account as the one provided in the Packer config template. It was the project default service account.
Tested googlecompute package with 'go test' and also performed builds
with a startup script and without a startup script.
The new flow:
1) Provision the instance
2) Tear down the instance, but keep the boot disk
3) Create an image from the disk
4) Tear down the disk
The step to update gcloud is no longer needed, since gceimagebundle isn't used anymore.
Fixes#1507 and addresses https://github.com/mitchellh/packer/issues/1447#issuecomment-61610235.
Within GCE, images may be shared across projects. Prior to this
commit, there was no way to inform the GCE builder that a source
image belonged to a specific project. This adds an optional
'source_image_project_id' key to the GCE builder config.