diff --git a/odoo_openupgrade_wizard/tools/tools_docker.py b/odoo_openupgrade_wizard/tools/tools_docker.py index 6820cdd..6ed53dd 100644 --- a/odoo_openupgrade_wizard/tools/tools_docker.py +++ b/odoo_openupgrade_wizard/tools/tools_docker.py @@ -119,8 +119,14 @@ def kill_container(container_name): filters={"name": container_name}, ) for container in containers: - logger.debug( - "Stop container %s, based on image '%s'." - % (container.name, ",".join(container.image.tags)) - ) - container.stop() + if container.status != "exited": + logger.debug( + "Stop container %s, based on image '%s'." + % (container.name, ",".join(container.image.tags)) + ) + container.stop() + + # TODO, we should here filter by name + # but filters={"name": container_name} + # doesn't work... + client.containers.prune() diff --git a/tests/cli_03_docker_build_test.py b/tests/cli_03_docker_build_test.py index a2b0be3..14a5009 100644 --- a/tests/cli_03_docker_build_test.py +++ b/tests/cli_03_docker_build_test.py @@ -1,10 +1,23 @@ -from odoo_openupgrade_wizard.tools.tools_docker import get_docker_client +from odoo_openupgrade_wizard.tools.tools_docker import ( + get_docker_client, + kill_container, +) -from . import cli_runner_invoke, move_to_test_folder +from . import ( + build_ctx_from_config_file, + cli_runner_invoke, + move_to_test_folder, +) def test_cli_docker_build(): move_to_test_folder() + ctx = build_ctx_from_config_file() + + # Drop postgresql container if exist + # (we ensure that the postgres container is removed to + # be sure that the call (environment, etc...) is correct now.) + kill_container(ctx.obj["config"]["postgres_container_name"]) cli_runner_invoke( [