From ac0d274e0f402004d10a5f447a565d65eadaa285 Mon Sep 17 00:00:00 2001 From: sebimoe Date: Thu, 16 Jan 2025 04:19:35 +0000 Subject: [PATCH 1/2] Fixed crash when network config is None --- src/autocompose.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/autocompose.py b/src/autocompose.py index 30e87fe..5cb5465 100644 --- a/src/autocompose.py +++ b/src/autocompose.py @@ -51,7 +51,7 @@ def generate_network_info(): "driver": network_attributes.get("IPAM", {}).get("Driver", "default"), "config": [ {key.lower(): value for key, value in config.items()} - for config in network_attributes.get("IPAM", {}).get("Config", []) + for config in network_attributes.get("IPAM", {}).get("Config", []) or [] ], }, } From b0bf94d95cd4cd386847930ec407105eba7f859f Mon Sep 17 00:00:00 2001 From: sebimoe Date: Thu, 16 Jan 2025 04:41:05 +0000 Subject: [PATCH 2/2] Added --plain switch to output unquoted strings --- src/autocompose.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/autocompose.py b/src/autocompose.py index 5cb5465..4fb3484 100644 --- a/src/autocompose.py +++ b/src/autocompose.py @@ -96,6 +96,12 @@ def main(): type=str, help="Filter containers by regex", ) + parser.add_argument( + "-p", + "--plain", + action="store_true", + help="Use plain (non-quoted) strings where possible", + ) args = parser.parse_args() container_names = args.cnames @@ -148,7 +154,12 @@ def render(struct, args, networks, volumes): if volumes is not None: ans["volumes"] = volumes - pyaml.p(OrderedDict(ans), string_val_style='"') + dump_kwargs = {} + + if not args.plain: + dump_kwargs["string_val_style"] = '"' + + pyaml.p(OrderedDict(ans), **dump_kwargs) def generate(cname, createvolumes=False):