Kitchen, hideabed

Hi, all –

On a yak-shaving whim, I’ve gone and bundled up chef-server-slice
such that it can be run on Heroku:

http://github.com/matthewtodd/kitchen

If happen to give it a try, I’d love your ideas / feedback / patches.

Interested readers will note that:

  1. Chef::Queue is stubbed out for now. So recipes that need search
    won’t work.

  2. There are some monkey-patches in the project I’m hoping to
    integrate back into Chef proper, most notably support for HTTP basic
    authentication in Chef::REST.

  3. I’ve written my own OpenID::Store::CouchDB, as I had a little
    difficulty with the one on github. (Though, if I understand http://
    lists.opscode.com/sympa/arc/chef-dev/2009-06/msg00001.html, it’s got
    a short lifetime of usefulness anyway.)

On a related note, since CouchDB isn’t available on Heroku, I’ve
written up a small Rails app that looks just enough like CouchDB to
get Chef to work:

http://github.com/matthewtodd/hideabed

Granted, this flies in the face of everything CouchDB stands for, but
it’s also a simple way to get a toy server up and running for my 3
Chef clients. :slight_smile:

Patches welcome,

– Matthew

On Mon, Jul 6, 2009 at 8:18 AM, Matthew Toddmatthew.todd@gmail.com wrote:

Hi, all --

On a yak-shaving whim, I've gone and bundled up chef-server-slice such that
it can be run on Heroku:

http://github.com/matthewtodd/kitchen

That is totally awesome, Matthew!

If happen to give it a try, I'd love your ideas / feedback / patches.

Interested readers will note that:

  1. Chef::Queue is stubbed out for now. So recipes that need search won't
    work.

Makes sense.

  1. There are some monkey-patches in the project I'm hoping to integrate back
    into Chef proper, most notably support for HTTP basic authentication in
    Chef::REST.

Would love it - have you opened feature tickets yet?

  1. I've written my own OpenID::Store::CouchDB, as I had a little difficulty
    with the one on github. (Though, if I understand
    chef-dev - Chef 0.7 and 0.8, it's got
    a short lifetime of usefulness anyway.)

Cool - are you planning on releasing it?

On a related note, since CouchDB isn't available on Heroku, I've written up
a small Rails app that looks just enough like CouchDB to get Chef to work:

http://github.com/matthewtodd/hideabed

Granted, this flies in the face of everything CouchDB stands for, but it's
also a simple way to get a toy server up and running for my 3 Chef clients.
:slight_smile:

This is actually my preferred way that people get "something else" as
the Data store for Chef - so I'm pretty stoked you built it this way.
:slight_smile:

Very cool work - let us know if there is anything we can do to be of assistance!

Adam

--
Opscode, Inc.
Adam Jacob, CTO
T: (206) 508-7449 E: adam@opscode.com

On Jul 7, 2009, at 12:55 AM, Adam Jacob wrote:

On a yak-shaving whim, I've gone and bundled up chef-server-slice
such that
it can be run on Heroku:

http://github.com/matthewtodd/kitchen

Note: I'll be changing the name shortly, due to a collision I hadn't
been aware of. I'll post the updated link here when I do.

  1. There are some monkey-patches in the project I'm hoping to
    integrate back
    into Chef proper, most notably support for HTTP basic
    authentication in
    Chef::REST.

Would love it - have you opened feature tickets yet?

Just now:

Add support for HTTP Basic Authentication to Chef::REST
http://tickets.opscode.com/browse/CHEF-430

ChefServerSlice::OpenidServer#index should treat content_type as a
symbol
http://tickets.opscode.com/browse/CHEF-431

chef-server-slice views should use slice_url instead of url
http://tickets.opscode.com/browse/CHEF-432

  1. I've written my own OpenID::Store::CouchDB, as I had a little
    difficulty
    with the one on github. (Though, if I understand
    chef-dev - Chef 0.7 and 0.8,
    it's got
    a short lifetime of usefulness anyway.)

Cool - are you planning on releasing it?

I had planned to keep it bundled with the Rack app, as it
(expediently) uses Chef::CouchDB and is thus not really a pure
CouchDB store for OpenID.*

Though perhaps it would make sense to create an "openid-store-couchdb-
chef" gem that still provided for "require 'openid-store-couchdb'"?

Please advise!

Cheers, -- Matthew

  • Note that this also means "associations" and "nonces" live in the
    chef database, rather than as top-level databases of their own. So
    the databases created in ChefServerSlice.loaded go unused.

On Jul 7, 2009, at 10:15 AM, Matthew Todd wrote:

On a yak-shaving whim, I've gone and bundled up chef-server-slice
such that
it can be run on Heroku:

Note: I'll be changing the name shortly, due to a collision I
hadn't been aware of. I'll post the updated link here when I do.

Have fun! -- Matthew