Hibachi
An object-resource mapper for your Chef server. Enables a Rails app to
manipulate its own Chef node attributes and trigger a chef-client
run on its local machine, as well as any others your client has access
to.
Installation
Add this line to your application's Gemfile:
gem 'hibachi'And then execute:
$ bundleUsage
Generate a new model with the following command:
$ rails generate hibachi:model network_interface name is_static:boolean address netmask gateway --pluralThis will generate the following model and an accompanying test:
class NetworkInterface < Hibachi::Model
pluralized!
field :name, type: String
field :is_static, type: Boolean
field :address, type: String
field :netmask, type: String
field :gateway, type: String
endTo learn more about how to use Hibachi, visit the Wiki
Development
You can run bin/setup to install all dependencies in one go, and
bin/console for an interactive console prompt. We also provide rake
and rspec commands for running regular shell tasks.
Running Tests
To run tests and check against the Ruby style guide:
$ rakeReleasing
To release a new version of this gem, bump the version number in
lib/hibachi/version.rb and run the following command to push a Git tag
to the server. Travis will handle deploying the gem to RubyGems on new
successful tag builds:
$ rake publishContributing
A passing build is required for any contributions made to this project. We also prefer you write tests for any new features you wish to add and use the test framework to highlight how and why bug fixes had to occur.
- Fork it ( https://github.com/tubbo/hibachi/fork )
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request