def check_node_group_template_usage(node_group_template_id, **kwargs):
    cluster_users = []
    template_users = []

    for cluster in api.get_clusters():
        if (node_group_template_id in [
                node_group.node_group_template_id
                for node_group in cluster.node_groups
        ]):
            cluster_users += [cluster.name]

    for cluster_template in api.get_cluster_templates():
        if (node_group_template_id in [
                node_group.node_group_template_id
                for node_group in cluster_template.node_groups
        ]):
            template_users += [cluster_template.name]

    if cluster_users or template_users:
        raise ex.InvalidReferenceException(
            _("Node group template %(template)s is in use by "
              "cluster templates: %(users)s; and clusters: %(clusters)s") %
            {
                'template': node_group_template_id,
                'users': template_users and ', '.join(template_users) or 'N/A',
                'clusters': cluster_users and ', '.join(cluster_users) or 'N/A'
            })
示例#2
0
def check_cluster_unique_name(name):
    if name in [
            cluster.name
            for cluster in api.get_clusters(tenant_id=context.ctx().tenant_id)
    ]:
        raise ex.NameAlreadyExistsException(
            _("Cluster with name '%s' already exists") % name)
示例#3
0
 def test_create_multiple_clusters_failed(self, check_cluster):
     MULTIPLE_CLUSTERS = SAMPLE_CLUSTER.copy()
     MULTIPLE_CLUSTERS['count'] = 2
     check_cluster.side_effect = exc.QuotaException('resource', 'requested',
                                                    'available')
     with testtools.ExpectedException(exc.QuotaException):
         api.create_cluster(SAMPLE_CLUSTER)
     self.assertEqual('Error', api.get_clusters()[0].status)
示例#4
0
 def test_create_multiple_clusters_failed(self, check_cluster):
     MULTIPLE_CLUSTERS = SAMPLE_CLUSTER.copy()
     MULTIPLE_CLUSTERS['count'] = 2
     check_cluster.side_effect = exc.QuotaException(
         'resource', 'requested', 'available')
     with testtools.ExpectedException(exc.QuotaException):
         api.create_cluster(SAMPLE_CLUSTER)
     self.assertEqual('Error', api.get_clusters()[0].status)
示例#5
0
def check_cluster_template_usage(cluster_template_id, **kwargs):
    users = []

    for cluster in api.get_clusters():
        if cluster_template_id == cluster.cluster_template_id:
            users.append(cluster.name)

    if users:
        raise ex.InvalidReferenceException(
            _("Cluster template %(id)s in use by %(clusters)s") %
            {'id': cluster_template_id,
             'clusters': ', '.join(users)})
def check_cluster_template_usage(cluster_template_id, **kwargs):
    users = []

    for cluster in api.get_clusters():
        if cluster_template_id == cluster.cluster_template_id:
            users.append(cluster.name)

    if users:
        raise ex.InvalidReferenceException(
            _("Cluster template %(id)s in use by %(clusters)s") % {
                'id': cluster_template_id,
                'clusters': ', '.join(users)
            })
示例#7
0
def check_node_group_template_usage(node_group_template_id, **kwargs):
    cluster_users = []
    template_users = []

    for cluster in api.get_clusters():
        if (node_group_template_id in
            [node_group.node_group_template_id
             for node_group in cluster.node_groups]):
            cluster_users += [cluster.name]

    for cluster_template in api.get_cluster_templates():
        if (node_group_template_id in
            [node_group.node_group_template_id
             for node_group in cluster_template.node_groups]):
            template_users += [cluster_template.name]

    if cluster_users or template_users:
        raise ex.InvalidReferenceException(
            _("Node group template %(template)s is in use by "
              "cluster templates: %(users)s; and clusters: %(clusters)s") %
            {'template': node_group_template_id,
             'users': template_users and ', '.join(template_users) or 'N/A',
             'clusters': cluster_users and ', '.join(cluster_users) or 'N/A'})
示例#8
0
def check_cluster_unique_name(name):
    if name in [cluster.name for cluster in api.get_clusters()]:
        raise ex.NameAlreadyExistsException(_("Cluster with name '%s' already exists") % name)
示例#9
0
 def test_create_cluster_failed(self, check_cluster):
     check_cluster.side_effect = exc.QuotaException('resource', 'requested',
                                                    'available')
     with testtools.ExpectedException(exc.QuotaException):
         api.create_cluster(SAMPLE_CLUSTER)
     self.assertEqual('Error', api.get_clusters()[0].status)
示例#10
0
文件: base.py 项目: stackhpc/sahara
def check_cluster_unique_name(cluster_name):
    if cluster_name in [
            cluster.name for cluster in api.get_clusters(name=cluster_name)
    ]:
        raise ex.NameAlreadyExistsException(
            _("Cluster with name '%s' already exists") % cluster_name)
示例#11
0
 def test_create_cluster_failed(self, check_cluster):
     check_cluster.side_effect = exc.QuotaException(
         'resource', 'requested', 'available')
     with testtools.ExpectedException(exc.QuotaException):
         api.create_cluster(SAMPLE_CLUSTER)
     self.assertEqual('Error', api.get_clusters()[0].status)
示例#12
0
def clusters_list():
    return u.render(clusters=[
        c.to_dict() for c in api.get_clusters(**u.get_request_args().to_dict())
    ])
示例#13
0
文件: v10.py 项目: Imperat/sahara
def clusters_list():
    result = api.get_clusters(**u.get_request_args().to_dict())
    return u.render(res=result, name='clusters')
示例#14
0
def clusters_list():
    result = api.get_clusters(**u.get_request_args().to_dict())
    return u.render(res=result, name='clusters')
示例#15
0
文件: v10.py 项目: frgaudet/sahara
def clusters_list():
    return u.render(clusters=[c.to_dict() for c in api.get_clusters(
        **u.get_request_args().to_dict())])