Skip to content
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

ChefDK14 w/ chef-solo run fails due to Mixin #113

Open
darkn3rd opened this issue Jun 17, 2018 · 6 comments
Open

ChefDK14 w/ chef-solo run fails due to Mixin #113

darkn3rd opened this issue Jun 17, 2018 · 6 comments

Comments

@darkn3rd
Copy link

SUMMARY

Building Windows2016 fails in current Chef. Recommend jettisoning Chef as seems too cumbersome to maintain, and use something similar to Windows2012 w/ powershell scripts.

STEPS

cd cookbooks/packer-templates
rm Berksfile.lock
berks
berks vendor ../../vendor/cookbooks
cd ../..
packer build \
 -var 'iso_url=/path/to/14393.0.160715-1616.RS1_RELEASE_SERVER_EVAL_X64FRE_EN-US.ISO' \
 -force \
 -only virtualbox-iso \
 vbox-2016.json

RESULT

…
…
==> virtualbox-iso: Provisioning with chef-solo
    virtualbox-iso: Installing Chef...
    virtualbox-iso:
    virtualbox-iso: ModuleType Version    Name                                ExportedCommands
    virtualbox-iso: ---------- -------    ----                                ----------------
    virtualbox-iso: Script     0.0        Omnitruck                           {Get-ProjectMetadata, Install-Project, install}
    virtualbox-iso: Installing chef from C:\Users\vagrant\AppData\Local\Temp\chef-client-14.2.0-1-x64.msi
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso: Creating directory: C:/Windows/Temp/packer-chef-solo
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso:     Directory: C:\Windows\Temp
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso: Mode                LastWriteTime         Length Name
    virtualbox-iso: ----                -------------         ------ ----
    virtualbox-iso: d-----        6/17/2018   8:54 AM                packer-chef-solo
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso: 'skipping chmod 0777 C:/Windows/Temp/packer-chef-solo'
    virtualbox-iso: Creating directory: C:/Windows/Temp/packer-chef-solo/cookbooks-0
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso:     Directory: C:\Windows\Temp\packer-chef-solo
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso: Mode                LastWriteTime         Length Name
    virtualbox-iso: ----                -------------         ------ ----
    virtualbox-iso: d-----        6/17/2018   8:54 AM                cookbooks-0
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso: 'skipping chmod 0777 C:/Windows/Temp/packer-chef-solo/cookbooks-0'
    virtualbox-iso: Creating directory: C:/Windows/Temp/packer-chef-solo/cookbooks-1
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso:     Directory: C:\Windows\Temp\packer-chef-solo
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso: Mode                LastWriteTime         Length Name
    virtualbox-iso: ----                -------------         ------ ----
    virtualbox-iso: d-----        6/17/2018   8:55 AM                cookbooks-1
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso: 'skipping chmod 0777 C:/Windows/Temp/packer-chef-solo/cookbooks-1'
    virtualbox-iso: Creating configuration file 'solo.rb'
    virtualbox-iso: Creating JSON attribute file
    virtualbox-iso: Executing Chef: c:/opscode/chef/bin/chef-solo.bat --no-color -c C:/Windows/Temp/packer-chef-solo/solo.rb -j C:/Windows/Temp/packer-chef-solo/node.json
    virtualbox-iso: Starting Chef Client, version 14.2.0
    virtualbox-iso: resolving cookbooks for run list: ["wsus-client::configure", "packer-templates::install_ps_modules", "packer-templates::vbox_guest_additions", "packer-templates::uninstall_powershell_ise", "packer-templates::delete_pagefile"]
    virtualbox-iso: [2018-06-17T08:57:31+00:00] WARN: Child with name 'packer-templates' found in multiple directories: C:/Windows/Temp/packer-chef-solo/cookbooks-0/packer-templates and C:/Windows/Temp/packer-chef-solo/cookbooks-1/packer-templates
    virtualbox-iso: [2018-06-17T08:57:31+00:00] WARN: Child with name 'packer-templates' found in multiple directories: C:/Windows/Temp/packer-chef-solo/cookbooks-0/packer-templates and C:/Windows/Temp/packer-chef-solo/cookbooks-1/packer-templates
    virtualbox-iso: [2018-06-17T08:57:31+00:00] WARN: Child with name 'packer-templates' found in multiple directories: C:/Windows/Temp/packer-chef-solo/cookbooks-0/packer-templates and C:/Windows/Temp/packer-chef-solo/cookbooks-1/packer-templates
    virtualbox-iso: [2018-06-17T08:57:31+00:00] WARN: Child with name 'packer-templates' found in multiple directories: C:/Windows/Temp/packer-chef-solo/cookbooks-0/packer-templates and C:/Windows/Temp/packer-chef-solo/cookbooks-1/packer-templates
    virtualbox-iso: Synchronizing Cookbooks:
    virtualbox-iso:   - wsus-client (2.0.0)
    virtualbox-iso:   - packer-templates (0.1.0)
    virtualbox-iso:   - windows (4.3.2)
    virtualbox-iso: Installing Cookbook Gems:
    virtualbox-iso: Compiling Cookbooks...
    virtualbox-iso:
    virtualbox-iso: ================================================================================
    virtualbox-iso: Recipe Compile Error in c:/windows/temp/packer-chef-solo/local-mode-cache/cache/cookbooks/windows/libraries/windows_package.rb
    virtualbox-iso: ================================================================================
    virtualbox-iso:
    virtualbox-iso: LoadError
    virtualbox-iso: ---------
    virtualbox-iso: cannot load such file -- chef/mixin/language
    virtualbox-iso:
    virtualbox-iso: System Info:
    virtualbox-iso: ------------
    virtualbox-iso: chef_version=14.2.0
    virtualbox-iso: platform=windows
    virtualbox-iso: platform_version=10.0.14393
    virtualbox-iso: ruby=ruby 2.5.1p57 (2018-03-29 revision 63029) [x64-mingw32]
    virtualbox-iso: program_name=c:/opscode/chef/bin/chef-solo
    virtualbox-iso: executable=c:/opscode/chef/bin/chef-solo
    virtualbox-iso:
    virtualbox-iso:
    virtualbox-iso: Running handlers:
    virtualbox-iso: [2018-06-17T08:57:32+00:00] ERROR: Running exception handlers
    virtualbox-iso: [2018-06-17T08:57:32+00:00] ERROR: Running exception handlers
    virtualbox-iso: Running handlers complete
    virtualbox-iso: [2018-06-17T08:57:32+00:00] ERROR: Exception handlers complete
    virtualbox-iso: [2018-06-17T08:57:32+00:00] ERROR: Exception handlers complete
    virtualbox-iso: Chef Client failed. 0 resources updated in 06 seconds
    virtualbox-iso: [2018-06-17T08:57:32+00:00] FATAL: Stacktrace dumped to c:/windows/temp/packer-chef-solo/local-mode-cache/cache/chef-stacktrace.out
    virtualbox-iso: [2018-06-17T08:57:32+00:00] FATAL: Stacktrace dumped to c:/windows/temp/packer-chef-solo/local-mode-cache/cache/chef-stacktrace.out
    virtualbox-iso: [2018-06-17T08:57:32+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
    virtualbox-iso: [2018-06-17T08:57:32+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
    virtualbox-iso: [2018-06-17T08:57:32+00:00] FATAL: LoadError: cannot load such file -- chef/mixin/language
    virtualbox-iso: [2018-06-17T08:57:32+00:00] FATAL: LoadError: cannot load such file -- chef/mixin/language
==> virtualbox-iso: Deregistering and deleting VM...
==> virtualbox-iso: Deleting output directory...
Build 'virtualbox-iso' errored: Error executing Chef: Non-zero exit status: 1
@darkn3rd
Copy link
Author

The compile error for windows/libraries/windows_package.rb is due to the removal of chef/mixin/language in Chef 14. But the windows_package.rb still relies on this.

Thus it seems that windows_package.rb is no longer compatible with Chef 14, which is what vbox-2016.json attempts to use.

@darkn3rd
Copy link
Author

darkn3rd commented Jun 17, 2018

Upon further research, it seems according to docs from https://github.com/chef-cookbooks/windows, quite a few of the libraries have been updated and included as resources in Chef 14. So I removed the dependency on the windows cookbook, and so far it seems to be working.

Update: Current ChefDK, remove the dependency to windows library, fixes it.

@darkn3rd
Copy link
Author

I created this blog to give a how-to step-by-step and workaround for issue:

@darkn3rd
Copy link
Author

darkn3rd commented Jul 9, 2018

Related. The cookbook shouldn't crash the very least. Wrote up bug in chef-boneyard/windows#564, but they don't seem interested in looking at it.

@lavahot
Copy link

lavahot commented Aug 29, 2018

Are you intending to submit a pull request here for this?

@darkn3rd
Copy link
Author

darkn3rd commented Dec 10, 2018

I will look at it when I get a chance. Not sure if the author is interested, as this project hasn't been touched for 2+ years.

Perhaps one easy fix is to specify the version, otherwise is uses the latest: https://www.packer.io/docs/provisioners/chef-solo.html#version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants