summaryrefslogtreecommitdiff
path: root/troveclient/v1
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-12-10 15:55:42 +0000
committerGerrit Code Review <review@openstack.org>2016-12-10 15:55:42 +0000
commit20eb0a4bd180d3137c7986cfb8065412746eed80 (patch)
treef4797807aab2369e438f25635a9c85a5b32fd963 /troveclient/v1
parent156b36e8523525dac177b0a9bcee4aa60049d086 (diff)
parent9d3098ebaf4718838edc714f2c1d3b02a992c398 (diff)
downloadpython-troveclient-20eb0a4bd180d3137c7986cfb8065412746eed80.tar.gz
Merge "Cluster Upgrade"2.7.0
Diffstat (limited to 'troveclient/v1')
-rw-r--r--troveclient/v1/clusters.py9
-rw-r--r--troveclient/v1/shell.py12
2 files changed, 21 insertions, 0 deletions
diff --git a/troveclient/v1/clusters.py b/troveclient/v1/clusters.py
index 451bfe8..b7e5ddd 100644
--- a/troveclient/v1/clusters.py
+++ b/troveclient/v1/clusters.py
@@ -126,6 +126,15 @@ class Clusters(base.ManagerWithFind):
body = {"shrink": instances}
return self._action(cluster, body)
+ def upgrade(self, cluster, datastore_version):
+ """Upgrades a cluster to a new datastore version.
+
+ :param cluster: The cluster to upgrade
+ :param datastore_version: Datastore version to which to upgrade
+ """
+ body = {"upgrade": {'datastore_version': datastore_version}}
+ return self._action(cluster, body)
+
class ClusterStatus(object):
diff --git a/troveclient/v1/shell.py b/troveclient/v1/shell.py
index 86eae0e..a0058f6 100644
--- a/troveclient/v1/shell.py
+++ b/troveclient/v1/shell.py
@@ -414,6 +414,18 @@ def do_cluster_reset_status(cs, args):
cs.clusters.reset_status(cluster)
+@utils.arg('cluster', metavar='<cluster>',
+ help=_('ID or name of the cluster.'))
+@utils.arg('datastore_version',
+ metavar='<datastore_version>',
+ help=_('A datastore version name or ID.'))
+@utils.service_type('database')
+def do_cluster_upgrade(cs, args):
+ """Upgrades a cluster to a new datastore version."""
+ cluster = _find_cluster(cs, args.cluster)
+ cs.clusters.upgrade(cluster, args.datastore_version)
+
+
@utils.arg('instance',
metavar='<instance>',
type=str,