Public bug reported:

Example commandd affected: openstack network qos rule type list

Several qos test case are skipped due to this chanmge beahavior because:

(Pdb) p cls.os_tempest.network_client                                           
                                                                               │
*** AttributeError: 'Manager' object has no attribute 'network_client'          
                                                                               │
(Pdb) ll                                                                        
                                                                               │
858  ->     @classmethod                                                        
                                                                               │
859         def get_supported_qos_rule_types(cls):                              
                                                                               │
860             body = cls.client.list_qos_rule_types()                         
                                                                               │
861             return [rule_type['type'] for rule_type in body['rule_types']]  
                                                                               │
(Pdb) cls.client.list_qos_rule_types()                                          
                                                                               │
{'rule_types': []}                                                              
                                                                               │
(Pdb) 

old behavior rule Any:

    policy.DocumentedRuleDefault(
        name='get_rule_type',
        check_str=base.ADMIN,
        scope_types=['project'],
        description='Get available QoS rule types',
        operations=[
            {
                'method': 'GET',
                'path': '/qos/rule-types',
            },
            {
                'method': 'GET',
                'path': '/qos/rule-types/{rule_type}',
            },
        ],
        deprecated_rule=policy.DeprecatedRule(
            name='get_rule_type',
            check_str=neutron_policy.RULE_ANY,
            deprecated_reason=DEPRECATED_REASON,
            deprecated_since=versionutils.deprecated.WALLABY)
    ),

New :

https://github.com/openstack/neutron/commit/f1541f29152a75df4efc5b5d53f426a362286ff6#diff-d0398e566a536eb5f27118bf5[…]621369660a13c502b8ae934b043R99

initially it was done correctly
https://github.com/openstack/neutron/commit/c4618857b0249535eeed28f0c7a0abf5dbdbc9d0#diff-d0398e566a536eb5f27118bf5[…]9e8621369660a13c502b8ae934b043
later it was done for SYSTEM_READER but then we dropped system scope
it should be ROLE:READER I guess to match old behaviour

** Affects: neutron
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/2018585

Title:
  [SRBAC]New policies change the behavior for check rule type

Status in neutron:
  New

Bug description:
  Example commandd affected: openstack network qos rule type list

  Several qos test case are skipped due to this chanmge beahavior
  because:

  (Pdb) p cls.os_tempest.network_client                                         
                                                                                
 │
  *** AttributeError: 'Manager' object has no attribute 'network_client'        
                                                                                
 │
  (Pdb) ll                                                                      
                                                                                
 │
  858  ->     @classmethod                                                      
                                                                                
 │
  859         def get_supported_qos_rule_types(cls):                            
                                                                                
 │
  860             body = cls.client.list_qos_rule_types()                       
                                                                                
 │
  861             return [rule_type['type'] for rule_type in 
body['rule_types']]                                                             
                    │
  (Pdb) cls.client.list_qos_rule_types()                                        
                                                                                
 │
  {'rule_types': []}                                                            
                                                                                
 │
  (Pdb) 

  old behavior rule Any:

      policy.DocumentedRuleDefault(
          name='get_rule_type',
          check_str=base.ADMIN,
          scope_types=['project'],
          description='Get available QoS rule types',
          operations=[
              {
                  'method': 'GET',
                  'path': '/qos/rule-types',
              },
              {
                  'method': 'GET',
                  'path': '/qos/rule-types/{rule_type}',
              },
          ],
          deprecated_rule=policy.DeprecatedRule(
              name='get_rule_type',
              check_str=neutron_policy.RULE_ANY,
              deprecated_reason=DEPRECATED_REASON,
              deprecated_since=versionutils.deprecated.WALLABY)
      ),

  New :

  
https://github.com/openstack/neutron/commit/f1541f29152a75df4efc5b5d53f426a362286ff6#diff-d0398e566a536eb5f27118bf5[…]621369660a13c502b8ae934b043R99

  initially it was done correctly
  
https://github.com/openstack/neutron/commit/c4618857b0249535eeed28f0c7a0abf5dbdbc9d0#diff-d0398e566a536eb5f27118bf5[…]9e8621369660a13c502b8ae934b043
  later it was done for SYSTEM_READER but then we dropped system scope
  it should be ROLE:READER I guess to match old behaviour

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/2018585/+subscriptions


-- 
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