Extending Opscode Chef server


#1

Hello everyone,

I am looking to add extra functionality to our Chef server to suit our
needs - things like a different authentication backend, restrictions on
node naming, better activity logging / change notification, perhaps an
integration with version control system, and a bunch of other miscellaneous
requirements. Some of these should be done on the server side rather than
client side to enforce compliance.

I tried searching for any documents on extending Chef server but couldn’t
find any. Is this something that’s never been done before? Can someone
familiar with Chef server architecture point me in the right direction on
where I’d start?

Thanks in advance.


Best regards, Dmitriy V.


#2

On Jul 29, 2013, at 5:40 PM, DV wrote:

Hello everyone,

I am looking to add extra functionality to our Chef server to suit our needs - things like a different authentication backend, restrictions on node naming, better activity logging / change notification, perhaps an integration with version control system, and a bunch of other miscellaneous requirements. Some of these should be done on the server side rather than client side to enforce compliance.

I tried searching for any documents on extending Chef server but couldn’t find any. Is this something that’s never been done before? Can someone familiar with Chef server architecture point me in the right direction on where I’d start?

You will most certainly have to just read the erchef code, this is well outside the realm of things we document. You can try asking for help in #chef as you go, but most of the erchef team doesn’t hang out on IRC.

–Noah


#3

Thanks for your response. I was hoping for some kind of modular area where
I can write a plug-in that hooks into Chef without having to modify Chef,
but I guess there isn’t one. I’ll go see what Chef code is like.

On Mon, Jul 29, 2013 at 5:49 PM, Noah Kantrowitz noah@coderanger.netwrote:

On Jul 29, 2013, at 5:40 PM, DV wrote:

Hello everyone,

I am looking to add extra functionality to our Chef server to suit our
needs - things like a different authentication backend, restrictions on
node naming, better activity logging / change notification, perhaps an
integration with version control system, and a bunch of other miscellaneous
requirements. Some of these should be done on the server side rather than
client side to enforce compliance.

I tried searching for any documents on extending Chef server but
couldn’t find any. Is this something that’s never been done before? Can
someone familiar with Chef server architecture point me in the right
direction on where I’d start?

You will most certainly have to just read the erchef code, this is well
outside the realm of things we document. You can try asking for help in
#chef as you go, but most of the erchef team doesn’t hang out on IRC.

–Noah


Best regards, Dmitriy V.