-
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
Clean up PR #180 which consolidates the chef provisioners and uses the Omnitruck API to fetch the version #200
Conversation
…for updating the Chef provisioner.
…for updating the Chef provisioner.
…or updating the Chef provisioner.
357a5db so that it only touches the Chef provisioners.
…oner. Revert "Applied changes in .gitignore from daxgames/boxcutter_windows@357a5db for updating the Chef provisioner." This reverts commit b9c1098.
…cmtool.bat to explicitly specify a lowercase OMNITRUCK_MACHINE_ARCH.
|
Was able to build the latest of each (chef, chefdk, chef-workstation) successfully with the eval-win7x64-enterprise.json template, and the latest of chef with the eval-win7x86-enterprise.json template. |
@arizvisa I like the changes, however, they may break anyone trying to use Chef to manage config while building the image unless they have built in the license acceptance into their custom build scripts. The stable Chef channel requires a license acceptance for any Chef component to be used. You need to be below a specific version to avoid the license acceptance. Edit: Maybe setting Edit: Removed backward compatibility issue. I missed line 47 setting |
@arizvisa In spirit it still does what PR #180 was trying to do and I like what you did but Chef changed its licensing model and the newer versions of the Chef products require a license to be accepted upon use or to pre-configured as accepted. You changed the code to default to 'latest' in omlitruck which will require any use of Chef to be pre-approved or any automation using Chef will fail. PR #180 was written before this license model change, while it defaulted to To be backward compatible and not break existing users while considering the license model change I see a few of options: Option 1 - Return to previous functionality and restore backward compatibility.
Option 2 - Enhancement 1
Option 3 - Enhancement 2
|
Ok. Sorry for merging PR #180 then, I didn't know that it would break things because none of the side effects were discussed in any of the issue trackers or in the PR itself. If PR #200 is different from the scope of #180 was trying to solve, then it should be unmerged. I was just intending to push these PRs along because I've had a number of PRs sitting in the queue that have appeared abandoned, and the worst thing as a developer is submitting code to a project and waiting 3 years for it to get merged. |
Nonetheless, if you want to update your PR to fix your concerns, feel free to submit it and I'll merge it in your changes. |
Its not a big deal. I will look at it as in in master. |
I am testing with the following added code:
This will implement 'Option 2 - Enhancement 1' |
This PR is based on PR #180 and supersedes it by splitting up the single-commit into multiple commits for each change to the related files. The core intention of PR #180 is to use Chef's Omnitruck API for determining the CHEF_URL. This allows us to not have to do any work to determine which URL to download Chef's installers from. It also appears that the logic for installing all the Chef-related things is the same, so this PR uses two cases for handling the Chef provisioning in in
scripts/cmtool.bat
.The first branch is
:omnitruck
. This label determines all the components needed to query the Omnitruck API to find the .msi that needs to be installed. After the request is made, the URL is extracted from the metadata that was returned, and then theCHEF_URL
variable is assigned with the result. At this point we can simply branch to the:chef
label.The original branch,
:chef
, was dumbed down to simply download the contents ofCHEF_URL
and then kick off the silent installer. We should never enter this case without executing:omnitruck
first as we need someone to explicitly assign theCHEF_URL
to download+install our target.Once I finish testing this, I'll remove the WIP label.