From f89721328ae003d152f63f96e9d0a06a6f2e911f Mon Sep 17 00:00:00 2001 From: beeva-antonioirizar Date: Tue, 9 Feb 2016 16:59:16 +0100 Subject: [PATCH] add method describe_clusters for service ecs --- moto/ecs/models.py | 14 ++++++++++++++ moto/ecs/responses.py | 8 ++++++++ 2 files changed, 22 insertions(+) diff --git a/moto/ecs/models.py b/moto/ecs/models.py index 820c99fd..d62d7ffa 100644 --- a/moto/ecs/models.py +++ b/moto/ecs/models.py @@ -117,6 +117,20 @@ class EC2ContainerServiceBackend(BaseBackend): """ return [cluster.arn for cluster in self.clusters.values()] + def describe_clusters(self, list_clusters_name=None): + list_clusters = [] + if list_clusters_name is None: + if 'default' in self.clusters: + list_clusters.append(self.clusters['default'].response_object) + else: + for cluster in list_clusters_name: + cluster_name = cluster.split('/')[-1] + if cluster_name in self.clusters: + list_clusters.append(self.clusters[cluster_name].response_object) + else: + raise Exception("{0} is not a cluster".format(cluster_name)) + return list_clusters + def delete_cluster(self, cluster_str): cluster_name = cluster_str.split('/')[-1] if cluster_name in self.clusters: diff --git a/moto/ecs/responses.py b/moto/ecs/responses.py index de2fdb48..3278dd77 100644 --- a/moto/ecs/responses.py +++ b/moto/ecs/responses.py @@ -35,6 +35,14 @@ class EC2ContainerServiceResponse(BaseResponse): 'nextToken': str(uuid.uuid1()) }) + def describe_clusters(self): + list_clusters_name = self._get_param('clusters') + clusters = self.ecs_backend.describe_clusters(list_clusters_name) + return json.dumps({ + 'clusters': clusters, + 'failures': [] + }) + def delete_cluster(self): cluster_str = self._get_param('cluster') cluster = self.ecs_backend.delete_cluster(cluster_str)