def do_baymodel_create(cs, args):
    """Create a baymodel."""
    opts = {}
    opts['name'] = args.name
    opts['flavor_id'] = args.flavor_id
    opts['master_flavor_id'] = args.master_flavor_id
    opts['image_id'] = args.image_id
    opts['keypair_id'] = args.keypair_id
    opts['external_network_id'] = args.external_network_id
    opts['fixed_network'] = args.fixed_network
    opts['fixed_subnet'] = args.fixed_subnet
    opts['network_driver'] = args.network_driver
    opts['volume_driver'] = args.volume_driver
    opts['dns_nameserver'] = args.dns_nameserver
    opts['docker_volume_size'] = args.docker_volume_size
    opts['docker_storage_driver'] = args.docker_storage_driver
    opts['coe'] = args.coe
    opts['http_proxy'] = args.http_proxy
    opts['https_proxy'] = args.https_proxy
    opts['no_proxy'] = args.no_proxy
    opts['labels'] = magnum_utils.handle_labels(args.labels)
    opts['tls_disabled'] = args.tls_disabled
    opts['public'] = args.public
    opts['registry_enabled'] = args.registry_enabled
    opts['server_type'] = args.server_type
    opts['master_lb_enabled'] = args.master_lb_enabled
    opts['floating_ip_enabled'] = args.floating_ip_enabled

    baymodel = cs.baymodels.create(**opts)
    _show_baymodel(baymodel)
Пример #2
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)", parsed_args)

        mag_client = self.app.client_manager.container_infra
        args = {
            'name': parsed_args.name,
            'node_count': parsed_args.node_count,
            'max_node_count': parsed_args.max_node_count,
            'min_node_count': parsed_args.min_node_count,
            'role': parsed_args.role,
        }

        if parsed_args.labels is not None:
            args['labels'] = magnum_utils.handle_labels(parsed_args.labels)

        if parsed_args.docker_volume_size is not None:
            args['docker_volume_size'] = parsed_args.docker_volume_size

        if parsed_args.flavor is not None:
            args['flavor_id'] = parsed_args.flavor

        if parsed_args.image is not None:
            args['image_id'] = parsed_args.image

        cluster_id = parsed_args.cluster
        nodegroup = mag_client.nodegroups.create(cluster_id, **args)
        print("Request to create nodegroup %s accepted"
              % nodegroup.uuid)
def do_baymodel_create(cs, args):
    """Create a baymodel."""
    opts = {}
    opts['name'] = args.name
    opts['flavor_id'] = args.flavor_id
    opts['master_flavor_id'] = args.master_flavor_id
    opts['image_id'] = args.image_id
    opts['keypair_id'] = args.keypair_id
    opts['external_network_id'] = args.external_network_id
    opts['fixed_network'] = args.fixed_network
    opts['network_driver'] = args.network_driver
    opts['volume_driver'] = args.volume_driver
    opts['dns_nameserver'] = args.dns_nameserver
    opts['docker_volume_size'] = args.docker_volume_size
    opts['docker_storage_driver'] = args.docker_storage_driver
    opts['coe'] = args.coe
    opts['http_proxy'] = args.http_proxy
    opts['https_proxy'] = args.https_proxy
    opts['no_proxy'] = args.no_proxy
    opts['labels'] = magnum_utils.handle_labels(args.labels)
    opts['tls_disabled'] = args.tls_disabled
    opts['public'] = args.public
    opts['registry_enabled'] = args.registry_enabled
    opts['server_type'] = args.server_type

    baymodel = cs.baymodels.create(**opts)
    _show_baymodel(baymodel)
Пример #4
0
def do_cluster_create(cs, args):
    """Create a cluster."""
    args.command = 'cluster-create'

    utils.validate_name_args(args.positional_name, args.name)

    cluster_template = cs.cluster_templates.get(args.cluster_template)
    opts = dict()
    opts['name'] = args.positional_name or args.name
    opts['cluster_template_id'] = cluster_template.uuid
    opts['keypair'] = args.keypair
    if args.docker_volume_size is not None:
        opts['docker_volume_size'] = args.docker_volume_size
    if args.labels is not None:
        opts['labels'] = magnum_utils.handle_labels(args.labels)
    opts['node_count'] = args.node_count
    opts['master_count'] = args.master_count
    opts['discovery_url'] = args.discovery_url
    opts['create_timeout'] = args.timeout

    try:
        cluster = cs.clusters.create(**opts)
        # support for non-async in 1.1
        if args.magnum_api_version and args.magnum_api_version == '1.1':
            _show_cluster(cluster)
        else:
            uuid = str(cluster._info['uuid'])
            print("Request to create cluster %s has been accepted." % uuid)
    except Exception as e:
        print("Create for cluster %s failed: %s" % (opts['name'], e))
Пример #5
0
def do_cluster_template_create(cs, args):
    """Create a cluster template."""
    args.command = 'cluster-template-create'

    utils.validate_name_args(args.positional_name, args.name)

    opts = {}
    opts['name'] = args.positional_name or args.name
    opts['flavor_id'] = args.flavor
    opts['master_flavor_id'] = args.master_flavor
    opts['image_id'] = args.image
    opts['keypair_id'] = args.keypair
    opts['external_network_id'] = args.external_network
    opts['fixed_network'] = args.fixed_network
    opts['fixed_subnet'] = args.fixed_subnet
    opts['network_driver'] = args.network_driver
    opts['volume_driver'] = args.volume_driver
    opts['dns_nameserver'] = args.dns_nameserver
    opts['docker_volume_size'] = args.docker_volume_size
    opts['docker_storage_driver'] = args.docker_storage_driver
    opts['coe'] = args.coe
    opts['http_proxy'] = args.http_proxy
    opts['https_proxy'] = args.https_proxy
    opts['no_proxy'] = args.no_proxy
    opts['labels'] = magnum_utils.handle_labels(args.labels)
    opts['tls_disabled'] = args.tls_disabled
    opts['public'] = args.public
    opts['registry_enabled'] = args.registry_enabled
    opts['server_type'] = args.server_type
    opts['master_lb_enabled'] = args.master_lb_enabled
    opts['floating_ip_enabled'] = args.floating_ip_enabled
    opts['insecure_registry'] = args.insecure_registry

    cluster_template = cs.cluster_templates.create(**opts)
    _show_cluster_template(cluster_template)
 def take_action(self, parsed_args):
     self.log.debug("take_action(%s)", parsed_args)
     mag_client = self.app.client_manager.container_infra
     args = {
         'name': parsed_args.name,
         'image_id': parsed_args.image,
         'keypair_id': parsed_args.keypair,
         'external_network_id': parsed_args.external_network,
         'coe': parsed_args.coe,
         'fixed_network': parsed_args.fixed_network,
         'fixed_subnet': parsed_args.fixed_subnet,
         'network_driver': parsed_args.network_driver,
         'volume_driver': parsed_args.volume_driver,
         'dns_nameserver': parsed_args.dns_nameserver,
         'flavor_id': parsed_args.flavor,
         'master_flavor_id': parsed_args.master_flavor,
         'docker_volume_size': parsed_args.docker_volume_size,
         'docker_storage_driver': parsed_args.docker_storage_driver,
         'http_proxy': parsed_args.http_proxy,
         'https_proxy': parsed_args.https_proxy,
         'no_proxy': parsed_args.no_proxy,
         'labels': magnum_utils.handle_labels(parsed_args.labels),
         'tls_disabled': parsed_args.tls_disabled,
         'public': parsed_args.public,
         'registry_enabled': parsed_args.registry_enabled,
         'server_type': parsed_args.server_type,
         'master_lb_enabled': parsed_args.master_lb_enabled,
         'floating_ip_enabled': parsed_args.floating_ip_enabled,
     }
     ct = mag_client.cluster_templates.create(**args)
     print("Request to create cluster template %s accepted" %
           parsed_args.name)
     return _show_cluster_template(ct)
Пример #7
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)", parsed_args)

        mag_client = self.app.client_manager.container_infra
        args = {
            'cluster_template_id': parsed_args.cluster_template,
            'create_timeout': parsed_args.timeout,
            'discovery_url': parsed_args.discovery_url,
            'keypair': parsed_args.keypair,
            'master_count': parsed_args.master_count,
            'name': parsed_args.name,
            'node_count': parsed_args.node_count,
        }

        if parsed_args.labels is not None:
            args['labels'] = magnum_utils.handle_labels(parsed_args.labels)

        if parsed_args.docker_volume_size is not None:
            args['docker_volume_size'] = parsed_args.docker_volume_size

        if parsed_args.master_flavor is not None:
            args['master_flavor_id'] = parsed_args.master_flavor

        if parsed_args.flavor is not None:
            args['flavor_id'] = parsed_args.flavor

        cluster = mag_client.clusters.create(**args)
        print("Request to create cluster %s accepted" % cluster.uuid)
Пример #8
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)", parsed_args)

        mag_client = self.app.client_manager.container_infra
        args = {
            'cluster_template_id': parsed_args.cluster_template,
            'create_timeout': parsed_args.timeout,
            'discovery_url': parsed_args.discovery_url,
            'keypair': parsed_args.keypair,
            'master_count': parsed_args.master_count,
            'name': parsed_args.name,
            'node_count': parsed_args.node_count,
        }

        if len(parsed_args.floating_ip_enabled) > 1:
            raise exceptions.InvalidAttribute('--floating-ip-enabled and '
                                              '--floating-ip-disabled are '
                                              'mutually exclusive and '
                                              'should be specified only once.')
        elif len(parsed_args.floating_ip_enabled) == 1:
            args['floating_ip_enabled'] = parsed_args.floating_ip_enabled[0]

        if parsed_args.labels is not None:
            args['labels'] = magnum_utils.handle_labels(parsed_args.labels)

        if parsed_args.docker_volume_size is not None:
            args['docker_volume_size'] = parsed_args.docker_volume_size

        if parsed_args.master_flavor is not None:
            args['master_flavor_id'] = parsed_args.master_flavor

        if parsed_args.flavor is not None:
            args['flavor_id'] = parsed_args.flavor

        if parsed_args.fixed_network is not None:
            args["fixed_network"] = parsed_args.fixed_network

        if parsed_args.fixed_subnet is not None:
            args["fixed_subnet"] = parsed_args.fixed_subnet

        if parsed_args.merge_labels:
            # We are only sending this if it's True. This
            # way we avoid breaking older APIs.
            args["merge_labels"] = parsed_args.merge_labels

        cluster = mag_client.clusters.create(**args)
        print("Request to create cluster %s accepted" % cluster.uuid)
Пример #9
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)", parsed_args)
        mag_client = self.app.client_manager.container_infra
        args = {
            'name': parsed_args.name,
            'image_id': parsed_args.image,
            'keypair_id': parsed_args.keypair,
            'external_network_id': parsed_args.external_network,
            'coe': parsed_args.coe,
            'fixed_network': parsed_args.fixed_network,
            'fixed_subnet': parsed_args.fixed_subnet,
            'network_driver': parsed_args.network_driver,
            'volume_driver': parsed_args.volume_driver,
            'dns_nameserver': parsed_args.dns_nameserver,
            'flavor_id': parsed_args.flavor,
            'master_flavor_id': parsed_args.master_flavor,
            'docker_volume_size': parsed_args.docker_volume_size,
            'docker_storage_driver': parsed_args.docker_storage_driver,
            'http_proxy': parsed_args.http_proxy,
            'https_proxy': parsed_args.https_proxy,
            'no_proxy': parsed_args.no_proxy,
            'labels': magnum_utils.handle_labels(parsed_args.labels),
            'tls_disabled': parsed_args.tls_disabled,
            'public': parsed_args.public,
            'registry_enabled': parsed_args.registry_enabled,
            'server_type': parsed_args.server_type,
            'master_lb_enabled': parsed_args.master_lb_enabled,
        }

        # NOTE (brtknr): Only supply hidden arg if it is True
        # for backward compatibility
        if parsed_args.hidden:
            args['hidden'] = parsed_args.hidden

        if len(parsed_args.floating_ip_enabled) > 1:
            raise InvalidAttribute('--floating-ip-enabled and '
                                   '--floating-ip-disabled are '
                                   'mutually exclusive and '
                                   'should be specified only once.')
        elif len(parsed_args.floating_ip_enabled) == 1:
            args['floating_ip_enabled'] = parsed_args.floating_ip_enabled[0]

        ct = mag_client.cluster_templates.create(**args)
        print("Request to create cluster template %s accepted"
              % parsed_args.name)
        return _show_cluster_template(ct)
def do_cluster_template_create(cs, args):
    """Create a cluster template."""
    args.command = 'cluster-template-create'

    utils.validate_name_args(args.positional_name, args.name)

    opts = {}
    opts['name'] = args.positional_name or args.name
    opts['flavor_id'] = args.flavor
    opts['master_flavor_id'] = args.master_flavor
    opts['image_id'] = args.image
    opts['keypair_id'] = args.keypair
    opts['external_network_id'] = args.external_network
    opts['fixed_network'] = args.fixed_network
    opts['fixed_subnet'] = args.fixed_subnet
    opts['network_driver'] = args.network_driver
    opts['volume_driver'] = args.volume_driver
    opts['dns_nameserver'] = args.dns_nameserver
    opts['docker_volume_size'] = args.docker_volume_size
    opts['docker_storage_driver'] = args.docker_storage_driver
    opts['coe'] = args.coe
    opts['http_proxy'] = args.http_proxy
    opts['https_proxy'] = args.https_proxy
    opts['no_proxy'] = args.no_proxy
    opts['labels'] = magnum_utils.handle_labels(args.labels)
    opts['tls_disabled'] = args.tls_disabled
    opts['public'] = args.public
    opts['registry_enabled'] = args.registry_enabled
    opts['server_type'] = args.server_type
    opts['master_lb_enabled'] = args.master_lb_enabled
    opts['insecure_registry'] = args.insecure_registry
    opts['hidden'] = args.hidden

    if len(args.floating_ip_enabled) > 1:
        raise InvalidAttribute('--floating-ip-enabled and '
                               '--floating-ip-disabled are '
                               'mutually exclusive and '
                               'should be specified only once.')
    elif len(args.floating_ip_enabled) == 1:
        opts['floating_ip_enabled'] = args.floating_ip_enabled[0]

    cluster_template = cs.cluster_templates.create(**opts)
    _show_cluster_template(cluster_template)
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)", parsed_args)
        mag_client = self.app.client_manager.container_infra
        args = {
            'name': parsed_args.name,
            'image_id': parsed_args.image,
            'keypair_id': parsed_args.keypair,
            'external_network_id': parsed_args.external_network,
            'coe': parsed_args.coe,
            'fixed_network': parsed_args.fixed_network,
            'fixed_subnet': parsed_args.fixed_subnet,
            'network_driver': parsed_args.network_driver,
            'volume_driver': parsed_args.volume_driver,
            'dns_nameserver': parsed_args.dns_nameserver,
            'flavor_id': parsed_args.flavor,
            'master_flavor_id': parsed_args.master_flavor,
            'docker_volume_size': parsed_args.docker_volume_size,
            'docker_storage_driver': parsed_args.docker_storage_driver,
            'http_proxy': parsed_args.http_proxy,
            'https_proxy': parsed_args.https_proxy,
            'no_proxy': parsed_args.no_proxy,
            'labels': magnum_utils.handle_labels(parsed_args.labels),
            'tls_disabled': parsed_args.tls_disabled,
            'public': parsed_args.public,
            'registry_enabled': parsed_args.registry_enabled,
            'server_type': parsed_args.server_type,
            'master_lb_enabled': parsed_args.master_lb_enabled,
            'hidden': parsed_args.hidden
        }
        if len(parsed_args.floating_ip_enabled) > 1:
            raise InvalidAttribute('--floating-ip-enabled and '
                                   '--floating-ip-disabled are '
                                   'mutually exclusive and '
                                   'should be specified only once.')
        elif len(parsed_args.floating_ip_enabled) == 1:
            args['floating_ip_enabled'] = parsed_args.floating_ip_enabled[0]

        ct = mag_client.cluster_templates.create(**args)
        print("Request to create cluster template %s accepted"
              % parsed_args.name)
        return _show_cluster_template(ct)
Пример #12
0
def do_baymodel_create(cs, args):
    """Create a baymodel.

    (Deprecated in favor of cluster-template-create.)
    """
    opts = {}
    opts['name'] = args.name
    opts['flavor_id'] = args.flavor_id
    opts['master_flavor_id'] = args.master_flavor_id
    opts['image_id'] = args.image_id
    opts['keypair_id'] = args.keypair_id
    opts['external_network_id'] = args.external_network_id
    opts['fixed_network'] = args.fixed_network
    opts['fixed_subnet'] = args.fixed_subnet
    opts['network_driver'] = args.network_driver
    opts['volume_driver'] = args.volume_driver
    opts['dns_nameserver'] = args.dns_nameserver
    opts['docker_volume_size'] = args.docker_volume_size
    opts['docker_storage_driver'] = args.docker_storage_driver
    opts['coe'] = args.coe
    opts['http_proxy'] = args.http_proxy
    opts['https_proxy'] = args.https_proxy
    opts['no_proxy'] = args.no_proxy
    opts['labels'] = magnum_utils.handle_labels(args.labels)
    opts['tls_disabled'] = args.tls_disabled
    opts['public'] = args.public
    opts['registry_enabled'] = args.registry_enabled
    opts['server_type'] = args.server_type
    opts['master_lb_enabled'] = args.master_lb_enabled

    if len(args.floating_ip_enabled) > 1:
        raise InvalidAttribute('--floating-ip-enabled and '
                               '--floating-ip-disabled are '
                               'mutually exclusive and '
                               'should be specified only once.')
    elif len(args.floating_ip_enabled) == 1:
        opts['floating_ip_enabled'] = args.floating_ip_enabled[0]

    baymodel = cs.baymodels.create(**opts)
    _show_baymodel(baymodel)