def post(self, request): """Create a new Cluster. Returns the new Cluster object on success. """ params = request.DATA params["metadata"] = api_utils.load_yaml(params.get("metadata")) cluster = senlin.cluster_create(request, **params) return rest_utils.CreatedResponse( '/api/senlin/clusters/%s' % cluster.id, cluster.to_dict())
def handle(self, request, data): try: # As we hide the parent field, use None here data["parent"] = None if not data["metadata"]: metadata = {} else: try: metadata = yaml.load(data["metadata"]) except Exception as ex: raise Exception(_("The specified metadata is not a valid " "YAML format: %s") % six.text_type(ex)) data["metadata"] = metadata cluster = senlin.cluster_create(request, **data) msg = _('Creating cluster "%s" successfully') % data["name"] messages.success(request, msg) return cluster except Exception: redirect = reverse(INDEX_URL) exceptions.handle(request, _("Unable to create cluster."), redirect=redirect)
def handle(self, request, data): try: # As we hide the parent field, use None here data['parent'] = None if not data['metadata']: metadata = {} else: try: metadata = yaml.safe_load(data['metadata']) except Exception as ex: raise Exception(_('The specified metadata is not a valid ' 'YAML format: %s') % ex) data['metadata'] = metadata cluster = senlin.cluster_create(request, **data) msg = _('Creating cluster "%s" successfully') % data['name'] messages.success(request, msg) return cluster except Exception: redirect = reverse(INDEX_URL) exceptions.handle(request, _("Unable to create cluster."), redirect=redirect)