diff --git a/podman_compose.py b/podman_compose.py index fe921653..3674fa17 100755 --- a/podman_compose.py +++ b/podman_compose.py @@ -1863,7 +1863,9 @@ def compose_push(compose, args): continue if services and cnt["_service"] not in services: continue - compose.podman.run([], "push", [cnt["image"]], sleep=0) + exit_code = compose.podman.run([], "push", [cnt["image"]], sleep=0).wait() + if (not getattr(args, "ignore_push_failures", None)) and 0 != exit_code: + sys.exit(exit_code) def build_one(compose, args, cnt): @@ -1919,7 +1921,9 @@ def build_one(compose, args, cnt): ) ) build_args.append(ctx) - compose.podman.run([], "build", build_args, sleep=0) + exit_code = compose.podman.run([], "build", build_args, sleep=0).wait() + if 0 != exit_code: + sys.exit(exit_code) @cmd_run(podman_compose, "build", "build stack images") @@ -2671,7 +2675,7 @@ def compose_push_parse(parser): parser.add_argument( "--ignore-push-failures", action="store_true", - help="Push what it can and ignores images with push failures. (not implemented)", + help="Push what it can and ignores images with push failures.", ) parser.add_argument( "services", metavar="services", nargs="*", help="services to push"