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/