Coder Social home page Coder Social logo

rx007 / ohai Goto Github PK

View Code? Open in Web Editor NEW

This project forked from chef-boneyard/ohai

0.0 3.0 0.0 174 KB

Development repository for Chef Cookbook ohai

Home Page: https://supermarket.chef.io/cookbooks/ohai

License: Apache License 2.0

Ruby 100.00%

ohai's Introduction

ohai Cookbook

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.

Requirements

Platforms

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

Chef

  • Chef 12+

Cookbooks

  • compat_resource

Custom Resources (Providers)

ohai_hint

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

Resource Attributes

  • 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 Attributes

  • 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.
  • 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.

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

License & Authors

Author: Cookbook Engineering Team ([email protected])

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.

ohai's People

Contributors

tas50 avatar sethvargo avatar cwebberops avatar nathenharvey avatar trevorlauder avatar nukemberg avatar bkw avatar chrisroberts avatar stromweld avatar kamaradclimber avatar meineerde avatar josephholsten avatar priestjim avatar patcox avatar pdf avatar schisamo avatar ketank-new avatar sawanoboly avatar

Watchers

James Cloos avatar Rex Cerbas avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.