Hi everyone,

we have just merged the last patches to branch our stable/liberty release for 
all our openstack-chef cookbooks (starting right now). During the liberty cycle 
and at the mitaka design summit we discussed our goals for the current cycle 
and our next big steps. Since we identified the refactoring and cleanup as one 
of our main goals during this cycle, we are now getting it started. The biggest 
part of this process is written down in this spec:
http://specs.openstack.org/openstack/openstack-chef-specs/specs/liberty/all/refactor_config_templates.html
 
<http://specs.openstack.org/openstack/openstack-chef-specs/specs/liberty/all/refactor_config_templates.html>
In addition to that, we are going to remove all of the unmaintained code from 
all cookbooks. Right now this means we are finally going to drop Suse support, 
since there was no contribution during the last 2 cycles to maintain the 
support and we agreed to not keep unmaintained code during the refactoring and 
cleanup process (if there is anybody out there who wants to keep this code, 
please step up and maintain it, we are happy to support you). Most of the other 
specific attributes (e.g. for vmware, ceph or docker) support will be moved 
from the basic service cookbooks to more specialised and opinionated wrapper 
cookbooks or recipes. Although we will drop a lot of code and feature support 
(switch case scenarios) initially in our basic service cookbooks, it should be 
very easy to add this support in wrapper cookbooks after that. We think that 
moving to a modular cookbook style with generic defaults is the best way of 
keeping the cookbooks maintain- and wrapable. Since these patches need to be 
finished in all cookbooks before they will work again, we agreed on the 
following steps for the patch process:
1) remove all unneeded/default attributes from the attributes file and template
2) move all specific attributes (e.g. vmware, ceph or docker) either to 
documentation or a specific recipe
3) cleanup the rest of the attributes by replacing the template with the new 
template logic (refactor_config_templates spec) and adapt the recipe where the 
template ressource is called
4) adapt the specs (unit tests) to work again
5) wait for the other cookbooks to get finished with the same steps to make 
proper integration testing possible again
(see also 
http://eavesdrop.openstack.org/meetings/openstack_chef/2015/openstack_chef.2015-11-09-16.01.log.html
 
<http://eavesdrop.openstack.org/meetings/openstack_chef/2015/openstack_chef.2015-11-09-16.01.log.html>)
As soon as we hit step 5 with all cookbooks, we will make additional small 
changes to get our integration testing working again and merge all of the 
changes as soon as this happens. This means that the biggest part of the 
cleanup and refactoring will happen in one commit to achieve a working set of 
cookbooks for integration testing (one commit but at least 5 patchsets to make 
it a little more reviewable). After this big patch, we will continue the 
refactoring process in the usual small steps before releasing a stable branch 
again. The current target for the next release is refactored_stable/liberty 
working at least on ubuntu14.04 and centos7 . We will not include support for 
distributions without at least one active contributor maintaining it after our 
initial cleanup step (might be added lateron). If you think there should be 
support for more distributions initially, please step up and we will try to 
support you as good as possible.

Cheers,
Jan 

----------------------------
irc: jklare
(openstack-chef PTL)
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to