-
Notifications
You must be signed in to change notification settings - Fork 264
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Not using Makefile causes errors due to incorrectly formatted shutdown
comment string and other things
#255
Comments
Yea, I definitely don't use "chef" and set it to My build-system that's based on this is doing the following using the default shutdown w/o issues, so in my testing this should 100% should work without the Makefile because I don't use it at all (it's garbage imo).
with
Nonetheless definitely let me know if you encounter any other inconsistency issues. I'm glad someone else is interested in helping maintain this! :) |
Also please create an issue for those PR #229 sort of affects the reliability issues w/ |
The chef issue probably isn't fixable via code changes. It is a 500 error from their omnitruck site due to being connected to a VPN into an AWS account and the request coming from that AWS account rather than the normal internet facing gateway that all their stuff is probably expecting and being tested for. |
Got it. Thx for your contribution, good sir. |
@tas50 It just occurred to me that the issue I'm seeing with pulling chef might be related to IPv6 being enabled in our environments. I'd run into this in the past and ended up working around it by explicitly disabling IPv6 on the node when we were pulling the bootstrap but in the current case If I want the built box to support IPv6 after it's been created. Is there a bootstrap URL that the scripts could hit to pull down a script to install chef at a specific version or with specific options? |
It appears that the iso_url, iso_checksum, and shutdown_command and several other things (CM variable) are overridden from the templates defaults by the Makefile, meaning there are possibly a lot of partially invalid templates that can't actually be built directly with
packer build --only virtualbox-iso eval-win10x64-enterprise.json
.It is non-intuitive that a user can't just look at the json template, they also have to dive into the Makefile and figure out which environment variables correspond to options, if they even realize that they can do overrides with environment variables. The use of environment variables makes sense if you are always running in a CI pipeline where they can persist between runs and be logged as part of the build, but if you only build a box occasionally or are building something locally it is time lost looking up the differences from the actual json pretty much every time.
The json templates contains the iso_url and iso_checksum and some sane defaults for
headless
andupdate
(but sadly notcm
which is set tochef
which is a great tool but fails to install sometimes) but the fact that theMakefile
overrides any changes a user might make to these core settings in the template json seems bad and has caught me out several times when trying to make changes.It appears the root of issue described in the subject here is that the version of the
shutdown_command
in the templates has a space in the/c
shutdown comment, where as you can see below themake
executed version uses an override to swaps in an underscore to eliminate the space and removes the need for the quotes.While debugging this I also discovered much to my dismay that if not using
make
the default CM option coming from the template files ischef
and due to some infrastructure quirks the omnitruck site throws a 500 error causing builds to fail hard unless explicitly setting-var 'cm=nocm'
when callingpacker build
.Assembled command from
make virtualbox/eval-win10x64-enterprise
Many templates have it using single quotes
A couple have escaped double quotes
Example of error I was getting
The text was updated successfully, but these errors were encountered: