Skip to content

Commit e0b4afe

Browse files
committed
@bisgaard-itis review: key fun and wording
1 parent d395dff commit e0b4afe

File tree

3 files changed

+39
-23
lines changed

3 files changed

+39
-23
lines changed

Makefile

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -595,12 +595,17 @@ settings-schema.json: ## [container] dumps json-schema settings of all services
595595

596596

597597
.PHONY: auto-doc
598-
auto-doc: .stack-simcore-version.yml ## updates diagrams for README.md
598+
auto-doc: .stack-simcore-version.yml ## Auto generates diagrams for README.md
599599
# Parsing docker compose config $< and creating graph
600600
@./scripts/docker-compose-viz.bash $<
601601
# Updating docs/img
602602
@mv --verbose $<.png docs/img/
603603

604+
.PHONY: services.md
605+
services.md: ## Auto generates service.md
606+
# Making $@
607+
scripts/echo_services_markdown.py > $@
608+
604609

605610
.PHONY: postgres-upgrade
606611
postgres-upgrade: ## initalize or upgrade postgres db to latest state

scripts/echo_services_markdown.py

Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -24,38 +24,46 @@
2424
_SWAGGER_URL_PREFIX: Final[str] = f"https://petstore.swagger.io/?url={_URL_PREFIX}"
2525

2626

27-
def _to_row(values: Iterable):
28-
return f"| {'|'.join(map(str, values))} |\n"
29-
30-
3127
class CaptureTuple(NamedTuple):
3228
service_name: str
3329
file_path: Path
3430

3531

36-
service_names_aliases: dict[str, str] = {"web": "webserver"}
32+
_service_names_aliases: dict[str, str] = {
33+
"web": "webserver",
34+
}
3735

3836

3937
def generate_markdown_table(
4038
*captured_files: Iterable[CaptureTuple],
4139
) -> str:
4240
title = ("Name", "Files", " ")
41+
num_cols = len(title)
4342
lines = ["-" * 10] * len(title)
4443

45-
table = _to_row(title)
46-
table += _to_row(lines)
44+
def _to_row_data(values: Iterable) -> list[str]:
45+
row = list(map(str, values))
46+
assert len(row) == num_cols, f"len({row=}) != {num_cols=}"
47+
return row
48+
49+
rows = [
50+
_to_row_data(title),
51+
_to_row_data(lines),
52+
]
4753

4854
found = itertools.groupby(
4955
sorted(itertools.chain(*captured_files), key=attrgetter("service_name")),
5056
key=attrgetter("service_name"),
5157
)
5258

5359
for name, service_files in found:
54-
table += _to_row(
55-
(
56-
f"**{name.upper()}**",
57-
"",
58-
"",
60+
rows.append(
61+
_to_row_data(
62+
(
63+
f"**{name.upper()}**",
64+
"",
65+
"",
66+
)
5967
)
6068
)
6169
for _, file_path in service_files:
@@ -65,7 +73,7 @@ def generate_markdown_table(
6573
badges = []
6674

6775
if file_path.stem.lower() == "dockerfile":
68-
repo = service_names_aliases.get(f"{name}") or name
76+
repo = _service_names_aliases.get(f"{name}") or name
6977
badges = [
7078
f"[![Docker Image Size](https://img.shields.io/docker/image-size/itisfoundation/{repo})](https://hub.docker.com/r/itisfoundation/{repo}/tags)"
7179
]
@@ -76,16 +84,19 @@ def generate_markdown_table(
7684
f"[![Swagger UI](https://img.shields.io/badge/OpenAPI-Swagger_UI-85ea2d?logo=swagger)]({_SWAGGER_URL_PREFIX}/{file_path})",
7785
]
7886

79-
table += _to_row(
80-
(
81-
"",
82-
linked_path,
83-
" ".join(badges),
87+
rows.append(
88+
_to_row_data(
89+
(
90+
"",
91+
linked_path,
92+
" ".join(badges),
93+
)
8494
)
8595
)
96+
rows.append(_to_row_data(["" * 10] * len(title)))
8697

87-
table += _to_row(["" * 10] * len(title))
88-
return table
98+
# converts to markdown table
99+
return "\n".join(f"| {'|'.join(r)} |" for r in rows)
89100

90101

91102
if __name__ == "__main__":
@@ -115,7 +126,7 @@ def _to_tuple(file: Path):
115126

116127
print("# services")
117128
print(">")
118-
print(f"> Auto generated on {now} by ")
129+
print(f"> Auto generated on `{now}` using ")
119130
print("```cmd")
120131
print("cd osparc-simcore")
121132
print(f"python ./{CURRENT_FILE.relative_to(repo_base_path)}")

services.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# services
22
>
3-
> Auto generated on 2024-11-20 21:36:46 by
3+
> Auto generated on `2024-11-21 10:29:41` using
44
```cmd
55
cd osparc-simcore
66
python ./scripts/echo_services_markdown.py

0 commit comments

Comments
 (0)