Merge "Add 'slave_of' option for enabling replication"

This commit is contained in:
Jenkins
2014-06-24 08:41:06 +00:00
committed by Gerrit Code Review
2 changed files with 10 additions and 2 deletions

View File

@@ -45,7 +45,8 @@ class Instances(base.ManagerWithFind):
def create(self, name, flavor_id, volume=None, databases=None, users=None,
restorePoint=None, availability_zone=None, datastore=None,
datastore_version=None, nics=None, configuration=None):
datastore_version=None, nics=None, configuration=None,
slave_of=None):
"""Create (boot) a new instance."""
body = {"instance": {
"name": name,
@@ -72,6 +73,8 @@ class Instances(base.ManagerWithFind):
body["instance"]["nics"] = nics
if configuration:
body["instance"]["configuration"] = configuration
if slave_of:
body["instance"]["slave_of"] = slave_of
return self._create("/instances", body, "instance")

View File

@@ -224,6 +224,10 @@ def do_update(cs, args):
metavar='<configuration>',
default=None,
help='ID of the configuration group to attach to the instance.')
@utils.arg('--slave_of',
metavar='<master_id>',
default=None,
help='ID of an existing instance to replicate from.')
@utils.service_type('database')
def do_create(cs, args):
"""Creates a new instance."""
@@ -257,7 +261,8 @@ def do_create(cs, args):
datastore=args.datastore,
datastore_version=args.datastore_version,
nics=nics,
configuration=args.configuration)
configuration=args.configuration,
slave_of=args.slave_of)
if hasattr(instance, 'configuration'):
instance._info['configuration'] = instance.configuration['id']
instance._info['flavor'] = instance.flavor['id']