** No longer affects: gnocchi

You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.

  Make CONF.set_override with parameter enforce_type=True by default

Status in Aodh:
  In Progress
Status in Ceilometer:
  In Progress
Status in Cinder:
  In Progress
Status in cloudkitty:
  Fix Released
Status in Designate:
  Fix Released
Status in Freezer:
  In Progress
Status in Glance:
Status in glance_store:
  In Progress
Status in heat:
  Fix Released
Status in Ironic:
Status in Karbor:
  Fix Released
Status in OpenStack Identity (keystone):
  Fix Released
Status in kolla:
Status in Magnum:
  In Progress
Status in Manila:
  Fix Released
Status in Murano:
  Fix Released
Status in neutron:
  Won't Fix
Status in OpenStack Compute (nova):
  Fix Released
Status in octavia:
Status in oslo.config:
  In Progress
Status in oslo.messaging:
  Fix Released
Status in Quark: Money Reinvented:
Status in Rally:
  Fix Released
Status in senlin:
Status in tacker:
  In Progress
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.


  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

  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.

To manage notifications about this bug go to:

Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to