Reporting: list of nodes with cookbook versions

Hi,

Does chef server has capabilities to generate report of environment status? Was surprised to see it’s not so easy to generate.

I’m looking to get things like list of nodes with the particular cookbook versions, for example:
cookbook version node status
cb1 1.2.4 linux1 clean
cb1 1.2.4 linux5 failed
cb_base 1.0.1 linux2 failed
cb_base 1.0.1 linux4 clean
cb_base 1.0.2 linux5 clean
cb_base 1.0.2 linux6 clean
and so on

It has to be generated in shell since the web-interface is pretty much useless.

I looked at few plugins like lastrun, knife-audit but none is working with versions.

Thanks,
–Roman

I know no direct access from chef server to this, the way we do use is a
report handler to populate a DB and then have an interface giving run
details with cookbook versions.

There's an exemple ont he doc here:

I did adapt an old dashboard named Cuisine (but we don't use it
anymore), it's unclean code and I've not done a correct installation
cookbook. I may update it on github if you wish to have a look at it and
at it's corresponding handler.

Le 2015-02-03 17:03, Roman Naumenko a écrit :

Hi,

Does chef server has capabilities to generate report of environment status? Was surprised to see it's not so easy to generate.

I'm looking to get things like list of nodes with the particular cookbook versions, for example:
cookbook version node status
cb1 1.2.4 linux1 clean

cb1 1.2.4 linux5 failed
cb_base 1.0.1 linux2 failed

cb_base 1.0.1 linux4 clean

cb_base 1.0.2 linux5 clean

cb_base 1.0.2 linux6 clean
and so on

It has to be generated in shell since the web-interface is pretty much useless.

I looked at few plugins like lastrun, knife-audit but none is working with versions.

Thanks,
--Roman

that example can be extend to save the cookbook version info as a node
attribute. and a custom knife plugin can show you the data any way you want.

On Wed, Feb 4, 2015 at 12:08 AM, Tensibai tensibai@iabis.net wrote:

I know no direct access from chef server to this, the way we do use is a
report handler to populate a DB and then have an interface giving run
details with cookbook versions.

There's an exemple ont he doc here:
About Handlers

I did adapt an old dashboard named Cuisine (but we don't use it anymore),
it's unclean code and I've not done a correct installation cookbook. I may
update it on github if you wish to have a look at it and at it's
corresponding handler.

Le 2015-02-03 17:03, Roman Naumenko a écrit :

Hi,

Does chef server has capabilities to generate report of environment
status? Was surprised to see it's not so easy to generate.

I'm looking to get things like list of nodes with the particular cookbook
versions, for example:
cookbook version node status
cb1 1.2.4 linux1 clean
cb1 1.2.4 linux5 failed
cb_base 1.0.1 linux2 failed
cb_base 1.0.1 linux4 clean
cb_base 1.0.2 linux5 clean
cb_base 1.0.2 linux6 clean
and so on

It has to be generated in shell since the web-interface is pretty much
useless.

I looked at few plugins like lastrun, knife-audit but none is working with
versions.

Thanks,
--Roman

To Tensibai point: isn't it what chef server supposed to do?

Ranjib, that's probably the way to do it, but again - why that's missing
in core functionality? Also, it's version reports are useful only in
relation to other information: health status, last run time etc. Is all
this information goes to tags as well?

--Roman

Ranjib Dey wrote on 04-02-15 3:29:

that example can be extend to save the cookbook version info as a node
attribute. and a custom knife plugin can show you the data any way you
want.

On Wed, Feb 4, 2015 at 12:08 AM, Tensibai <tensibai@iabis.net
mailto:tensibai@iabis.net> wrote:

I know no direct access from chef server to this, the way we do
use is a report handler to populate a DB and then have an
interface giving run details with cookbook versions.

There's an exemple ont he doc here:
http://docs.chef.io/handlers.html#cookbook-versions

I did adapt an old dashboard named Cuisine (but we don't use it
anymore), it's unclean code and I've not done a correct
installation cookbook.  I may update it on github if you wish to
have a look at it and at it's corresponding handler.

Le 2015-02-03 17:03, Roman Naumenko a écrit :
Hi,

Does chef server has capabilities to generate report of
environment status? Was surprised to see it's not so easy to
generate.

I'm looking to get things like list of nodes with the particular
cookbook versions, for example:
cookbook     version     node        status
cb1                1.2.4          linux1 clean
cb1                1.2.4 linux5      failed
cb_base       1.0.1          linux2 failed
cb_base       1.0.1          linux4 clean
cb_base       1.0.2          linux5 clean
cb_base       1.0.2 linux6     clean
and so on

It has to be generated in shell since the web-interface is pretty
much useless.

I looked at few plugins like lastrun, knife-audit but none is
working with versions.

Thanks,
--Roman

i dont think chef server should do that, but thats mostly because i dont
need it. To me chef-server as an artifact store. And metadata service , a
decent service discovery mechanism if you can withstand couple of minutes
delay (and in most cases I can).

Things like resource reporting, audits, push jobs etc are already provided
as add on (they are proprietary features though). If theres enough people
who needs it, we can get it done via the RFC process, like any other new
features

cheers
ranjib

On Fri, Feb 6, 2015 at 3:45 PM, Roman Naumenko roman@naumenko.ca wrote:

To Tensibai point: isn't it what chef server supposed to do?

Ranjib, that's probably the way to do it, but again - why that's missing
in core functionality? Also, it's version reports are useful only in
relation to other information: health status, last run time etc. Is all
this information goes to tags as well?

--Roman

Ranjib Dey wrote on 04-02-15 3:29:

that example can be extend to save the cookbook version info as a node
attribute. and a custom knife plugin can show you the data any way you want.

On Wed, Feb 4, 2015 at 12:08 AM, Tensibai tensibai@iabis.net wrote:

I know no direct access from chef server to this, the way we do use is
a report handler to populate a DB and then have an interface giving run
details with cookbook versions.

There's an exemple ont he doc here:
About Handlers

I did adapt an old dashboard named Cuisine (but we don't use it anymore),
it's unclean code and I've not done a correct installation cookbook. I may
update it on github if you wish to have a look at it and at it's
corresponding handler.

Le 2015-02-03 17:03, Roman Naumenko a écrit :

Hi,

Does chef server has capabilities to generate report of environment
status? Was surprised to see it's not so easy to generate.

I'm looking to get things like list of nodes with the particular cookbook
versions, for example:
cookbook version node status
cb1 1.2.4 linux1 clean
cb1 1.2.4 linux5 failed
cb_base 1.0.1 linux2 failed
cb_base 1.0.1 linux4 clean
cb_base 1.0.2 linux5 clean
cb_base 1.0.2 linux6 clean
and so on

It has to be generated in shell since the web-interface is pretty much
useless.

I looked at few plugins like lastrun, knife-audit but none is working
with versions.

Thanks,
--Roman

One minor correction: push jobs is open source and free for use for as
many nodes as you'd like, in the same way the Chef server is, even
though it is currently installed as an add on. It's the one current add
on that isn't a premium feature.

  • Mark Mzyk

Ranjib Dey mailto:dey.ranjib@gmail.com
February 6, 2015 at 6:54 PM
i dont think chef server should do that, but thats mostly because i
dont need it. To me chef-server as an artifact store. And metadata
service , a decent service discovery mechanism if you can withstand
couple of minutes delay (and in most cases I can).

Things like resource reporting, audits, push jobs etc are already
provided as add on (they are proprietary features though). If theres
enough people who needs it, we can get it done via the RFC process,
like any other new features

cheers
ranjib

Roman Naumenko mailto:roman@naumenko.ca
February 6, 2015 at 6:45 PM
To Tensibai point: isn't it what chef server supposed to do?

Ranjib, that's probably the way to do it, but again - why that's
missing in core functionality? Also, it's version reports are useful
only in relation to other information: health status, last run time
etc. Is all this information goes to tags as well?

--Roman

Ranjib Dey wrote on 04-02-15 3:29:

darn, i forgot. last year it was opensourced,
thanks mark for correcting that,

On Fri, Feb 6, 2015 at 8:55 PM, Mark Mzyk mmzyk@chef.io wrote:

One minor correction: push jobs is open source and free for use for as
many nodes as you'd like, in the same way the Chef server is, even though
it is currently installed as an add on. It's the one current add on that
isn't a premium feature.

  • Mark Mzyk

    Ranjib Dey dey.ranjib@gmail.com
    February 6, 2015 at 6:54 PM
    i dont think chef server should do that, but thats mostly because i dont
    need it. To me chef-server as an artifact store. And metadata service , a
    decent service discovery mechanism if you can withstand couple of minutes
    delay (and in most cases I can).

Things like resource reporting, audits, push jobs etc are already provided
as add on (they are proprietary features though). If theres enough people
who needs it, we can get it done via the RFC process, like any other new
features

cheers
ranjib

Roman Naumenko roman@naumenko.ca
February 6, 2015 at 6:45 PM
To Tensibai point: isn't it what chef server supposed to do?

Ranjib, that's probably the way to do it, but again - why that's missing
in core functionality? Also, it's version reports are useful only in
relation to other information: health status, last run time etc. Is all
this information goes to tags as well?

--Roman

Ranjib Dey wrote on 04-02-15 3:29: