Add min_size and max_size properties to Cluster

Two new properties are added to cluster: min_size and max_size.
This patch provides related support from client side. Now user
can specify the min and max size of cluster when creating it.

Change-Id: I72869259993ec8a8697eba45c12bf6ba9d408292
Implements: blueprint add-size-limitation-properties-to-cluster
This commit is contained in:
yanyanhu 2015-04-30 04:41:13 -04:00
parent 8e87b1aaaf
commit 42d141db9f
2 changed files with 21 additions and 0 deletions
senlinclient/v1

@ -264,6 +264,8 @@ class Cluster(resource.Resource):
created_time = resource.prop('created_time')
updated_time = resource.prop('updated_time')
deleted_time = resource.prop('deleted_time')
min_size = resource.prop('min_size', type=int)
max_size = resource.prop('max_size', type=int)
desired_capacity = resource.prop('desired_capacity', type=int)
timeout = resource.prop('timeout')
status = resource.prop('status')
@ -421,6 +423,8 @@ class Cluster(resource.Resource):
'created_time': self.created_time,
'updated_time': self.updated_time,
'deleted_time': self.deleted_time,
'min_size': self.min_size,
'max_size': self.max_size,
'desired_capacity': self.desired_capacity,
'timeout': self.timeout,
'status': self.status,

@ -572,6 +572,10 @@ def _show_cluster(sc, cluster_id):
@utils.arg('-p', '--profile', metavar='<PROFILE>', required=True,
help=_('Profile Id used for this cluster.'))
@utils.arg('-i', '--min-size', metavar='<MIN-SIZE>', default=0,
help=_('Min size of the cluster. Default to 0.'))
@utils.arg('-a', '--max-size', metavar='<MAX-SIZE>', default=0,
help=_('Max size of the cluster. Default to 0, means unlimtated.'))
@utils.arg('-c', '--desired-capacity', metavar='<DESIRED-CAPACITY>', default=0,
help=_('Desired capacity of the cluster. Default to 0.'))
@utils.arg('-o', '--parent', metavar='<PARENT_ID>',
@ -590,6 +594,8 @@ def do_cluster_create(sc, args):
params = {
'name': args.name,
'profile_id': args.profile,
'min_size': args.min_size,
'max_size': args.max_size,
'desired_capacity': args.desired_capacity,
'parent': args.parent,
'tags': utils.format_parameters(args.tags),
@ -622,6 +628,14 @@ def do_cluster_delete(sc, args):
@utils.arg('-p', '--profile', metavar='<PROFILE>',
help=_('ID of new profile to use.'))
@utils.arg('-i', '--min-size', metavar='<MIN-SIZE>', default=None,
help=_('New min size of the cluster. Default to None.'))
@utils.arg('-a', '--max-size', metavar='<MAX-SIZE>', default=None,
help=_('New max size of the cluster. Default to 0, means '
'unlimtated.'))
@utils.arg('-c', '--desired-capacity', metavar='<DESIRED-CAPACITY>',
default=None,
help=_('New Desired capacity of the cluster. Default to None.'))
@utils.arg('-t', '--timeout', metavar='<TIMEOUT>',
help=_('New timeout (in minutes) value for the cluster.'))
@utils.arg('-r', '--parent', metavar='<PARENT>',
@ -642,6 +656,9 @@ def do_cluster_update(sc, args):
'id': cluster.id,
'name': args.name,
'profile_id': args.profile,
'min_size': args.min_size,
'max_size': args.max_size,
'desired_capacity': args.desired_capacity,
'parent': args.parent,
'tags': utils.format_parameters(args.tags),
'timeout': args.timeout,