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