From 6fbe471af57a321dc8e4b9611dbbb407dc68a079 Mon Sep 17 00:00:00 2001 From: SebastianGode Date: Mon, 12 Jun 2023 15:06:26 +0200 Subject: [PATCH 1/3] First stuff --- otc_metadata/services.py | 55 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/otc_metadata/services.py b/otc_metadata/services.py index 195b067e..87223c38 100644 --- a/otc_metadata/services.py +++ b/otc_metadata/services.py @@ -112,6 +112,61 @@ class Services(object): res[cat].setdefault("docs", []) res[cat]["docs"].append(res_doc) return res + + def services_with_docs_type_and_title(self, environment=None): + """Retrieve type and title from services and corresponding docs + + :param str environment: Optional service environment. Influeces + "repository" field + """ + res = {} + service_list = [] + service_dict = {} + # { + # "services": [ + # { + # "name": ECS, + # "doc_types": [ + # ... + # ] + # } + # ], + + # "doc_types": [ + # "umn", + # ] + + doc_types = [] + res = [] + # for doc in self.all_docs_full(environment="public"): + # res.append(doc) + + for service in self.all_services: + if not service["service_title"]: + continue + if not service["service_type"]: + continue + + + service_list.append({ + "service_title": service["service_title"], + "service_type": service["service_type"] + }) + + + + + + # for doc in self.all_docs: + + + # doc_types.append(doc["type"]) + + # service_dict = { + # "name": services.get( + # } + + return res def docs_by_service_category(self, category, environment=None): """List services matching category -- 2.34.1 From f29f6d7b9ea3ce54b77eaa38331d94b05fe2106b Mon Sep 17 00:00:00 2001 From: SebastianGode Date: Mon, 12 Jun 2023 15:21:48 +0200 Subject: [PATCH 2/3] finished dict --- otc_metadata/services.py | 53 +++++++++++++++------------------------- 1 file changed, 20 insertions(+), 33 deletions(-) diff --git a/otc_metadata/services.py b/otc_metadata/services.py index 87223c38..abdf59b3 100644 --- a/otc_metadata/services.py +++ b/otc_metadata/services.py @@ -119,52 +119,39 @@ class Services(object): :param str environment: Optional service environment. Influeces "repository" field """ - res = {} service_list = [] - service_dict = {} - # { - # "services": [ - # { - # "name": ECS, - # "doc_types": [ - # ... - # ] - # } - # ], - - # "doc_types": [ - # "umn", - # ] - doc_types = [] - res = [] - # for doc in self.all_docs_full(environment="public"): - # res.append(doc) for service in self.all_services: if not service["service_title"]: continue if not service["service_type"]: continue - + doc_list = [] + for doc in self.all_docs: + if "environment" in doc: + if doc["environment"] != environment: + continue + if doc["service_type"] == service["service_type"]: + doc_list.append({ + "title": doc["title"], + "type": doc["type"] + }) + + if doc["type"] not in doc_types: + doc_types.append(doc["type"]) + service_list.append({ "service_title": service["service_title"], - "service_type": service["service_type"] + "service_type": service["service_type"], + "docs": doc_list }) - - - - - # for doc in self.all_docs: - - - # doc_types.append(doc["type"]) - - # service_dict = { - # "name": services.get( - # } + res = { + "services": service_list, + "doc_types": doc_types + } return res -- 2.34.1 From c52d106085e40e0c48d7da16124a1188be3327c5 Mon Sep 17 00:00:00 2001 From: SebastianGode Date: Mon, 12 Jun 2023 15:25:23 +0200 Subject: [PATCH 3/3] Description, function name --- otc_metadata/services.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/otc_metadata/services.py b/otc_metadata/services.py index abdf59b3..f62ca3c0 100644 --- a/otc_metadata/services.py +++ b/otc_metadata/services.py @@ -112,12 +112,12 @@ class Services(object): res[cat].setdefault("docs", []) res[cat]["docs"].append(res_doc) return res - - def services_with_docs_type_and_title(self, environment=None): - """Retrieve type and title from services and corresponding docs - :param str environment: Optional service environment. Influeces - "repository" field + def service_types_with_doc_types(self, environment=None): + """Retrieve type and title from services and corresponding docs. + As well as a list of all doc_types. + + :param str environment: Optional service environment. """ service_list = [] doc_types = [] @@ -127,7 +127,7 @@ class Services(object): continue if not service["service_type"]: continue - + doc_list = [] for doc in self.all_docs: if "environment" in doc: -- 2.34.1