cookbook 'chef-dk', '= 2.0.1', :supermarket
chef-dk (13) Versions 2.0.1 Follow31
Installs/configures the Chef-DK
cookbook 'chef-dk', '= 2.0.1'
knife supermarket install chef-dk
knife supermarket download chef-dk
A cookbook for installing the Chef Development Kit.
As of version 0.2.1, Chef-DK is available for RHEL/CentOS/etc. 6, Ubuntu 12.04/13.10, OS X 10.8.x/10.9.x, and Windows 7/8/2008/2012. Each of these platforms is supported by this cookbook.
In some cases, platforms that aren't officially supported by Chef-DK may still function. For example, this cookbook can be used to install the OS X package onto 10.10 systems, or the Ubuntu package onto 14.04 systems. YMMV.
Prior to Chef 11.12.0, the core did not offer the
that is used for installation under Windows. This cookbook will not run on
Windows under earlier versions of Chef.
This cookbook consumes the dmg cookbook in order to support OS X installs. That cookbook's limitations, such as the inability to upgrade or uninstall packages, are thus present in the OS X implementation here.
This cookbook can be implemented either by calling its resource directly, or adding the recipe that wraps it to your run_list.
chef_dk resource to do a package install.
Attributes are provided to allow overriding of the package version or URL the default recipe installs:
default['chef_dk']['version'] = 'latest' default['chef_dk']['package_url'] = nil default['chef_dk']['global_shell_init'] = false
Wraps the fetching of the package file from S3 and the package installation into a single resource:
chef_dk 'my_chef_dk' do version '1.2.3-4' global_shell_init true action :install end
||Default; installs the Chef-DK|
||Uninstalls the Chef-DK|
||Install a specific version*|
||Enable installation of prerelease builds|
||Enable installation of nightly builds|
||DL from a specific URL*|
||Set ChefDK as the global default Ruby**|
package_url cannot be used together
** The global Ruby env is set by a bashrc, so not compatible with Windows
This cookbook includes a provider for each of its supported platform families.
By default, the
chef_dk resource will determine a provider to used based on
the platform on which Chef is running.
A generic provider of all non-platform-specific functionality.
Provides the Ubuntu platform support.
Provides the Mac OS X platform support.
Provides the RHEL and RHELalike platform support.
Provides the Windows platform support.
- Fork it
- Create your feature branch (
git checkout -b my-new-feature)
- Run style checks and RSpec tests (
bundle exec rake)
- Commit your changes (
git commit -am 'Add some feature')
- Push to the branch (
git push origin my-new-feature)
- Create new Pull Request
License & Authors
- Author: Jonathan Hartman firstname.lastname@example.org
Copyright 2014, Jonathan Hartman
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
|dmg ~> 2.2|
Chef-DK Cookbook CHANGELOG
- Fix failure when installing Chef-DK 0.22+ on Mac
- Log a warning message on "yolo" unsupported package installs
- Use the Omnijack Ruby Gem for queries to the Omnitruck API
- Support optionally installing prerelease or nightly builds
- Use Chef's Omnitruck metadata service to always know the 'latest' version
- Update to ChefDK 0.2.1-1 as 'latest' version
- Support pre-11.12.0 Chef on all platforms but Windows
- Add ability to set
chef shell-initsystem-wide, via @patrickayoup
- Fix bug with OS X package reinstalling on every Chef run
- Update to the latest Chef-DK, v0.2.0-2
- Add Windows support
- Refactor the one monolithic provider into platform-specific ones
- Fix recipe compilation errors in chef-client/chef-zero, via @someara
- Allow user to set a custom
- Add OS X support
- Initial release!
- Development started
2.0.1 passed this metric
2.0.1 passed this metric