yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #91635
[Bug 1517839] Re: Make CONF.set_override with parameter enforce_type=True by default
Abandoned after re-enabling the Octavia launchpad.
** Changed in: octavia
Status: New => Invalid
** Tags added: auto-abandon
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Identity (keystone).
https://bugs.launchpad.net/bugs/1517839
Title:
Make CONF.set_override with parameter enforce_type=True by default
Status in Cinder:
In Progress
Status in cloudkitty:
Fix Released
Status in Designate:
Fix Released
Status in OpenStack Backup/Restore and DR (Freezer):
Fix Committed
Status in Glance:
Invalid
Status in OpenStack Heat:
Fix Released
Status in Ironic:
Fix Released
Status in Karbor:
Fix Released
Status in OpenStack Identity (keystone):
Fix Released
Status in kolla:
Expired
Status in Magnum:
Fix Released
Status in OpenStack Shared File Systems Service (Manila):
Fix Released
Status in Murano:
Fix Released
Status in neutron:
Won't Fix
Status in OpenStack Compute (nova):
Fix Released
Status in octavia:
Invalid
Status in oslo.config:
Fix Released
Status in oslo.messaging:
Fix Released
Status in Quark: Money Reinvented:
New
Status in Rally:
Fix Released
Status in senlin:
Fix Released
Status in tacker:
Fix Released
Status in tempest:
Fix Released
Status in watcher:
Fix Released
Bug description:
1. Problems :
oslo_config provides method CONF.set_override[1] , developers usually use it to change config option's value in tests. That's convenient .
By default parameter enforce_type=False, it doesn't check any type or value of override. If set enforce_type=True , will check parameter
override's type and value. In production code(running time code), oslo_config always checks config option's value.
In short, we test and run code in different ways. so there's gap: config option with wrong type or invalid value can pass tests when
parameter enforce_type = False in consuming projects. that means some invalid or wrong tests are in our code base.
[1]
https://github.com/openstack/oslo.config/blob/master/oslo_config/cfg.py#L2173
2. Proposal
1) Fix violations when enforce_type=True in each project.
2) Make method CONF.set_override with enforce_type=True by default
in oslo_config
You can find more details and comments in
https://etherpad.openstack.org/p/enforce_type_true_by_default
3. How to find violations in your projects.
1. Run tox -e py27
2. then modify oslo.config with enforce_type=True
cd .tox/py27/lib64/python2.7/site-packages/oslo_config
edit cfg.py with enforce_type=True
- def set_override(self, name, override, group=None, enforce_type=False):
+ def set_override(self, name, override, group=None, enforce_type=True):
3. Run tox -e py27 again, you will find violations.
The current state is that oslo.config make enforce_type as True by default and deprecate this parameter, will remove it in the future, the current work
is that remove usage of enforce_type in consuming projects. We can list the
usage of it in http://codesearch.openstack.org/?q=enforce_type&i=nope&files=&repos=
To manage notifications about this bug go to:
https://bugs.launchpad.net/cinder/+bug/1517839/+subscriptions