[chef] Re: Re: Populating attributes from the system.


Chronological Thread 
  • From: Douglas Garstang < >
  • To:
  • Subject: [chef] Re: Re: Populating attributes from the system.
  • Date: Tue, 8 Sep 2015 13:38:15 -0700

Adam,

I guess it feels wrong because I'm writing application specific things into something that's supposed to read to get system info. Our CloudFormation template is writing a file to the local filesystem that my chef cookbook needs to be able to read in order to know what branch, release etc of code to deploy. The custom ohai documentation is pretty slim as well, and it usually takes me a lot longer to get something working with ohai that it would a library.

Using the community ohai cookbook and also seeing this:

==> default: /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/ohai-7.0.4/lib/ohai/plugins/linux/network.rb:49: warning: already initialized constant IPROUTE_INT_REGEX

Ohai just feels less well documented and maintained.

Doug.

On Tue, Sep 8, 2015 at 1:33 PM, Adam Leff < " target="_blank"> > wrote:
Doug-

If the data you're trying to extract is part of your system and not curated during a Chef run, I think Ohai is a perfect solution for this.  The first recipe in your nodes' run_lists could also deploy that Ohai plugin and reload it right away (if it needed to be deployed during that run) such that the rest of your chef-client run would have immediate access to the new plugin's data.

Could you elaborate as to why you do not feel the Ohai plugin approach is the right fit?

~Adam


On Tue, Sep 8, 2015 at 4:29 PM Doug Garstang < " target="_blank"> > wrote:
This problem keeps popping up, and it never feels quite right.

I need to extract some data from the system and populate node attributes from that, so that my cookbook will function.

If I use a library to get the system info, then I have move the setting of the attributes out of attributes/ files into a recipe, and make sure that recipe runs first. Any attributes that are derived from these attributes also have to be put into the same recipe. I then have some attributes being defined in attributes files and some recipes which doesn't feel right.

Writing an ohai plugin that pulls the system info means that the attributes are immediately available as ohai data when chef runs. This also feels like the wrong approach though.

What is the right way to do this?

Doug.





--



Archive powered by MHonArc 2.6.16.

§