If you want to modify the existing cookbooks as they are, option A would be
the best. Especially if you want to add your own recipes to the chef server
over and above what it ships with.

However...

please note that, by default, your Crowbar client nodes will look directly
to the crowbar server for its package repository. So if you want to install
anything else, you'll need to either open up your client nodes to an
external repo, or shove 'em into your admin node.

What I'd recommend over and above all of these options is to dig into the
barclamps and understand how they're written and what to do with them.
Clone an individual barclamp from its github repo and work on it. Then, you
can package up the barclamp and import it into your admin node using the
tools already there. It's a bit more work (and you'll want to set up a
crowbar build node) but the docs are pretty clear, and that'll get you
involved in the overall development effort.


On Tue, Mar 18, 2014 at 4:44 PM, John-Paul Robinson <j...@uab.edu> wrote:

> Hi,
>
> I'd like to more actively control the innards of our Crowbar provisioned
> OpenStack plus Ceph fabric via it's Crowbar-provisioned Chef harness.
>
> My outline for doing this is:
>
> 1) clone the basic chef-repo from github
> 2) connect this git repo with a user account on our crowbar-chef server
> 3) incorporate the cookbooks installed on our chef server into the
> chef-repo
> 4) modify cookbooks and knife upload them to our chef-server to apply
> them to our fabric
>
> Step 3 appears to have several approaches:
>
> a) use knife list and knife cookbook download to copy all the cookbooks
> on the running chef server to the cookbooks dir of the new chef-repo,
> check them into git, work on them, the knife cookbook upload the changed
> cookbooks to have them go into effect.  This makes the repo start from
> the existing state of the chef server.  Improvements to cookbooks are
> connected with upstream versions and
> integration/improvements/"backports" all lie in our hands.
>
> b) use knife list to get cookbook versions and then knife cookbook site
> install <cookbook> <version-in-our-chef-server> to integrate the
> community repo's "pristine" cookbook into our new chef-repo.  This has
> the advantage of the in-build vendor branch model.  However, I've
> noticed that even at the same cookbook version numbers, there are
> differences between the cookbook in our chef-server and the pristine
> upstream cookbook in the community portal.  This suggests we have a
> second stage of knife cookbook download that adds and commits the
> existing crowbar-deployed chef cookbooks on top of the foundation from
> the community portal.  After all this, we can start to upload cookbook
> changes and we have a "connection" with the community portal's releases
> via the vendor branch model of site install for future enhancements.
>
> c) use knife list to get cookbook versions then git clone the individual
> cookbooks of correct version directly from the git hub repos.   This has
> the advantage of full history information from upstream in our chef-repo
> development environment.  It also seems like the easiest (only?) way to
> readily push improvements features upstream.  We'd still need to
> configure some sort of merge-with-existing-crowbar-cookbooks process and
> then have an integration workflow merge upstream and local changes.
>
> Am I on the right track here?
>
> Option c appeals to me from the "dev" perspective but are there
> practical considerations that suggest b or a as better solutions?
>
> Is there already a way to do this that I just haven't read about yet?
>
> And finally, why, when the versions of a cookbook in the
> crowbar-deployed chef-server match an upstream release from the
> community portal, are there differences in the code bases.  Is there a
> way to see where/why these difference originated?
>
> Thanks,
>
> ~jpr
>
> _______________________________________________
> Crowbar mailing list
> Crowbar@dell.com
> https://lists.us.dell.com/mailman/listinfo/crowbar
> For more information: http://crowbar.github.com/
>



-- 
--
Keith Hudgins - Cloud Engineering Solutions
Enstratius - The Enterprise Cloud Management Solution, now a part of Dell
P: 612-746-3091  |  C: 678-512-2959
www.enstratius.com  |  @keithudgins
_______________________________________________
Crowbar mailing list
Crowbar@dell.com
https://lists.us.dell.com/mailman/listinfo/crowbar
For more information: http://crowbar.github.com/

Reply via email to