summaryrefslogtreecommitdiff
path: root/openstackclient
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-11-10 18:10:26 +0000
committerGerrit Code Review <review@openstack.org>2016-11-10 18:10:27 +0000
commit85f2afdad0de9cf101b727e63d5364b184abeef9 (patch)
treeb88cb1f124be80023c6890d365e842f9b5b5c2d0 /openstackclient
parent518fbf03970ac784c894bf1ab0d1bf56552d7b7a (diff)
parentc99ec284db181c7f9c72ce1163ba1ea45fe369d0 (diff)
downloadpython-openstackclient-85f2afdad0de9cf101b727e63d5364b184abeef9.tar.gz
Merge "Add description field port create & port set"
Diffstat (limited to 'openstackclient')
-rw-r--r--openstackclient/network/v2/port.py87
-rw-r--r--openstackclient/tests/unit/network/v2/fakes.py1
-rw-r--r--openstackclient/tests/unit/network/v2/test_port.py8
3 files changed, 56 insertions, 40 deletions
diff --git a/openstackclient/network/v2/port.py b/openstackclient/network/v2/port.py
index 8916fd73..b0d41d2b 100644
--- a/openstackclient/network/v2/port.py
+++ b/openstackclient/network/v2/port.py
@@ -109,6 +109,8 @@ def _get_attrs(client_manager, parsed_args):
'The --host-id option is deprecated, '
'please use --host instead.'
))
+ if parsed_args.description is not None:
+ attrs['description'] = parsed_args.description
if parsed_args.fixed_ip is not None:
attrs['fixed_ips'] = parsed_args.fixed_ip
if parsed_args.device:
@@ -180,46 +182,51 @@ def _prepare_fixed_ips(client_manager, parsed_args):
def _add_updatable_args(parser):
- # NOTE(dtroyer): --device-id is deprecated in Mar 2016. Do not
- # remove before 3.x release or Mar 2017.
- device_group = parser.add_mutually_exclusive_group()
- device_group.add_argument(
- '--device',
- metavar='<device-id>',
- help=_("Port device ID")
- )
- device_group.add_argument(
- '--device-id',
- metavar='<device-id>',
- help=argparse.SUPPRESS,
- )
- parser.add_argument(
- '--device-owner',
- metavar='<device-owner>',
- help=_("Device owner of this port. This is the entity that uses "
- "the port (for example, network:dhcp).")
- )
- parser.add_argument(
- '--vnic-type',
- metavar='<vnic-type>',
- choices=['direct', 'direct-physical', 'macvtap',
- 'normal', 'baremetal'],
- help=_("VNIC type for this port (direct | direct-physical | "
- "macvtap | normal | baremetal, default: normal)")
- )
- # NOTE(dtroyer): --host-id is deprecated in Mar 2016. Do not
- # remove before 3.x release or Mar 2017.
- host_group = parser.add_mutually_exclusive_group()
- host_group.add_argument(
- '--host',
- metavar='<host-id>',
- help=_("Allocate port on host <host-id> (ID only)")
- )
- host_group.add_argument(
- '--host-id',
- metavar='<host-id>',
- help=argparse.SUPPRESS,
- )
+ parser.add_argument(
+ '--description',
+ metavar='<description>',
+ help=_("Description of this port")
+ )
+ # NOTE(dtroyer): --device-id is deprecated in Mar 2016. Do not
+ # remove before 3.x release or Mar 2017.
+ device_group = parser.add_mutually_exclusive_group()
+ device_group.add_argument(
+ '--device',
+ metavar='<device-id>',
+ help=_("Port device ID")
+ )
+ device_group.add_argument(
+ '--device-id',
+ metavar='<device-id>',
+ help=argparse.SUPPRESS,
+ )
+ parser.add_argument(
+ '--device-owner',
+ metavar='<device-owner>',
+ help=_("Device owner of this port. This is the entity that uses "
+ "the port (for example, network:dhcp).")
+ )
+ parser.add_argument(
+ '--vnic-type',
+ metavar='<vnic-type>',
+ choices=['direct', 'direct-physical', 'macvtap',
+ 'normal', 'baremetal'],
+ help=_("VNIC type for this port (direct | direct-physical | "
+ "macvtap | normal | baremetal, default: normal)")
+ )
+ # NOTE(dtroyer): --host-id is deprecated in Mar 2016. Do not
+ # remove before 3.x release or Mar 2017.
+ host_group = parser.add_mutually_exclusive_group()
+ host_group.add_argument(
+ '--host',
+ metavar='<host-id>',
+ help=_("Allocate port on host <host-id> (ID only)")
+ )
+ host_group.add_argument(
+ '--host-id',
+ metavar='<host-id>',
+ help=argparse.SUPPRESS,
+ )
class CreatePort(command.ShowOne):
diff --git a/openstackclient/tests/unit/network/v2/fakes.py b/openstackclient/tests/unit/network/v2/fakes.py
index 48cc181b..e96abc09 100644
--- a/openstackclient/tests/unit/network/v2/fakes.py
+++ b/openstackclient/tests/unit/network/v2/fakes.py
@@ -430,6 +430,7 @@ class FakePort(object):
'binding:vif_details': {},
'binding:vif_type': 'ovs',
'binding:vnic_type': 'normal',
+ 'description': 'description-' + uuid.uuid4().hex,
'device_id': 'device-id-' + uuid.uuid4().hex,
'device_owner': 'compute:nova',
'dns_assignment': [{}],
diff --git a/openstackclient/tests/unit/network/v2/test_port.py b/openstackclient/tests/unit/network/v2/test_port.py
index 4f6eac53..a7a4bf46 100644
--- a/openstackclient/tests/unit/network/v2/test_port.py
+++ b/openstackclient/tests/unit/network/v2/test_port.py
@@ -41,6 +41,7 @@ class TestPort(network_fakes.TestNetworkV2):
'binding_vif_details',
'binding_vif_type',
'binding_vnic_type',
+ 'description',
'device_id',
'device_owner',
'dns_assignment',
@@ -65,6 +66,7 @@ class TestPort(network_fakes.TestNetworkV2):
utils.format_dict(fake_port.binding_vif_details),
fake_port.binding_vif_type,
fake_port.binding_vnic_type,
+ fake_port.description,
fake_port.device_id,
fake_port.device_owner,
utils.format_list_of_dicts(fake_port.dns_assignment),
@@ -130,6 +132,7 @@ class TestCreatePort(TestPort):
'--mac-address', 'aa:aa:aa:aa:aa:aa',
'--fixed-ip', 'subnet=%s,ip-address=10.0.0.2'
% self.fake_subnet.id,
+ '--description', self._port.description,
'--device', 'deviceid',
'--device-owner', 'fakeowner',
'--disable',
@@ -146,6 +149,7 @@ class TestCreatePort(TestPort):
'fixed_ip',
[{'subnet': self.fake_subnet.id, 'ip-address': '10.0.0.2'}]
),
+ ('description', self._port.description),
('device', 'deviceid'),
('device_owner', 'fakeowner'),
('disable', True),
@@ -163,6 +167,7 @@ class TestCreatePort(TestPort):
'mac_address': 'aa:aa:aa:aa:aa:aa',
'fixed_ips': [{'subnet_id': self.fake_subnet.id,
'ip_address': '10.0.0.2'}],
+ 'description': self._port.description,
'device_id': 'deviceid',
'device_owner': 'fakeowner',
'admin_state_up': False,
@@ -715,6 +720,7 @@ class TestSetPort(TestPort):
def test_set_that(self):
arglist = [
+ '--description', 'newDescription',
'--enable',
'--vnic-type', 'macvtap',
'--binding-profile', 'foo=bar',
@@ -723,6 +729,7 @@ class TestSetPort(TestPort):
self._port.name,
]
verifylist = [
+ ('description', 'newDescription'),
('enable', True),
('vnic_type', 'macvtap'),
('binding_profile', {'foo': 'bar'}),
@@ -739,6 +746,7 @@ class TestSetPort(TestPort):
'binding:vnic_type': 'macvtap',
'binding:profile': {'foo': 'bar'},
'binding:host_id': 'binding-host-id-xxxx',
+ 'description': 'newDescription',
'name': 'newName',
}
self.network.update_port.assert_called_once_with(self._port, **attrs)