Skip to content
Development repository for Chef Cookbook ohai
Ruby
Branch: master
Clone or download
Latest commit 8155bdd Sep 12, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.delivery Test with Delivery Local Mode Mar 1, 2017
.github Add code owners file Jan 10, 2019
libraries Don't reload when using nested plugin directories Jun 8, 2018
recipes Update copyrights Apr 6, 2017
resources Add the load_single_plugin option to the ohai_plugin resource Feb 8, 2019
spec Don't reload when using nested plugin directories Jun 8, 2018
test Add the load_single_plugin option to the ohai_plugin resource Feb 8, 2019
.gitignore Testing updates for new platforms and configs Jun 8, 2018
.travis.yml Test on the latest platforms Aug 29, 2019
Berksfile
CHANGELOG.md Relesae 5.3.0 Aug 29, 2019
CONTRIBUTING.md Use the new contributing doc Sep 8, 2015
Gemfile Switch testing to chef-workstation Aug 29, 2019
LICENSE Update license file Jan 26, 2016
README.md Update README.md Sep 12, 2019
TESTING.md Add testing file Sep 14, 2015
appveyor.yml Switch testing to chef-workstation Aug 29, 2019
chefignore Testing updates for new platforms and configs Jun 8, 2018
kitchen.appveyor.yml Update for Chef 15 license agreement and Chef Workstation Jun 14, 2019
kitchen.dokken.yml Test on the latest platforms Aug 29, 2019
kitchen.yml Test on the latest platforms Aug 29, 2019
metadata.rb Relesae 5.3.0 Aug 29, 2019

README.md

ohai Cookbook

Build Status Build status Cookbook Version

Contains custom resources for adding Ohai hints and installing custom Ohai plugins. Handles path creation as well as the reloading of Ohai so that new data will be available during the same run.

NOTE: The ohai_hint resource shipped in Chef 14.0 (April 2018). When Chef 15.0 is released (April 2019) and Chef 13 goes EOL the ohai_hint resource will be removed from this cookbook.

Requirements

Platforms

  • Debian/Ubuntu
  • RHEL/CentOS/Scientific/Amazon/Oracle
  • openSUSE / SUSE Enterprise Linux
  • FreeBSD
  • Windows

Chef

  • Chef 13+

Cookbooks

  • none

Custom Resources

ohai_hint

Creates Ohai hint files, which are consumed by Ohai plugins in order to determine if they should run or not.

Resource Properties

  • hint_name - The name of hints file and key. Should be string, default is name of resource.
  • content - Values of hints. It will be used as automatic attributes. Should be Hash, default is empty Hash
  • compile_time - Should the resource run at compile time. This defaults to true

Examples

Hint file installed to the default directory:

ohai_hint 'ec2'

Hint file not installed at compile time:

ohai_hint 'ec2' do
  compile_time false
end

Hint file installed with content:

ohai_hint 'raid_present' do
  content Hash[:a, 'test_content']
end

ChefSpec Matchers

You can check for the creation or deletion of ohai hints with chefspec using these custom matches:

  • create_ohai_hint
  • delete_ohai_hint

ohai_plugin

Installs custom Ohai plugins.

Resource Properties

  • plugin_name - The name to give the plugin on the filesystem. Should be string, default is name of resource.
  • path - The path to your custom plugin directory. Defaults to a directory named 'plugins' under the directory 'ohai' in the Chef config dir.
  • source_file - The source file for the plugin in your cookbook if not NAME.rb.
  • cookbook - The cookbook where the source file exists if not the cookbook where the ohai_plugin resource is running from.
  • resource - The resource type for the plugin file. Either :cookbook_file or :template. Defaults to :cookbook_file.
  • variables - Usable only if resource is :template. Defines the template's variables.
  • compile_time - Should the resource run at compile time. This defaults to true.
  • load_single_plugin - Reload all plugins unless this value is set to true. Load only the named plugin.

examples

Simple Ohai plugin installation:

ohai_plugin 'my_custom_plugin'

Installation where the resource doesn't match the filename and you install to a custom plugins dir:

ohai_plugin 'My Ohai Plugin' do
  name 'my_custom_plugin'
  path '/my/custom/path/'
end

Installation using a template:

ohai_plugin 'My Templated Plugin' do
  name 'templated_plugin'
  resource :template
  variables node_type: :web_server
end

ChefSpec Matchers

You can check for the creation or deletion of ohai plugins with chefspec using these custom matches:

  • create_ohai_plugin
  • delete_ohai_plugin

Maintainers

This cookbook is maintained by Chef's Community Cookbook Engineering team. Our goal is to improve cookbook quality and to aid the community in contributing to cookbooks. To learn more about our team, process, and design goals see our team documentation. To learn more about contributing to cookbooks like this see our contributing documentation, or if you have general questions about this cookbook come chat with us in #cookbok-engineering on the Chef Community Slack

License

Copyright: 2011-2016, Chef Software, Inc.

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.
You can’t perform that action at this time.