diff options
| author | Jenkins <jenkins@review.openstack.org> | 2013-02-28 18:54:00 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2013-02-28 18:54:00 +0000 |
| commit | 5c602f221315bc645f10ff4597cdcd4ddd0d35d2 (patch) | |
| tree | 3209a27936357b4606164890474f553611fb06d1 /nova/api | |
| parent | 2c78edfcc9d6d5bfef3830a7db886b535314e336 (diff) | |
| parent | 0bc531254cb964556cbe8d2fbf1f9321f92aaf93 (diff) | |
Merge "ec2 _format_security_group() accesses db when using quantum_driver"
Diffstat (limited to 'nova/api')
| -rw-r--r-- | nova/api/ec2/cloud.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/nova/api/ec2/cloud.py b/nova/api/ec2/cloud.py index dcbde3428..60b06c233 100644 --- a/nova/api/ec2/cloud.py +++ b/nova/api/ec2/cloud.py @@ -503,9 +503,17 @@ class CloudController(object): r['groups'] = [] r['ipRanges'] = [] if rule['group_id']: - source_group = rule['grantee_group'] - r['groups'] += [{'groupName': source_group['name'], - 'userId': source_group['project_id']}] + if rule.get('grantee_group'): + source_group = rule['grantee_group'] + r['groups'] += [{'groupName': source_group['name'], + 'userId': source_group['project_id']}] + else: + # rule is not always joined with grantee_group + # for example when using quantum driver. + source_group = self.security_group_api.get( + context, id=rule['group_id']) + r['groups'] += [{'groupName': source_group.get('name'), + 'userId': source_group.get('project_id')}] if rule['protocol']: r['ipProtocol'] = rule['protocol'].lower() r['fromPort'] = rule['from_port'] |
