Packer: 1.3.4 regression: 'only', 'except' ignored for post-processors

Created on 6 Feb 2019  ·  11Comments  ·  Source: hashicorp/packer

Packer version: 1.3.4
Host platform: Linux x64
Gist with example template: https://gist.github.com/rhencke/79405e32b709d1ba6e0e53d5bdd2fc77

Consider the template in the above gist. When run with packer build packer.json, it should tag the Docker image as 'example/repo'.

In Packer 1.3.3, when run with packer build packer.json, a tag is created as expected.

In Packer 1.3.4, when run with packer build packer.json, no tag is created.

(This seems to be related to the 'only' feature of the post-processor causing this, as other post-processor types I checked also exhibit this behavior of ignoring 'only' 1.3.4 but not 1.3.3)

duplicate regression

Most helpful comment

Probably is. I'll leave this issue open until we release 1.3.5 so people can find it more easily.

All 11 comments

Probably is. I'll leave this issue open until we release 1.3.5 so people can find it more easily.

@SwampDragons I think this bug, and #7257, are part of a much larger regression I noticed a couple of days ago. I haven't had a chance to do my usual digging, but since I consider it to be pretty important, I wanted to make sure it was on your radar.

Essentially sometime right before 1.3.4 was released, the post processor logic got mucked. Now whenever I try building all of the boxes in a template, the post processors appear to be skipped. However when I build only one specific box, the post processors do execute.

I did a bunch testing, template changes, while trying to diagnose, and didn't take good notes, but I _believe_ post processors got skipped for single box runs when I tested the official 1.3.4 release. Which would make sense, since the #7257 change claims to have fixed that. However, the current version (as of 48 hours ago), still skips post pcoessors for full template builds.

Here's the super short version. If you grab the robox repo, and run:

./robox.sh generic-virtualbox 

It should build all of the box configurations in that template, single file. However it skips all of the post processors, and leaves the leaving virtual guest directory intact. If you care to run a test, Alpine 3.5 will get built first, and it doesn't take very long (~10-15 min).

On the other hand, if you run:

./robox.sh box generic-alpine35-virtualbox

To build the box by itself, the post processor is executed.

Like I said, I haven't had time to fully dig in, and do a full issue write up with the actual packer command syntax, logs, etc, but I believe I saw this happen with multiple builders, but again, I haven't had a chance to confirm, document that.

While troubleshooting I simplified my templates, by removing artifice post processor blocks, beyond that, I think all of the tests I tried only made use of the vagrant and checksum post processors, so I don't know if this effects all post processors or not.

Also, note the robox.sh script automatically includes the -execpt parameter, even if it's empty, when it builds a full template. I haven't confirmed it, but I suspect the config will build properly without that parameter.

Again, just getting this on the radar. Let me know if you need more info.

@azr I'm gonna let you handle this one since you wrote the post-processor stuff for 1.3.4, if you don't mind.

Hey @ladar, thanks for reporting and sorry this broke for you.
I added a test to check with the empty -except param in command/build_test.go and it passed.

Also command/build_test.go seems to successfully cover all the cases you described. But may be I am missing something, could you simplify the issue for me please or may be even better add a test in build_test.go ? Tests are run using this buildfile.

I'll keep digging.

I'm still seeing this bug, when testing against a version of packer I compiled a just few minutes ago using the default branch. When I run my scripts, it sources the required variables, and runs packer using the following command:

packer build -on-error=cleanup -parallel=false -except= generic-virtualbox.json

I've snipped the following log so it shows only the relevant parts of the first three box builds. As you can see the guests shut down, and export to an OVF file, but don't go any further. None of the configured post processors run, and the build directory isn't removed:

[ladar@darla robox]$ ./robox.sh generic-virtualbox
generic-alpine35-virtualbox output will be in this color.
generic-alpine36-virtualbox output will be in this color.
generic-alpine37-virtualbox output will be in this color.
generic-alpine38-virtualbox output will be in this color.
generic-alpine39-virtualbox output will be in this color.
generic-arch-virtualbox output will be in this color.
generic-centos6-virtualbox output will be in this color.
generic-centos7-virtualbox output will be in this color.
generic-debian10-virtualbox output will be in this color.
generic-debian8-virtualbox output will be in this color.
generic-debian9-virtualbox output will be in this color.
generic-dragonflybsd5-virtualbox output will be in this color.
generic-fedora25-virtualbox output will be in this color.
generic-fedora26-virtualbox output will be in this color.
generic-fedora27-virtualbox output will be in this color.
generic-fedora28-virtualbox output will be in this color.
generic-fedora29-virtualbox output will be in this color.
generic-freebsd11-virtualbox output will be in this color.
generic-freebsd12-virtualbox output will be in this color.
generic-gentoo-virtualbox output will be in this color.
generic-hardenedbsd11-virtualbox output will be in this color.
generic-hardenedbsd12-virtualbox output will be in this color.
generic-netbsd8-virtualbox output will be in this color.
generic-openbsd6-virtualbox output will be in this color.
generic-opensuse42-virtualbox output will be in this color.
generic-oracle7-virtualbox output will be in this color.
generic-rhel6-virtualbox output will be in this color.
generic-rhel7-virtualbox output will be in this color.
generic-rhel8-virtualbox output will be in this color.
generic-ubuntu1604-virtualbox output will be in this color.
generic-ubuntu1610-virtualbox output will be in this color.
generic-ubuntu1704-virtualbox output will be in this color.
generic-ubuntu1710-virtualbox output will be in this color.
generic-ubuntu1804-virtualbox output will be in this color.
generic-ubuntu1810-virtualbox output will be in this color.
generic-ubuntu1904-virtualbox output will be in this color.
<snip>
    generic-alpine35-virtualbox: Changing password for root
    generic-alpine35-virtualbox: New password:
    generic-alpine35-virtualbox: Retype password:
    generic-alpine35-virtualbox: passwd: password for root changed by root
    generic-alpine35-virtualbox: + passwd -l root
    generic-alpine35-virtualbox: passwd: password for root changed by root
==> generic-alpine35-virtualbox: Gracefully halting virtual machine...
==> generic-alpine35-virtualbox: Preparing to export machine...
    generic-alpine35-virtualbox: Deleting forwarded port mapping for the communicator (SSH, WinRM, etc) (host port 4172)
==> generic-alpine35-virtualbox: Exporting virtual machine...
    generic-alpine35-virtualbox: Executing: export generic-alpine35-virtualbox --output output/generic-alpine35-virtualbox/generic-alpine35-virtualbox.ovf
==> generic-alpine35-virtualbox: Deregistering and deleting VM...
Build 'generic-alpine35-virtualbox' finished.
<snip>
    generic-alpine36-virtualbox: Changing password for root
    generic-alpine36-virtualbox: New password:
    generic-alpine36-virtualbox: Retype password:
    generic-alpine36-virtualbox: + passwd root
    generic-alpine36-virtualbox: passwd: password for root changed by root
    generic-alpine36-virtualbox: + passwd -l root
    generic-alpine36-virtualbox: passwd: password for root changed by root
==> generic-alpine36-virtualbox: Gracefully halting virtual machine...
==> generic-alpine36-virtualbox: Preparing to export machine...
    generic-alpine36-virtualbox: Deleting forwarded port mapping for the communicator (SSH, WinRM, etc) (host port 3645)
==> generic-alpine36-virtualbox: Exporting virtual machine...
    generic-alpine36-virtualbox: Executing: export generic-alpine36-virtualbox --output output/generic-alpine36-virtualbox/generic-alpine36-virtualbox.ovf
==> generic-alpine36-virtualbox: Deregistering and deleting VM...
Build 'generic-alpine36-virtualbox' finished.
<snip>
    generic-alpine37-virtualbox: Changing password for root
    generic-alpine37-virtualbox: New password:
    generic-alpine37-virtualbox: Retype password:
    generic-alpine37-virtualbox: passwd: password for root changed by root
    generic-alpine37-virtualbox: + passwd -l root
    generic-alpine37-virtualbox: passwd: password for root changed by root
==> generic-alpine37-virtualbox: Gracefully halting virtual machine...
==> generic-alpine37-virtualbox: Preparing to export machine...
    generic-alpine37-virtualbox: Deleting forwarded port mapping for the communicator (SSH, WinRM, etc) (host port 3499)
==> generic-alpine37-virtualbox: Exporting virtual machine...
    generic-alpine37-virtualbox: Executing: export generic-alpine37-virtualbox --output output/generic-alpine37-virtualbox/generic-alpine37-virtualbox.ovf
==> generic-alpine37-virtualbox: Deregistering and deleting VM...
Build 'generic-alpine37-virtualbox' finished.

If I build one of those same boxes by itself, the post-processors run, as expected. In this scenario the following command is used:

packer build -on-error=cleanup -parallel=false -only=generic-alpine35-virtualbox generic-virtualbox.json

And it yields the following output:

[ladar@darla robox]$ ./robox.sh box generic-alpine35-virtualbox
generic-alpine35-virtualbox output will be in this color.
<snip>
    generic-alpine35-virtualbox: Changing password for root
    generic-alpine35-virtualbox: New password:
    generic-alpine35-virtualbox: + LOCKPWD=23888e3f7f3534ad2bb90add6a25e4c9
    generic-alpine35-virtualbox: Retype password:
    generic-alpine35-virtualbox: + printf '23888e3f7f3534ad2bb90add6a25e4c9\n23888e3f7f3534ad2bb90add6a25e4c9\n'
    generic-alpine35-virtualbox: + passwd root
    generic-alpine35-virtualbox: passwd: password for root changed by root
    generic-alpine35-virtualbox: + passwd -l root
    generic-alpine35-virtualbox: passwd: password for root changed by root
==> generic-alpine35-virtualbox: Gracefully halting virtual machine...
==> generic-alpine35-virtualbox: Preparing to export machine...
    generic-alpine35-virtualbox: Deleting forwarded port mapping for the communicator (SSH, WinRM, etc) (host port 2355)
==> generic-alpine35-virtualbox: Exporting virtual machine...
    generic-alpine35-virtualbox: Executing: export generic-alpine35-virtualbox --output output/generic-alpine35-virtualbox/generic-alpine35-virtualbox.ovf
==> generic-alpine35-virtualbox: Deregistering and deleting VM...
==> generic-alpine35-virtualbox: Running post-processor: vagrant
==> generic-alpine35-virtualbox (vagrant): Creating Vagrant box for 'virtualbox' provider
    generic-alpine35-virtualbox (vagrant): Copying from include: tpl/generic/info.json
    generic-alpine35-virtualbox (vagrant): Copying from artifact: output/generic-alpine35-virtualbox/generic-alpine35-virtualbox-disk001.vmdk
    generic-alpine35-virtualbox (vagrant): Copying from artifact: output/generic-alpine35-virtualbox/generic-alpine35-virtualbox.ovf
    generic-alpine35-virtualbox (vagrant): Renaming the OVF to box.ovf...
    generic-alpine35-virtualbox (vagrant): Using custom Vagrantfile: tpl/generic-alpine35.rb
    generic-alpine35-virtualbox (vagrant): Compressing: Vagrantfile
    generic-alpine35-virtualbox (vagrant): Compressing: box.ovf
    generic-alpine35-virtualbox (vagrant): Compressing: generic-alpine35-virtualbox-disk001.vmdk
    generic-alpine35-virtualbox (vagrant): Compressing: info.json
    generic-alpine35-virtualbox (vagrant): Compressing: metadata.json
==> generic-alpine35-virtualbox: Running post-processor: checksum
==> generic-alpine35-virtualbox: Running post-processor: vagrant
==> generic-alpine35-virtualbox (vagrant): Creating Vagrant box for 'virtualbox' provider
    generic-alpine35-virtualbox (vagrant): Copying from include: tpl/roboxes/info.json
    generic-alpine35-virtualbox (vagrant): Copying from artifact: output/generic-alpine35-virtualbox/generic-alpine35-virtualbox-disk001.vmdk
    generic-alpine35-virtualbox (vagrant): Copying from artifact: output/generic-alpine35-virtualbox/generic-alpine35-virtualbox.ovf
    generic-alpine35-virtualbox (vagrant): Renaming the OVF to box.ovf...
    generic-alpine35-virtualbox (vagrant): Using custom Vagrantfile: tpl/roboxes-alpine35.rb
    generic-alpine35-virtualbox (vagrant): Compressing: Vagrantfile
    generic-alpine35-virtualbox (vagrant): Compressing: box.ovf
    generic-alpine35-virtualbox (vagrant): Compressing: generic-alpine35-virtualbox-disk001.vmdk
    generic-alpine35-virtualbox (vagrant): Compressing: info.json
    generic-alpine35-virtualbox (vagrant): Compressing: metadata.json
==> generic-alpine35-virtualbox: Running post-processor: checksum
Build 'generic-alpine35-virtualbox' finished.

==> Builds finished. The artifacts of successful builds are:
--> generic-alpine35-virtualbox: 'virtualbox' provider box: output/generic-alpine35-virtualbox-1.9.2.box
--> generic-alpine35-virtualbox: Created artifact from files: output/generic-alpine35-virtualbox-1.9.2.box, output/generic-alpine35-virtualbox-1.9.2.box.sha256
--> generic-alpine35-virtualbox: 'virtualbox' provider box: output/roboxes-alpine35-virtualbox-1.9.2.box
--> generic-alpine35-virtualbox: Created artifact from files: output/roboxes-alpine35-virtualbox-1.9.2.box, output/roboxes-alpine35-virtualbox-1.9.2.box.sha256

Of some importance, when I examine the process list during each run, I see post processor sub-processes when I build the box by itself, but DO NOT see of those same post processor children when I try to build the entire configuration file:

[ladar@darla vagrant]$ ps -ef | grep pack
ladar    28264 28170  1 15:02 pts/4    00:00:00 packer build -on-error=cleanup -parallel=false -except= generic-virtualbox.json
ladar    28274 28264  1 15:02 pts/4    00:00:00 /usr/local/bin/packer build -on-error=cleanup -parallel=false -except= generic-virtualbox.json
ladar    28287 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28300 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28315 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28328 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28339 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28350 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28363 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28376 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28389 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28402 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28415 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28428 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28441 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28453 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28466 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28479 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28493 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28507 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28518 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28530 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28543 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28555 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28568 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28581 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28594 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28609 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28621 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28634 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28647 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28660 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28672 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28685 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28701 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28714 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28727 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28740 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28753 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28766 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28779 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28791 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28802 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28839 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28855 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28868 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28884 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28896 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28908 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28920 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28933 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28947 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28958 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28971 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    28983 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    28996 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29008 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29025 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29037 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29048 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29063 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29075 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29090 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29102 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29115 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29127 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29140 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29153 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29166 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29179 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29192 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29206 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29217 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29229 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29244 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29257 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29269 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29280 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29294 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29306 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29318 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29331 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29344 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29359 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29371 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29383 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29398 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29410 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29423 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29437 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29449 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29460 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29475 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29487 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29503 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29514 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29526 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29538 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29550 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29564 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29576 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29590 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29605 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29618 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29631 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29643 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29658 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29670 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29685 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29698 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29711 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29724 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29737 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29750 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29766 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29777 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29792 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29806 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29818 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29829 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29844 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29855 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29867 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29878 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29893 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29907 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29920 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29932 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29945 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29963 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    29978 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    29991 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30005 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30017 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    30029 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30041 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30053 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30066 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    30077 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30090 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30102 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30114 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    30129 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30139 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    30152 28274  0 15:02 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell

And when building only one box:

[ladar@darla vagrant]$ ps -ef | grep pack
ladar    31288     1  0 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    31463 31364  0 15:04 pts/4    00:00:00 packer build -on-error=cleanup -parallel=false -only=generic-alpine35-virtualbox generic-virtualbox.json
ladar    31473 31463  0 15:04 pts/4    00:00:00 /usr/local/bin/packer build -on-error=cleanup -parallel=false -only=generic-alpine35-virtualbox generic-virtualbox.json
ladar    31486 31473  1 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-builder-virtualbox-iso
ladar    31498 31473  0 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    31511 31473  0 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    31523 31473  0 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-provisioner-shell
ladar    31536 31473  0 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-post-processor-vagrant
ladar    31549 31473  0 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-post-processor-checksum
ladar    31561 31473  0 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-post-processor-vagrant
ladar    31576 31473  0 15:04 pts/4    00:00:00 /usr/local/bin/packer plugin packer-post-processor-checksum

Tested using this commit:

commit 560b15de00320fc0407dd830199c822e5c1d49dc
Merge: e93eda2 f6be550
Author: Adrien Delorme <[email protected]>
Date:   Tue Feb 19 15:11:51 2019 +0100

    Merge pull request #7326 from hashicorp/allow_to_set_build_settings

    scripts/build.sh: allow to set build settings when building

Using a CentOS 7.6 robot as the host.

@azr same behaviour using libvirt. Let me know if you need more information...

[ladar@darla robox]$ ./robox.sh generic-libvirt
generic-alpine35-libvirt output will be in this color.
generic-alpine36-libvirt output will be in this color.
generic-alpine37-libvirt output will be in this color.
generic-alpine38-libvirt output will be in this color.
generic-alpine39-libvirt output will be in this color.
generic-arch-libvirt output will be in this color.
generic-centos6-libvirt output will be in this color.
generic-centos7-libvirt output will be in this color.
generic-debian10-libvirt output will be in this color.
generic-debian8-libvirt output will be in this color.
generic-debian9-libvirt output will be in this color.
generic-dragonflybsd5-libvirt output will be in this color.
generic-fedora25-libvirt output will be in this color.
generic-fedora26-libvirt output will be in this color.
generic-fedora27-libvirt output will be in this color.
generic-fedora28-libvirt output will be in this color.
generic-fedora29-libvirt output will be in this color.
generic-freebsd11-libvirt output will be in this color.
generic-freebsd12-libvirt output will be in this color.
generic-gentoo-libvirt output will be in this color.
generic-hardenedbsd11-libvirt output will be in this color.
generic-hardenedbsd12-libvirt output will be in this color.
generic-netbsd8-libvirt output will be in this color.
generic-openbsd6-libvirt output will be in this color.
generic-opensuse42-libvirt output will be in this color.
generic-oracle7-libvirt output will be in this color.
generic-rhel6-libvirt output will be in this color.
generic-rhel7-libvirt output will be in this color.
generic-rhel8-libvirt output will be in this color.
generic-ubuntu1604-libvirt output will be in this color.
generic-ubuntu1610-libvirt output will be in this color.
generic-ubuntu1704-libvirt output will be in this color.
generic-ubuntu1710-libvirt output will be in this color.
generic-ubuntu1804-libvirt output will be in this color.
generic-ubuntu1810-libvirt output will be in this color.
generic-ubuntu1904-libvirt output will be in this color.

    generic-alpine35-libvirt: Changing password for root
    generic-alpine35-libvirt: New password:
    generic-alpine35-libvirt: Retype password:
    generic-alpine35-libvirt: passwd: password for root changed by root
    generic-alpine35-libvirt: + passwd -l root
    generic-alpine35-libvirt: passwd: password for root changed by root
==> generic-alpine35-libvirt: Gracefully halting virtual machine...
==> generic-alpine35-libvirt: Converting hard drive...
Build 'generic-alpine35-libvirt' finished.

No box file and like the Virtualbox builder, the directory used to build the guest is still there.

[ladar@darla robox]$ ls output
generic-alpine35-libvirt

Okay thanks @ladar I think #7330 solves your problem, thanks for being very informative ! This helped. Basically a non named post-processor was skipped when passing an empty except option. 🙂 . An my tests didn't cover unnamed post-processors...

Please tell me if that PR solves it for you !!!

@azr I commented directly on the pull request, but based on my cursory test run, the problem is solved.

Closing this since the release is tomorrow.

I'm going to lock this issue because it has been closed for _30 days_ ⏳. This helps our maintainers find and focus on the active issues.

If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

Was this page helpful?
0 / 5 - 0 ratings