summaryrefslogtreecommitdiff
path: root/openstackclient/compute
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Deprecate openstack server migrate --host option"Zuul2019-06-061-7/+71
|\
| * Deprecate openstack server migrate --host optionMatt Riedemann2019-05-241-7/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Per the discussion at the Train Forum [1] this deprecates the problematic --live option on the server migrate command which, depending on the compute API version used, forcefully bypasses the scheduler and also does not allow you to live migrate a server and let the scheduler pick a host. The --live option is replaced here with two new options: * --live-migration: this simply tells the command you want to perform a live rather than cold migration; if specified with --live the --live-migration option takes priority. * --host: when specified, this will request a target host for the live migration and will be validated by the scheduler; if not specified, the scheduler will pick a host. This option is mutually exclusive with --live. We can build on the --host option by supporting cold migrations with a specified host when using compute API version 2.56 or greater but that will come in a separate change. If the --live option is ever used we log a warning. Note there are several related changes for this issue: - https://review.openstack.org/#/c/628334/ - https://review.openstack.org/#/c/626949/ - https://review.openstack.org/#/c/627801/ - https://review.openstack.org/#/c/589012/ - https://review.openstack.org/#/c/460059/ This change allows us to deprecate the --live option and provide a replacement which is backward compatible without having to use something potentially error-prone like nargs='?'. Closes-Bug: #1411190 [1] https://etherpad.openstack.org/p/DEN-osc-compute-api-gaps Change-Id: I95d3d588e4abeb6848bdccf6915f7b5da40b5d4f
* | Merge "Add changes-before attribute to server list"Zuul2019-06-061-2/+25
|\ \
| * | Add changes-before attribute to server listzhangbailin2019-05-311-2/+25
| | | | | | | | | | | | | | | | | | | | | Closes-Bug: #1827844 Part of bp support-to-query-nova-resources-filter-by-changes-before Change-Id: I4f28168188973730247bcbcb70ba0e70eb81e3be
* | | Merge "Compute: Add description support for server"Zuul2019-06-051-0/+57
|\ \ \ | |/ / |/| |
| * | Compute: Add description support for serverChen2019-05-171-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds functionality to configure server's description with: 1 server create 2 server set 3 server unset 4 server rebuild Change-Id: Ic06d97b29e51828b29d7ac5172645c288e4ada9e Story: 2002005 Task: 19640
* | | Serialize more aggregate functional testsDean Troyer2019-05-171-0/+2
| |/ |/| | | | | | | | | | | | | | | These tests are showing signs of problems running in parallel so serialse the create/delete/list/set/unset tests. They all used two aggregates each anyway... Change-Id: Iba4b52c179e6914eaeefea1da0f7eaefcdcf1f87 Signed-off-by: Dean Troyer <dtroyer@gmail.com>
* | Document that server dump create requires 2.17Matt Riedemann2019-05-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | There is no indication to the user in the command help that they have to use 2.17 or greater [1] to run the "openstack server dump create" command. This mentions that requirement in the help of the command. [1] https://developer.openstack.org/api-ref/compute/#trigger-crash-dump-in-server Change-Id: I02c06e10a26eb38ddecb70f970cfcbfad962201c
* | Merge "Add note about version 2.5 when listing servers using --ip6"Zuul2019-03-071-1/+3
|\ \
| * | Add note about version 2.5 when listing servers using --ip6Matt Riedemann2018-06-081-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The --ip6 filter when listing servers as a non-admin user only applies when also using --os-compute-api-microversion 2.5 or greater. This change simply adds a note about that in the --ip6 option help text. We could probably get more sophisticated by trying to determine if the user has the admin role or not and if not, and using --ip6 without microversion >= 2.5, we could error out, but that seems excessive at this point. Change-Id: I665c64e0bdac04c695fa119a479df43f70b0fa62 Story: #2002184 Task: #20057
* | | Merge "Mention 2.51 in help for openstack server event show"Zuul2019-03-071-2/+4
|\ \ \
| * | | Mention 2.51 in help for openstack server event showMatt Riedemann2018-06-091-2/+4
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the 2.51 compute API microversion, non-admin users can also see event details for a given request. This change mentions that in the help text for "openstack server event show". While in here, change the _info private attribute access to the to_dict() usage. Change-Id: I5fd487b17c4b85bd7e619112ad262ffdd3a940c8 Task: 21199 Story: 2002193
* | | Merge "API microversion 2.69: Handles Down Cells"Zuul2019-03-071-0/+8
|\ \ \
| * | | API microversion 2.69: Handles Down CellsSurya Seetharaman2019-03-061-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch explicitly points out the change needed while forming the detailed lists for servers. In those cases where the server response for ``openstack server list`` has the flavor and image keys missing for the instances in the down cell, the servers will be skipped from being processed. Depends-On: https://review.openstack.org/591657/ Related to blueprint handling-down-cell Change-Id: Ibcfe9febdc45db1cb86c6e88f65976feceb01c02
* | | | Merge "Paginate over usage list to return all usages"Zuul2019-03-061-1/+49
|\ \ \ \
| * | | | Paginate over usage list to return all usagesPavlo Shchelokovskyy2019-02-281-1/+49
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | since nova api 2.40 the os-simple-tenant-usage API supports pagination and will by default return a number of entities configured internally in Nova. This means that when there are many enough projects, the single call to usage.list() will not return usages for all projects. This patch effectively copy-pastes the logic to paginate over usage list results from novaclient/v2/shell.py code. Change-Id: I1b639fe386b7b7db3223f6965495094b9d51533a Story: #2005099 Task: #29713
* | | | Typo fixChristian Schneemann2019-02-271-1/+1
|/ / / | | | | | | | | | | | | | | | Just a typo fix. Change-Id: I1d1fe6eb95c0b167265b3664314d764e3c316fe2
* | | fix multiple server delete produce multiple new linesNoam Angel2019-01-161-7/+3
| | | | | | | | | | | | | | | Closes-Bug: #1809874 Change-Id: Ib988b189b41af03d3d871b660bb5b5cc090c3f30
* | | Merge "Add --name-lookup-one-by-one option to server list"Zuul2018-11-081-22/+48
|\ \ \
| * | | Add --name-lookup-one-by-one option to server listPavlo Shchelokovskyy2018-11-021-22/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | usually in a big cloud there are many images and flavors, while each given project might use only some of those. This patch introduces '--name-lookup-one-by-one' argument to server list command (mutually exclusive with '--no-name-lookup') When provided (or either '--image' or '--flavor' is specified) to the `server list` command, name resolving for corresponding entity is now using targeted GET commands instead of full entities list. In some situations this can significantly speedup the execution of the `server list` command by reducing the number of API requests performed. Change-Id: I59cbf3f75c55e5d3747654edcc9be86ad954cf40 Story: #2002039 Task: #19682
* | | | Handle multiple ports in AddFloatingIPmelanie witt2018-11-061-7/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AddFloatingIP refers to an old nova proxy API to neutron that was deprecated in nova. The neutron API for floating IP associate requires a port to be specified. Currently, the code is selecting the first port if the server has multiple ports. But, an attempt to associate the first port with a floating IP can fail if the first port is not on a network that is attached to an external gateway. In order to make the command work better for users who have a server with multiple ports, we can: 1. Select the port corresponding to the fixed_ip_address, if one was specified 2. Try to associate the floating IP with each port until one of the attempts succeeds, else re-raise the last exception. (404 ExternalGatewayForFloatingIPNotFound from neutron) This also fixes incorrect FakeFloatingIP attributes that were being set in the TestServerAddFloatingIPNetwork unit tests, which were causing the tests to use None as parsed args for ip-address and --fixed-ip-address and thus bypassing code in the 'if parsed_args.fixed_ip_address:' block. Task: 27800 Story: 2004263 Change-Id: I11fbcebf6b00f12a030b000c84dcf1d6b5e86250
* | | | Merge "Add --key-name and --key-unset option for server rebuild API."Zuul2018-11-021-0/+26
|\ \ \ \ | |_|_|/ |/| | |
| * | | Add --key-name and --key-unset option for server rebuild API.Fan Zhang2018-10-091-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I6d4793a8e961080ea1d6d414cef8d6bbed0c53e7 Story: 2002609 Task: 22228 Signed-off-by: Fan Zhang <zh.f@outlook.com>
* | | | Merge "Default --nic to 'auto' if creating a server with >= 2.37"Zuul2018-10-261-3/+8
|\ \ \ \ | |/ / / |/| | |
| * | | Default --nic to 'auto' if creating a server with >= 2.37Matt Riedemann2018-03-211-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compute API version >= 2.37 requires a 'networks' value in the server create request. The novaclient CLI defaults this to 'auto' if not specified, but the novaclient ServerManager.create python API binding code does not, as it wants clients to be explicit. For the purposes of the OSC CLI, we should follow suit and if the user is requesting OS_COMPUTE_API_VERSION>=2.37 without specific nics, we should just default to 'auto'. Change-Id: Ib760c55e31209223338a4086ff1f4fee88dc6959 Closes-Bug: #1750395
* | | | Add --property option to 'server rebuild' commandRuby Loo2018-10-051-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add '--property' option to the 'server rebuild' command, to provide the ability to specify properties of the rebuilt instance. This is equivalent to the '--meta' option of the compute's 'nova rebuild' command. Change-Id: I25ea6622e970416090109316e1e28fab8b0b3f07 Story: #2003979 Task: #26922
* | | | Merge "Don't sent disk_over_commit if nova api > 2.24"Zuul2018-07-251-5/+8
|\ \ \ \
| * | | | Don't sent disk_over_commit if nova api > 2.24Artom Lifshitz2018-07-241-5/+8
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In API microversion 2.25 Nova removed the disk_over_commit parameter to the live migration server action. This patch makes sure that we don't include it in our request if we're running with 2.25 or higher. Story: #2002963 Task: #22966 Change-Id: I1bbdd33be96d82422a05982508e370237c3560f3
* | | | compute: host: expand kwargs in host_set() callBenoƮt Knecht2018-07-201-1/+1
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `host_set()` expects `status` and `maintenance_mode` as keyword arguments, but in `SetHost.take_action()`, it is called without expanding the keyword arguments. So it's called as ``` host_set(host, {'status': 'enable'}) ``` instead of ``` host_set(host, status='enable') ``` Change-Id: If0b37ac60091161a892bfc694fce31a988f66005 Task: 23023
* | | Skip calls to glance and nova when got no serversPavlo Shchelokovskyy2018-07-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | save (potentially many) HTTP calls to Glance API for image list and a call to Nova API for flavor list when the server list actually returned no servers. Change-Id: I93a56138c50b82fb4dce67a2f788107f71c5f423 Story: #2002039 Task: #19681
* | | Merge "Display private flavors in server list"Zuul2018-06-291-1/+1
|\ \ \
| * | | Display private flavors in server listnpraveen352018-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the code so that "openstack server list --all" also displays the names of private flavors. Change-Id: I4804fcd905eaf67b1ad9b461084eaf0caa820d2f Closes-Bug: #1742453
* | | | Merge "Compute: Add description support for flavor"Zuul2018-06-281-1/+27
|\ \ \ \
| * | | | Compute: Add description support for flavortianhui2018-06-201-1/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: Fan Zhang <zh.f@outlook.com> Change-Id: I0dc80bee3ba6ff4ec8cc3fc113b6de7807e0bf2a Story: 2002196 Task: 21681
* | | | | compute: limit the service's force down command above 2.10He Jie Xu2018-06-191-10/+16
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Fix server show for microversion 2.47Matt Riedemann2018-06-081-7/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Optimize _prep_server_detail to avoid redundant find_resourceMatt Riedemann2018-06-081-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Use Server.to_dict() rather than Server._infoMatt Riedemann2018-06-081-4/+6
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | Prevent "server migrate --wait" from hangingJulie Pichon2018-05-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | Merge "Add --image-property parameter in 'server create'"Zuul2018-03-311-0/+45
|\ \ \
| * | | Add --image-property parameter in 'server create'Chen Hanxiao2018-03-281-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | add --image-property option, just like --image-with of novaclient did. Change-Id: Ic1a8976559255529a8785b1b301a0307812433cb Signed-off-by: Chen Hanxiao <chenhx@certusnet.com.cn>
* | | | Merge "Fix additional output encoding issues"Zuul2018-03-294-41/+67
|\ \ \ \ | |/ / / |/| | |
| * | | Fix additional output encoding issuesDean Troyer2018-03-204-41/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Merge "Fix crashing "console log show""Zuul2018-03-231-3/+4
|\ \ \ \ | |/ / / | | | / | |_|/ |/| |
| * | Fix crashing "console log show"Thomas Goirand2018-03-161-3/+4
| |/ | | | | | | | | | | | | | | | | | | | | 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
* | Re-implement novaclient bits removed in 10.0Dean Troyer2018-03-132-28/+49
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Corrected spelling mistakeDavid Rabel2018-01-191-1/+1
| | | | | | in quotas -> in quotes Change-Id: I3adb1ccd8f3a9c495f0b9cf688aee5c4c1e63507
* flavor: clarify --swap descriptionChen Hanxiao2017-12-281-1/+1
| | | | | | | | | | --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>
* Merge "Send 'changes-since' instead of 'changes_since' query parameter"3.13.0Zuul2017-12-131-6/+7
|\
| * Send 'changes-since' instead of 'changes_since' query parameterDaniel Speichert2017-12-111-6/+7
| | | | | | | | | | | | | | | | | | | | 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