Both resource ID and name are supported to identify an object
in openstackclient to make user easy to input, for security group,
nova only support security group name in API when launch a new server,
this patch convert ID to name, then pass name to nova API, and check
the security group exist before creating server.
Change-Id: I1ed4a967fb9de3f91c8945a1ef63f6c7b6b2dfb2
Closes-Bug: #1687814
1.keep the column display order consist in extension list with
and without "--long" option.
2.rework for network extentsion list, openstacksdk return object,
so the logic should be same with other service.
3.add some unit test cases, like: extension list --network --long,
extension list --network --compute, to cover regular use cases.
4.raise exact exception when network extension don't exist, avoid
internal TypeError in "extension show" commands.
Change-Id: I2e23ced80d8da8aa1106b22472db850367b351ce
Closes-Bug: #1689233
The patch fix the following issues:
1. ValueError is raised if input don't contain "=". Sometimes the whole
"server create" command is very complex, it's difficult to find out root
reason directly.
2. Don't support to add block device from snapshot, like:
--block-device-mapping
vdb=0c8ae9d8-cadc-4a23-8337-4254614d277e:snapshot:1, it's supported by
novaclient, but not in osc.
3. If input "vdb=", not add any mapping information, the server will be
launched successfully, not raise error message to let use add
volume/snapshot id, just ignore "--block-device-mapping" option.
4. The help message of "block-device-mapping" option is so simple, need
to add some details about how to add <type>, <delete_on_terminate>
contains.
Change-Id: Ib7f7a654c3dc2a8272545f168b4c4ced230ce39e
Depends-On: Ib37913891bbf7a31b570404c4668c490d5ac859b
Closes-Bug: #1667266
Additional exceptions can be thrown here, ignore additional project
lookup exceptions, but still not all. Server failures are still
interesting, for example.
Change-Id: I9a750ae8e8efa29a36bbd1e34b50b6ace0658260
Regualr expresstions were an interesting diversion, get rid of them
from the functional tests. It did lead to better structure...
Change-Id: I1ff32ad7715ebd88401925ce3f6c412a66e82566
This patch ensures that compute client is initialized only when needed
(--server arg is passed) to openstack port list command. Otherwise it
leads to failures on installations without Nova.
Change-Id: I102683461daa2f7d05dd9d7a3ec72de551c65ca9
Closes-Bug: #1688194
As of Ocata release Nova forces nova-network to run in a cells v1
configuration. Floating IP and network functions currently do not
work in the gate jobs so we have to skip this. It is known to work
tested against a Mitaka nova-net DevStack without cells.
Change-Id: I74f67ac8eb12c7a649ddcbd7979cf745fb35cc0c
The quota list tests have a race in them where occasionally a project is
deleted in another test between the time that quota list gets a list of all
projects and it gets the quota for the projects from the service; the get
quota call fails on the non-existant project.
The quota list functional tests have been substantially re-written to
properly test the exception handling.
Change-Id: I71e6bbb5d46fcea4718a5a870f9a66a2c20fff0f
Nova-net requires a cells v1 configuration to run as of Ocata, but
aggregates and cells v1 are not golfing buddies, so don't let them
meet on the back nine.
Skip the aggregate add/remove host commands in the cells v1 config,
leave the others because they should work, just not be very useful.
And format things consistently.
Change-Id: I131d9f883cb7aca53ad82fb7d5fc6ee1c1e7d923
DevStack master (as of 01May2017) no longer sets up an Identity v2
admin endpoint, so we need to skip those tests going forward and cover
them via a specific leagacy job. This does the detect-and-skip.
Change-Id: Ib9ab32b6bc84ec7d13508094ad6f83995d8d7bc1
This has been sporadically failing in functional tests due to the way
the volume qos spec list command calls get_associations() for each spec.
When tests run in parallel occasionally a spec from another test is present
in the list returned and is deleted before the get_associations() call is
made, causing a NotFound exception. We should just keep going when this
occurs.
* make v1 match v2
* add tests to ensure the exception is being caught and handled
Closes-Bug: #1687083
Change-Id: If2d17c1deb53d293fc2c7f0c527a4e4ef6f69976
* network segment
* network service
* port
* router
* security group
* security group rule
* subnet
* subnet pool
* extension
The extension tests were duplicated to have both compute and network
extensions tests so the nova-net case will still exercise the extension
commands.
Also clean up formatting from previous reviews to make the Network functional
tests look and act consistently.
Change-Id: I286c40572faa31ddcef595cec740da933b2defc1
* address scope
* network agent
* network flavor
* network flavor profile
* network meter
* network meter rule
Also create a new common network functional test class
NetworkTests to house the setting of haz_network in a single place.
The individual test skipping stays in the final classes to re-enforce
the idea that some tests work with both Nova-net and Neutron.
Change-Id: Ie3910231c6fc9e2031438c599afa904f43c874a7
In cleaning up functional tests for nova-net, I discovered some
problems in network create:
* --subnet option is required in network create command
* Switch API to use /os-networks rather than /os-tenant-networks as this
is what we were actually using via novaclient
* Fix functional tests for nova-net
* Normalize some private function names in network/v2/network.py
Change-Id: I426b864406756d58d140575a3a45ee9aee67ce84
We need to skip some functional tests when testing against a nova-net cloud
so add the bits to detect that.
Also JSON-ify the quota functional tests and add the skips for nova-net.
Change-Id: Ibfeeb3f967f34c98e80271a8214cf95dc50407f1
In volume snapshot command, <volume> is the same
as <snapshot-name> when --volume is not specified,
but <volume> cannot be None, so when <snapshot-name>
is not specified (<snapshot-name> is None), a NoneType
error appears.
So make <snapshot-name> no longer optional, it should
be always present.
Change-Id: I3d9f10753a8ef601e70816421c160598e2cc811f
Closes-bug: #1659894
The commands that do not require authentication sometimes still need
to call ClientManager.is_network_endpoint_enabled() to see if Neutron
is available. Optimize the paths a bit to skip auth when it is not
necessary; the upshot is Neutron will be assumed in these cases now.
This gets a LOT cleaner when it appears is a future osc-lib.
Change-Id: Ifaddc57dfa192bde04d0482e2cdcce111313a22a
The lastest ipdb depends on ipython 6.0, but ipython 6.0
only can be installed in python 3.3 and above, see
http://paste.openstack.org/show/607632/ . If we try to
run "tox -e debug" in python2.7, the install error is raised
and block the function. Remove the ipdb installation, it's
not necessary, we can use pdb to replace.
Change-Id: Ib47bb5925b7a5b1d3a319b58fa219c1b57dccb93
Use only one line for mocking network resources like ports
and networks in test_server.py.
Change-Id: I451a504c3afdd365e64d66079516ec6308c206db
Depends-On: I624b1bc557a195bdf8a7c5a32dc0e72a6fa8b075