diff options
| author | Richard Theis <rtheis@us.ibm.com> | 2016-03-17 12:58:44 -0500 |
|---|---|---|
| committer | Richard Theis <rtheis@us.ibm.com> | 2016-03-23 10:05:08 -0500 |
| commit | 2109bce85a40da3e3cbebed1cac661611564ccb2 (patch) | |
| tree | 51ebcd04762d11cc82714ef71f9e91104b0ec923 /openstackclient/network | |
| parent | d90650796217fbb9cdd19297ee6ff59f0e009413 (diff) | |
| download | python-openstackclient-2109bce85a40da3e3cbebed1cac661611564ccb2.tar.gz | |
Support security group name for --src-group
Support security group name for the "--src-group" option on the
"os security group rule create" command.
Change-Id: Ic23d0671dad77566269c9a588644c8d774368733
Closes-Bug: #1540656
Diffstat (limited to 'openstackclient/network')
| -rw-r--r-- | openstackclient/network/v2/security_group_rule.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/openstackclient/network/v2/security_group_rule.py b/openstackclient/network/v2/security_group_rule.py index e0244654..f60995ab 100644 --- a/openstackclient/network/v2/security_group_rule.py +++ b/openstackclient/network/v2/security_group_rule.py @@ -69,7 +69,7 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne): source_group.add_argument( "--src-group", metavar="<group>", - help="Source security group (ID only)", + help="Source security group (name or ID)", ) parser.add_argument( "--dst-port", @@ -103,7 +103,10 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne): attrs['port_range_max'] = parsed_args.dst_port[1] attrs['protocol'] = parsed_args.proto if parsed_args.src_group is not None: - attrs['remote_group_id'] = parsed_args.src_group + attrs['remote_group_id'] = client.find_security_group( + parsed_args.src_group, + ignore_missing=False + ).id else: attrs['remote_ip_prefix'] = parsed_args.src_ip attrs['security_group_id'] = security_group_id @@ -123,6 +126,11 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne): from_port, to_port = -1, -1 else: from_port, to_port = parsed_args.dst_port + if parsed_args.src_group is not None: + parsed_args.src_group = utils.find_resource( + client.security_groups, + parsed_args.src_group, + ).id obj = client.security_group_rules.create( group.id, parsed_args.proto, |
