This patch proposes the migration of port addition of
Neutron's "router-interface-add" to OSC's "router add port".
Change-Id: I3a8a76d384caa32975f8e77f50f3cf3c3be13786
Closes-Bug: #1546849
Depends-On: I9783bc4ccceae3d361dce52d51483ef2187920a9
Implements: blueprint neutron-client-advanced-router
This patch adds the ability to list all created ports
Change-Id: Ie1a48c203cabc96346a4950f21b83493d58a66a5
Partial-bug: #1519909
Partially-implements: blueprint neutron-client
Objects returned by Network v2 and Compute v2 are different.
When getting columns to display, Network v2 uses obj.keys(),
while Compute v2 uses obj._info.keys(). But both of them could
obtain the keys of the object by _get_columns().
Change-Id: I347815f2d28822a95bd6f57d429b84b7ca96e0ee
Some of the unit tests test run(), but not take_action().
For example, in openstackclient/tests/volume/v1/test_volume.py, there is:
def test_volume_set_size_smaller(self):
......
result = self.cmd.run(parsed_args)
self.assertEqual(0, result)
......
run() is defined in class Command in cliff. We don't need to test it in OSC
unit tests. On the contrary, we should test take_action(), which is
overwritten in each command classes in OSC.
Change-Id: If07e89953d40ac530f08cbb1ec05f5805171364b
Closes-bug: #1553468
After creating a snapshot of a running instance, a print out similar
to server create is expected, but it prints out something like "_info"
which is nothing related to created image. _prep_image_detail method
is added to /compute/v2/server.py to enable the priting, while running
the test properly.
Change-Id: I4b06be959768bcdaafd9aa8df497490958bee649
Closes-Bug:1551586
Nova API validation changes [1] appear to have broken the
'os aggregate create' and 'nova aggregate-create' commands when
an availability zone name is not specified. This patch set updates
the test_aggregate functional test to set the availability zone
name in order to unblock the osc gate while nova investigates
the issue.
[1] https://review.openstack.org/#/c/281143/
Change-Id: I00b497be61c4bc4bc467c66c1e49b2e0636ab841
Related-Bug: #1541691
take_action() in commands inheriting from Command returns nothing.
So we should assert the return is None in the unit tests of these
commands.
Change-Id: Idd961a5fa3db825353700837a559621d17f782c5
Partial-Bug: #1550636
Command "router show" will display router's "tenant_id" as
"project_id". But in the unit test, it checks "tenant_id",
which is incorrect.
This patch fix this problem, and add a _get_columns() helper
function to simplify the code.
Change-Id: I0087ef7dfd0130b6c47222495848c4f2b9804b1b
Refactored the 'os security group set' command to use the SDK
when neutron is enabled, but continue to use the nova client
when nova network is enabled.
This patch set also fixes a compute bug which ignores name
and description when set to an empty value.
Change-Id: I4225179dca4aedf799e1656ec49236bdedc5e9bd
Partial-Bug: #1519511
Implements: blueprint neutron-client
take_action() in commands inheriting from Command returns nothing.
So we should assert the return is None in the unit tests of
these commands.
Change-Id: I237ea772f74fa52af2e9aacd35d4b9cfb225c94c
Partial-Bug: #1550636
This patch only provide network name and subnet setting for
"network create" command.
The other options, such as --project which depends on
identity v2 or v3, will make the unit tests too complicated.
So I prefer to implement them in other patches.
Change-Id: I9ec93f0af813c8fae4170c36e16bbe8f0f53cbb6
Partial-Bug: 1543672
"server image create"
"server rebuild"
"server resize"
Above 3 commands are not covered by unit test.
So add some unit tests.
Meanwhile, fix bug. Now that image name is an optional argument,
we'd better record error messages with positional arguments
instead of optional argument. So, record server name.
Change-Id: I41bc025d4824dc46f63a3213d82e1528bacbbe12
Add a developer reference for options with choices. This patch set
also includes RST doc formatting fixes.
Change-Id: I5fd6a699806edf1d2d95110f0b8a2b8a385028ab
six.moves.urllib already covers the py2 and py3 compatibility issues
of urlparse module, use six.moves.urllib.parse.urlparse is enough.
Change-Id: I785f4f872850e5d770fdcf4c0d3392be3978cc4a
This api doc is clearly copied from v1, we should update it to reflact v2 API.
Added 'shared' param description.
Change-Id: I73d36e3a2a0448c28edab788a9340fd46177f8ef
Fix typo introduced in OSprofiler intergation commit, that
leaded to non-working interactive mode of the CLI client.
Change-Id: If5dfc90dbbe64d4665c3e33e936f0cc674738351
Closes-Bug: 1551160
Modify 'code-block' tag format so that the following python code
could be showed exactly, and reformat the more than 79 chars of lines.
Change-Id: Ic6721e4cc8f4c7a3e4a7c7dbd63d9089180cdc33