475 Commits

Author SHA1 Message Date
Zuul
0ba5dcbc6a Merge "Display private flavors in server list" 2018-06-29 13:57:45 +00:00
Zuul
7b8873dc6b Merge "Compute: Add description support for flavor" 2018-06-28 17:26:03 +00:00
tianhui
4a68ba625c Compute: Add description support for flavor
Co-Authored-By: Fan Zhang <zh.f@outlook.com>
Change-Id: I0dc80bee3ba6ff4ec8cc3fc113b6de7807e0bf2a
Story: 2002196
Task: 21681
2018-06-20 09:11:05 +00:00
He Jie Xu
956eabe967 compute: limit the service's force down command above 2.10
The force down action is added in Microversion 2.11, we should limit
the command only can be executed when the microversion is above 2.10.

Change-Id: I0a87e02e71ff025d30181fc17ebcd003a590f110
2018-06-19 12:59:03 +00:00
Matt Riedemann
da7572a5ff Fix server show for microversion 2.47
Compute API version 2.47 embeds the server's internal
flavor in the response. The original flavor id is not
preserved since it could have changed if the flavor
was deleted and re-created after the server was created,
which was the dreaded Horizon "Edit Flavor" issue.
So the flavor dict in the server response is a dict of
information about the flavor representing the server
"right now" excluding the id. The original flavor name
is shown though along with the ram/disk/vcpu etc
information.

The server list command has a similar issue which
will be fixed in a follow up change.

Change-Id: I1a92999758006d02567c542b6be8902a049899cc
Task: 13864
Story: 1751104
2018-06-08 15:52:31 -04:00
Matt Riedemann
752a2db332 Optimize _prep_server_detail to avoid redundant find_resource
When showing a server or doing a rebuild, we already have
the latest version of the server so _prep_server_detail
getting the server again is an unnecessary performance hit.

ShowServer is pretty obvious here. For RebuildServer, the
compute API actually refreshes the server before returning
it in the response, so the client already gets the latest
when the rebuild call returns.

The only other usage of _prep_server_detail that does require
a refresh is CreateServer since the POST /servers response is
a minimal version of the server object.

This adds a new refresh kwarg, backward compatible by default,
to _prep_server_detail but changes ShowServer and RebuildServer
to no longer refresh.

Change-Id: Ib1c9c424ed1cafc2dfd8be90af8de8a774bdfbf0
2018-06-08 11:46:29 -04:00
Matt Riedemann
56b3467549 Use Server.to_dict() rather than Server._info
There is a to_dict() method on the Server object from
python-novaclient which makes a deepcopy of the internal
Server._info - use this instead of accessing the _info
attribute directly.

Also, while in here, fixed a typo in _prep_server_detail.

Change-Id: I679b4489c815f8a54368ef6b23b9f77e75b4d0bc
2018-06-08 11:13:40 -04:00
Julie Pichon
de9a6fc070 Prevent "server migrate --wait" from hanging
Migrate uses the same mechanism in the backend than Resize and so the
steps and step names are similar. Currently when using the --wait
option with 'migrate', we wait forever because the status won't get to
active until the user performs an action. This makes it return on
verify_resize status just like 'resize' does, so that the user can
perform the next manual step.

Change-Id: Ie1aeac52506bc8801f88fd6a6eb4f6094cf20050
Story: 2001994
Task: 19621
2018-05-09 18:02:14 +01:00
Zuul
5ed81c5a77 Merge "Add --image-property parameter in 'server create'" 2018-03-31 17:20:27 +00:00
Zuul
f21b0a073f Merge "Fix additional output encoding issues" 2018-03-29 04:23:16 +00:00
Chen Hanxiao
447d5d9e34 Add --image-property parameter in 'server create'
add --image-property option, just like --image-with of novaclient did.

Change-Id: Ic1a8976559255529a8785b1b301a0307812433cb
Signed-off-by: Chen Hanxiao <chenhx@certusnet.com.cn>
2018-03-28 16:03:45 +08:00
Zuul
3f99dbac34 Merge "Fix crashing "console log show"" 2018-03-23 16:29:23 +00:00
npraveen35
c615bcd75e Display private flavors in server list
Update the code so that "openstack server list --all"
also displays the names of private flavors.

Change-Id: I4804fcd905eaf67b1ad9b461084eaf0caa820d2f
Closes-Bug: #1742453
2018-03-21 12:23:33 +00:00
Dean Troyer
6df58b6366 Fix additional output encoding issues
This is a followup to https://review.openstack.org/#/c/541609/ that
changes most outstanding direct uses of sys.stdout to use the encoded
stdout set up by cliff.

Change-Id: I07cfc418385fc787d3b7d3c32d39676cf81bb91f
2018-03-20 15:40:23 -05:00
Thomas Goirand
9a17356854 Fix crashing "console log show"
Because of encoding issue, the "openstack console show log" is prone to
a stack dump, as explained in the bug report.

Use the stdout handle that has already been set up by cliff's App class
with a sane default encoding.

Change-Id: I4d8b0df7f16ee0463e638bb11276220e5b92023b
Closes-Bug: 1747862
2018-03-16 11:30:51 -05:00
Dean Troyer
53e7aab7ed Re-implement novaclient bits removed in 10.0
a)

/os-floating-ips was removed in Compute API 2.36 and from novaclient's
Python API in 10.0

Add to api.computev2:
floating_ip_add()
floating_ip_remove()

Convert add floating IP command to nova-net/neutron split:
"server add floating ip"
"server remove floating ip"

b)

/os-hosts was removed in Compute API 2.43 and from novaclient's
Python API in 10.0.

Add to api.computev2:
host_list()
host_set()
host_show()

Convert host commands to use intenal api:
"host list"
"host set"
"host show"

c)

The introduction of the Network-style commands into the server group
broke cliff's autoprogram directive as it executes the get_parser() methods
without fully initializing the Command object.

NOTE: This is really three reviews squashed to get through the gate in one pass.

Depends-on: Id6de87211d6c4ea8fd14aa9203d8d5b17e9e2f04
Change-Id: I5116086f9a9e4b2b31a744bf8f4558c79f0bfe59
2018-03-13 09:10:45 -05:00
David Rabel
e8b56a37cc Corrected spelling mistake
in quotas -> in quotes

Change-Id: I3adb1ccd8f3a9c495f0b9cf688aee5c4c1e63507
2018-01-19 11:18:41 +01:00
Chen Hanxiao
e438c34eaa flavor: clarify --swap description
--swap will add a additional storage device,
which not affect the original swap partition/device.

This patch will clarify this misleading description.

Change-Id: Ic079c069985d39cc969b97876901007a81883f57
Signed-off-by: Chen Hanxiao <chenhx@certusnet.com.cn>
2017-12-28 14:56:13 +08:00
Zuul
8c5f755569 Merge "Send 'changes-since' instead of 'changes_since' query parameter" 2017-12-13 02:57:49 +00:00
Daniel Speichert
116526275d Send 'changes-since' instead of 'changes_since' query parameter
Per API reference, only 'changes-since' is accepted and the variant
with underscore is ignored, making the CLI functionality broken.

[dtroyer] added release note and fixed unit tests.

Change-Id: I0c596531a8af03da17d5ce39d75b12e941403aa5
Closes-Bug: 1732216
2017-12-11 18:07:45 -06:00
Matt Riedemann
d0917cd14b Remove hard-coded policy choices for creating a server group
The hard-coded choices for the server group policy make it impossible
to create a server group with the soft-affinity or
soft-anti-affinity policy rules which were added in compute API
microversion 2.15. This removes the hard-coded choices so that the
policy is restricted on the server side rather than the client side.

Change-Id: Ib3dc39422ac1015872d56ae2fdeddf0f29613494
Closes-Bug: #1732938
2017-11-19 18:45:28 -05:00
Hongbin Lu
809355894f Add RemoveNetwork command to server
This command will detach a server from a network. All server's
neutron ports that belongs to the specified networks will be removed.

Change-Id: I83a064ed62ab00c6f1016900b9cf30f1c15b8382
2017-11-14 00:13:08 +00:00
Zuul
a51ac0a889 Merge "Added AddNetwork command to server" 2017-10-30 04:21:41 +00:00
Jose Castro Leon
fd23ebfbf3 Add missing parameters on openstack server rescue
Change-Id: I27afca9e826378dbcb7feb7528e0c65c528b04b0
Closes-Bug: #1703278
2017-10-27 14:52:04 +00:00
Hongbin Lu
e3ad82164d Added AddNetwork command to server
Currently, if users want to add another NIC to a running instance,
they need to (i) create a neutron port and (ii) add the port to the
server via teh AddPort command. It would be more convenient to have
a single command to achieve the equivalent.

Novaclient already support adding network to an instance via the
interface-attach command. This patch introduces a similar capability
in OSC.

Change-Id: Ia3e39c57ae7ecb96aae1b66adc52c289daccb6ec
2017-10-26 15:34:04 +00:00
Akihiro Motoki
f3bbf52b3c Use flake8-import-order plugin
In reviews we usually check import grouping but it is boring.
By using flake8-import-order plugin, we can avoid this.
It enforces loose checking so it sounds good to use it.
This flake8 plugin is already used in tempest.

Note that flake8-import-order version is pinned to avoid unexpected
breakage of pep8 job.

Setup for unit tests of hacking rules is tweaked to disable
flake8-import-order checks. This extension assumes an actual file exists
and causes hacking rule unit tests.

Change-Id: I12b596820727aeeb379bee16c2bc993dee9eb637
2017-08-17 06:55:00 +00:00
Jenkins
e0d7119c6d Merge "Start using 'cliff.sphinxext'" 2017-07-21 21:46:10 +00:00
Stephen Finucane
9cfa12df2a Start using 'cliff.sphinxext'
'cliff', the command line library used by 'osc_lib' (and, thus,
'python-openstackclient') recently gained a Sphinx extension to
automatically document cliff commands. This allows us to use the
documentation we already have in code instead of duplicating it in the
documentation.

Introduce the use of this, starting with the 'server' commands. This
requires extending the descriptions for two commands to ensure no
information is lost.

Change-Id: If701af8d5a3f78f4b173ceb476dd0c163be4b6ca
2017-07-21 14:48:44 +00:00
Jenkins
57e7d9fdb3 Merge "Now OSC server create check keys in --nic" 2017-07-20 18:43:18 +00:00
Dean Troyer
2689984ba7 Fix column names for server list --no-name-lookup
When --long is not present change the 'Image Name' column to
'Image' and add the 'Flavor' column.  These columns will contain
Names unless --no-name-lookup is specified when they will contain IDs.

Change-Id: I92cfb22136aee32616894e60e9227b4da185da99
2017-07-17 16:51:10 -05:00
Boris Pavlovic
2c57f7bfb2 Add server list -n and --no-name-lookup arguments
Remove translation of Image ID and Flavor ID to Image and Flavor names

In large environments amount of images can be very large (thousands)
Which requires ~hundreds of requests to Glance to get all images
(by default client request only 20 images)
As a result listing even few servers is going to take minutes

This patch allows to avoid these queries by not doing translation,
which allows one to get information about servers in seconds.

Change-Id: I4ae00e6324a41c4c79bf5b620179dae99aea5431
2017-07-10 16:20:45 -07:00
M V P Nitesh
fcafd987b0 Now OSC server create check keys in --nic
Now OSC command to create server will check all the keys in --nic
and throws an exception if the key is invalid key.

Change-Id: I5482da0ae63d6d4298aa614e4d09bb0547da9ec3
Closes-Bug: #1681411
2017-06-23 13:20:43 +05:30
Jenkins
3fabbe9b39 Merge "Create server with security group ID and name" 2017-05-22 23:09:02 +00:00
Rui Chen
45496feee6 Create server with security group ID and name
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
2017-05-22 20:32:01 +00:00
Rui Chen
7a7bb06377 Make block-device-mapping more stable and clear
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
2017-05-17 01:42:12 +00:00
Dean Troyer
bffc98e4e5 Fix server create with nova-net
A Neutron-ism slipped by in server create.

Change-Id: Id590d7f93df2a41d7bd7617459a2af159a6f8071
2017-04-26 18:49:50 -05:00
Jenkins
7977f7df18 Merge "Add --network and --port to server create" 2017-04-25 13:54:46 +00:00
Dean Troyer
b2783dc3c4 Low-level Compute v2 API: network
api.compute.APIv2 network functions.

novaclient 8.0 is now released without support for the previously
deprecated nova-net functions, so include a new low-level REST
implementation of the removed APIs.

Change-Id: If230f128e91cda44461fe93c976cac2aecec2252
2017-04-17 19:45:21 -05:00
Dean Troyer
4289ddd47a Low-level Compute v2 API: security group
api.compute.APIv2 starts with security group functions.

novaclient 8.0 is now released without support for the previously
deprecated nova-net functions, so include a new low-level REST
implementation of the removed APIs.

Change-Id: Id007535f0598226a8202716232313e37fe6247f9
2017-04-11 02:08:04 -05:00
David Rabel
8549071363 Add --network and --port to server create
--nic option is quite unhandy. It is better to have
two seperate options --network and --port to add a
network to a new server.

Change-Id: I523abdc83ca2dd4c5dd3871f8f109c2bf57c2e02
Closes-Bug: #1612898
2017-04-07 16:36:18 +02:00
Cedric Brandily
7f9814860a Enable to specify which fixed-ip to add to a vm.
This change enables to specify which fixed-ip will be added to a vm using:

 openstack server add fixed ip <vm> <network> --fixed-ip-address <ip>

This change uses interface_attach instead of add_fixed_ip[1] which is
less flexible and uses a deprecated API.

[1] https://review.openstack.org/384261

Closes-Bug: #1678140
Change-Id: I7fe4621439ef0d8dca080551ffaeb614c5a91174
2017-04-04 11:15:29 -05:00
Jenkins
c7e7f2b730 Merge "Help/docs cleanups: marker, limit, ip-address metavars" 2017-04-04 12:32:55 +00:00
Dean Troyer
1686dc54f0 Help/docs cleanups: marker, limit, ip-address metavars
Cleanup help strings and docs for clarity and to keep things consistent:
* --limit metavar should be <num-resource> to indicate what is being counted
* --marker metavar should be <resource> or <resource-id> to indicate the
  type of value being specified
* <*-ip-address> metavars should be just <ip-address> as there is no difference
  in format between fixed and floating IPs
* Move all occurances of '(name or ID)' to end of help text

Change-Id: I2c31746ed6ded3845244e03e57d809f8bc0e6b9d
2017-04-04 03:56:19 +00:00
Jenkins
d0f368ba0e Merge "Enable to add/remove port to/from a server" 2017-04-03 20:51:20 +00:00
Jenkins
e2cd971a03 Merge "Fix block-device-mapping when volume_size is empty" 2017-04-03 19:49:42 +00:00
Cedric Brandily
21510ac1a9 Enable to add/remove port to/from a server
This change enables to add/remove a specific port to/from a server using
the new commands:

 openstack server add port <vm> <port>
 openstack server remove port <vm> <port>

Closes-Bug: #1678137
Change-Id: I6ee57df089235ccc1fb9d38316bd484956b1134d
2017-04-03 20:19:40 +02:00
Jens Rosenboom
61cde9c8e8 Fix block-device-mapping when volume_size is empty
The Nova API responds with an validation error when a bdm is submitted
containing an empty volume_size. So instead omit that attribute when it
is empty.

Change-Id: Iba905fca8c440a03e828c20922f3b813bba3fa3a
Closes-Bug: 1677236
2017-04-03 11:26:35 +00:00
Jenkins
67a4b812c6 Merge "doc: Correct Sphinx warnings" 2017-04-01 21:08:43 +00:00
Stephen Finucane
70170656fd doc: Correct Sphinx warnings
- Fix option-describe typos
- Correct option and envvar markup, for commands that are using the
  reference form instead of the definition form or are marking up
  option arguments as options
- Avoid duplicate commands
- Fix some invalid docstrings
- Fix some invalid indentation
- Disable the murano plugin, which has invalid docs
- Correct issues with- and track the network-topology spec
- Include API modules in docs

Change-Id: I3d5ed5e872540fe13f3e4bd5e9335829dc9a5226
2017-03-28 16:41:54 +01:00
yfzhao
535def3447 Remove log translations
Log messages are no longer being translated. This removes all use of
the _LE, _LI, and _LW translation markers to simplify logging and to
avoid confusion with new contributions.

Change-Id: I504de69b2e64250740ebcab432042a16f966fdbe
Closes-Bug: #1674584
2017-03-21 17:23:09 +08:00