This PR replaces a request parameter name "net-id" with "network_id"
creating a cluster. When creating a cluster, Clusters API internally
calls Instaces API to create a instance. A request parameter name to
create instances has changed[1] but python-troveclient still uses
old parameter name when creating a cluster.
The original problem is instance creation error when creating a
instance that belongs to a cluster. Troves's Instances API has
changed a parameter name from "net-id" to "network_id", but Clusters
API and python-troveclient still uses the "net-id" parameter name.
We need to fix it.
[1]: 5354172407
Task: 44925
Story: 2009958
Change-Id: Ia3d1d6f451296eba34f2389da184c41a7ee9e84e
Support to show log content and save instance log files:
openstack database log tail [--lines LINES] <instance> <log_name>
openstack database log save [--file FILE] <instance> <log_name>
Change-Id: I2a4eecca663f9126f770fae4c4be28b3667f91c4
The previous patches have add configuration and extended_properties
to "trove cluster-create"[1][2], this commit add the two paramenters
to OSC, user can pass configuration and extended_properties during
"openstack database cluster create".
[1] https://review.openstack.org/#/c/583125/
[2] https://review.openstack.org/#/c/589047/
Change-Id: Ic8e3ba4e92d3b65fa65875675f58eead5827976a
Signed-off-by: zhanggang <zhanggang@cmss.chinamobile.com>
Handles API part implemented in change:
I7c0a22c6a0287128d0c37e100589c78173fd9c1a
So far passing configuration group was possible only for single instance
deployment.
As the trove api now already supports configuration attach and detach
for clusters, we are able to handle it in client.
Configuration will be applied to each cluster instance.
Partially implements: blueprint cluster-configuration-groups
Change-Id: Ic0840c995cbc34203c76494d7ba522f3e17141a7
Signed-off-by: Marcin Piwowarczyk <m.piwowarczy@samsung.com>
User can specify the number and volume of mongos/configserver with
extended_properties argument when creating mongodb. Currently,
the supported parameters are, num_configsvr, num_mongos,
configsvr_volume_size, configsvr_volume_type, mongos_volume_size
and mongos_volume_type.
Change-Id: I35406f9967ce00a51b320eda37572e96228b209d
Signed-off-by: zhanggang <zhanggang@cmss.chinamobile.com>
In some part in the code we import objects. In the Openstack style guidelines
they recommend to import only modules. [1]: "Do not import objects, only modules".
[1] https://docs.openstack.org/hacking/0.10.3/
Change-Id: I8dd5396ab604013639a0b626ce3ecd3e3fad12e8
According bug description, there will be an error when
use configuration-parameter-show without version_id
and datastore. To fix this problem, I add an judgement
for use the cmd without parameter datstore and
datastore_version not like an uuid.
Now in such a case, the cmd will has an exception info.
Change-Id: I01fd56bad80f389da369be90dff5c89b05e6a8dc
Closes-Bug: #1363065
In trove secgroup_delete_rule help message, the parameters
<security_group_rule> is described "Name of security group rule".
In fact, security group rule has not attribute 'name', it only has
'id'.
Users could use trove secgroup-list-rules to get all ID of rules.
Change-Id: If5b97f744b24838e6aa61f4c96608da569886dd2
Not like nova-delete when use trove-delete there is only support
delete an instance everytime. With this patch, we can delete
many instances or clusters in the same call, like
trove delete instance1 instance2.
Change-Id: I6bb0c406ba7f4c0e43cddfdff1d156b7e82ffa7a
According bug description, the datastore display abnormal
when use trove backup-show. The cause of the problem
is method _print_object unformatted datastore from result.
Fix by formatted datastore where necessary.
Change-Id: Ifbcc8312e52eb3d052f5d24645d4d243ec50aed7
Closes-Bug: #1735157
According bug description, the datastore display abnormal
when use trove list.
Change-Id: Ia1dda1c2fb6822ea991afbdf3a67819c262e49a8
Closes-Bug: #1734846
According bug description, the networks display abnormal
when use trove show. The cause of the problem is method
_print_instance unformatted networks from result.
Change-Id: I30e27b731f67ab7c31e30af8ab9bb3e499e27dfa
Closes-Bug: #1734710
According bug description, not like nova-delete when use trove-delete
there is no message or alert is generated. To solve this problem, I
added some message when normally execute deleting instance or cluster.
Change-Id: I572a24116fd1abec220f49a3f9705a5c071155bf
Closes-Bug: #1569669
Now troveclient does not support returning Chinese characters, so
to make changes.This should also avoid other unicode output
problems
Change-Id: Ie948cff4e81806f17c697f50271992cc492c48f4
Closes-Bug: #1720490
The parameter 'backup' in backup-create is never read by our Trove API[1], so
I guess it's a extra key argument for history reason. In addition, the
'backup-copy' subcommand should be removed as well because it does not
support in current Trove API.
[1] https://github.com/openstack/trove/blob/master/trove/backup/service.py#L61-L77
Change-Id: I33d439e0037efd4573eeae186758fd778ba5c514
We have been change the mongodb cluster scaling related changes
in the Liberty version[1], as mongodb cluster grow the necessary
variables,we should displayed in the help message to expose it,
rather than hide it. So made this change.
[1]:https://specs.openstack.org/openstack/trove-specs/specs/liberty/cluster-scaling.html#cluster-grow
Change-Id: I45f5702f7645aa7855f8140bcd5ec83e2c76eeae
Accept cluster ids in user and database API and
route the requests on the single instance interface.
Implements blueprint: datastore-specific-api-extensions
Change-Id: I9cfa048cdee7c9eb18787957fb69e14e05dd4128
To facilitate the concept of live-update, a new command
'reapply' has been added to reapply a given module
to all instances that it had previously been applied to.
Originally, a module designated live-update would automatically
be re-applied whenever it was updated. Adding a specific
command however, allows operators/users more control over
how the new payload would be distributed. Old 'modules'
could be left if desired, or updated with the new command.
Change-Id: Ic4cc9e9085cb40f1afbec05caeb04886137027a4
Partial-Bug: #1554903
Depends-On: I4caf4a57226dd711575cde766076fa25d16792e2
Added a --count_only flag to the call for module instances
to return a summary of the applied instances
based on the MD5 of the module (this is most useful
for live_update modules, to see which ones haven't been
updated).
Added a new module-instance-count command. This was done
to facilitate getting the summary, since it returns
a different result set. It basically calls the
same python interface as module-instances, but adds
the --count_only flag.
Also added some missing tests.
Change-Id: Iea661166bf3a4f3520a590da5954aedcd0036243
Partial-Bug: #1554900
Depends-On: I4caf4a57226dd711575cde766076fa25d16792e2
Under a keystone V3 scenario, the CLI command for
module-list will fail as it tried to determine whether
to display the 'visible' and 'tenant' fields (which only
make sense to show to an admin).
Keystone V3 stores the role information (used to find
out if the user has admin access) in a different
place than V2. This fix uses a keystoneauth1 property
to have the value determined correctly internally,
so trove doesn't have to worry about it.
The logic was also moved to the utils module to
faciliate reuse.
Closes-Bug: #1622019
Change-Id: I6dbc3660b507017f85d06bde2903f4d2334fea35
Add trove client support for new volume-types listing and datastore
version association listing.
Co-Authored-By: amrith <amrith@tesora.com>
Change-Id: Iafcd8d068b85c1993fac0471c04e57478c122bfe
Depends-on: I790751ade042e271ba1cc902a8ef4d3c3a8dc557
This is an initial attempt at supporting multiple regions. It should
handle the mechanics of deploying an instance/volume to a remote
region. Additional changes may be required to allow the guest
agent on the instance to connect back to the originating region.
Co-Authored-By: Doug Shelley <doug@tesora.com>
Depends-On: I386efb2d5c147417af7ea25704405977c9b6bbcd
Change-Id: Ib0b35100c0780dc07c60d20622554ba77c4bc850
Implements the Clusters.upgrade python API and corresponding
shell command.
Implements blueprint: bp/cluster-upgrade
Change-Id: Iedb08c99bf8eb2a0b0d09e3c1ebd11965fdfff90
Added support in the CLI for limit and marker to the
configuration-list and configuration-instances command.
Changed the python API to use the _pagination function
instead of _list.
Modified the unit tests to test this change.
Change-Id: I46d8258eab81d1510707244547e31cd5707a22ce
Closes-Bug: bug/1638352
Help, print, and exception messages will now all be translated. I
did not find any logging messages.
Motivation for this change:
1. A patch for shell.py recently added i18n, we should be
consistent with the additions from v1.
2. I noticed a patch on v1/shell.py that had reviewers suggesting
to use i18n, instead of applying it to one message lets do it
for the whole file.
Change-Id: Ifd1bf25020c5f180a074165e2634a105bcbd4ed8
When trying to create an instance of size 0 an error is thrown
stating that the size was not specified, this is not correct
because I did specify it. The problem is that args.size evaluates
to False because size is 0.
This patch checks for size being zero instead and throws the correct
error message.
Change-Id: If00e83ccd919429dcfac7621dbbd9daa49f8b416