diff options
| author | Jenkins <jenkins@review.openstack.org> | 2016-03-28 09:16:23 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2016-03-28 09:16:23 +0000 |
| commit | d5596862b1bbd9fa0bcd1aeb8befad7fab4e3d2a (patch) | |
| tree | d393d598b862e9ff422e4ac825f796286889a126 /openstackclient/compute | |
| parent | ef1faf77925f70eb9feeb7bb416f4c9257a16bee (diff) | |
| parent | d90650796217fbb9cdd19297ee6ff59f0e009413 (diff) | |
| download | python-openstackclient-d5596862b1bbd9fa0bcd1aeb8befad7fab4e3d2a.tar.gz | |
Merge "Refactor security group rule create to use SDK"
Diffstat (limited to 'openstackclient/compute')
| -rw-r--r-- | openstackclient/compute/v2/security_group.py | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/openstackclient/compute/v2/security_group.py b/openstackclient/compute/v2/security_group.py index 734bd78e..ca3bf5dc 100644 --- a/openstackclient/compute/v2/security_group.py +++ b/openstackclient/compute/v2/security_group.py @@ -16,15 +16,12 @@ """Compute v2 Security Group action implementations""" -import six - try: from novaclient.v2 import security_group_rules except ImportError: from novaclient.v1_1 import security_group_rules from openstackclient.common import command -from openstackclient.common import parseractions from openstackclient.common import utils @@ -56,68 +53,6 @@ def _xform_security_group_rule(sgroup): return info -class CreateSecurityGroupRule(command.ShowOne): - """Create a new security group rule""" - - def get_parser(self, prog_name): - parser = super(CreateSecurityGroupRule, self).get_parser(prog_name) - parser.add_argument( - 'group', - metavar='<group>', - help='Create rule in this security group (name or ID)', - ) - parser.add_argument( - "--proto", - metavar="<proto>", - default="tcp", - help="IP protocol (icmp, tcp, udp; default: tcp)", - ) - source_group = parser.add_mutually_exclusive_group() - source_group.add_argument( - "--src-ip", - metavar="<ip-address>", - default="0.0.0.0/0", - help="Source IP address block (may use CIDR notation; default: " - "0.0.0.0/0)", - ) - source_group.add_argument( - "--src-group", - metavar="<group>", - help="Source security group (ID only)", - ) - parser.add_argument( - "--dst-port", - metavar="<port-range>", - default=(0, 0), - action=parseractions.RangeAction, - help="Destination port, may be a range: 137:139 (default: 0; " - "only required for proto tcp and udp)", - ) - return parser - - def take_action(self, parsed_args): - compute_client = self.app.client_manager.compute - group = utils.find_resource( - compute_client.security_groups, - parsed_args.group, - ) - if parsed_args.proto.lower() == 'icmp': - from_port, to_port = -1, -1 - else: - from_port, to_port = parsed_args.dst_port - data = compute_client.security_group_rules.create( - group.id, - parsed_args.proto, - from_port, - to_port, - parsed_args.src_ip, - parsed_args.src_group, - ) - - info = _xform_security_group_rule(data._info) - return zip(*sorted(six.iteritems(info))) - - class ListSecurityGroupRule(command.Lister): """List security group rules""" |
