cookbook 'chef-dk', '~> 3.1.0'
The chef-dk cookbook has been deprecated
Author provided reason for deprecation:
The chef-dk cookbook has been deprecated and is no longer being maintained by its authors. Use of the chef-dk cookbook is no longer recommended.
chef-dk (13) Versions 3.1.0 Follow29
Installs/configures the Chef-DK
cookbook 'chef-dk', '~> 3.1.0', :supermarket
knife supermarket install chef-dk
knife supermarket download chef-dk
Chef-DK Cookbook
A cookbook for installing the Chef Development Kit.
Requirements
As of version 0.3.5, Chef-DK packages are available for RHEL/CentOS/etc. 6,
Ubuntu 12.04/13.10, Debian 6/7, OS X 10.8/10.9/10.10, 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 could be used to install the Ubuntu package
onto a 14.04 system. YMMV.
Prior to Chef 11.12.0, the core did not offer the windows_package
resource
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.
Package download information is obtained from Chef's
Omnitruck API using the
Omnijack Gem that is
installed at runtime.
Usage
This cookbook can be implemented either by calling its resource directly, or
adding the recipe that wraps it to your run_list.
Recipes
default
Calls the chef_dk
resource to do a package install.
Attributes
default
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
Resources
chef_dk
Wraps the fetching of the package file from S3 and the package installation
into a single resource:
Syntax:
chef_dk 'my_chef_dk' do
version '1.2.3-4'
global_shell_init true
action :install
end
Actions:
Action | Description |
---|---|
:install |
Default; installs the Chef-DK |
:remove |
Uninstalls the Chef-DK |
Attributes:
Attribute | Default | Description |
---|---|---|
version |
'latest' |
Install a specific version* |
prerelease |
false |
Enable installation of prerelease builds |
nightlies |
false |
Enable installation of nightly builds |
package_url |
nil |
DL from a specific URL* |
global_shell_init |
false |
Set ChefDK as the global default Ruby** |
* A version
and package_url
cannot be used together
** The global Ruby env is set by a bashrc, so not compatible with Windows
Providers
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.
Chef::Provider::ChefDk
A generic provider of all non-platform-specific functionality.
Chef::Provider::ChefDk::Debian
Provides the Ubuntu platform support.
Chef::Provider::ChefDk::MacOsX
Provides the Mac OS X platform support.
Chef::Provider::ChefDk::Rhel
Provides the RHEL and RHELalike platform support.
Chef::Provider::ChefDk::Windows
Provides the Windows platform support.
Contributing
- 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 j@p4nt5.com
Copyright 2014-2015, 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
http://www.apache.org/licenses/LICENSE-2.0
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.
Chef-DK Cookbook CHANGELOG
v3.1.0 (2015-06-03)
- Add support for installing on Fedora, via @joemiller
v3.0.1 (2015-05-13)
- Fix errors in Windows from trying to set up an unsupported shell-init, via @mcallb
- Don't install the Omnijack gem when a
package_url
is provided, via @mcallb
v3.0.0 (2014-11-28)
- Drop support for Chef-DK < 0.2.2
- Fix bug with
package_url
option not being respected
v2.0.3 (2014-10-24)
- Switch release tool from Stove to Emeril
v2.0.2 (2014-10-24)
- Update required version of Omnijack; fix issues with Ruby exceptions being thrown on nodes with Chef installed via system packages
v2.0.1 (2014-09-19)
- Fix failure when installing Chef-DK 0.2.2+ on Mac
- Log a warning message on "yolo" unsupported package installs
v2.0.0 (2014-09-15)
- 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-init
system-wide, via @patrickayoup
v1.0.2 (2014-07-31)
- Fix bug with OS X package reinstalling on every Chef run
v1.0.0 (2014-07-19)
- Update to the latest Chef-DK, v0.2.0-2
- Add Windows support
- Refactor the one monolithic provider into platform-specific ones
v0.3.2 (2014-07-03)
- Fix recipe compilation errors in chef-client/chef-zero, via @someara
v0.3.0 (2014-06-28)
- Allow user to set a custom
package_url
v0.2.0 (2014-06-27)
- Add OS X support
v0.1.0 (2014-06-23)
- Initial release!
v0.0.1 (2014-06-16)
- Development started
Collaborator Number Metric
3.1.0 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
3.1.0 passed this metric
No Binaries Metric
3.1.0 passed this metric
Testing File Metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
3.1.0 failed this metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
3.1.0 passed this metric
No Binaries Metric
3.1.0 passed this metric
Testing File Metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
3.1.0 passed this metric
3.1.0 passed this metric
Testing File Metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
3.1.0 failed this metric
3.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number