Skip to content

Support for docker-compose V2 #71

Closed
@n1ngu

Description

@n1ngu

I guess the maintainers are already aware of all the context but I'll try to summarize it and still not bore anyone.

docker-compose V2 has been rewritten not in Python language and isn't distributed anymore as a python package.

In the V1 deprecation notice there is a commitment to fix security issues but no bugs or new features will ever be released https://github.com/docker/compose/tree/master#v1-vs-v2-transition-hourglass_flowing_sand

The V1 branch is effectively stale since V2 was first released 4 months ago.

The first signs of erosion are already showing up #70

Hopefully, the command line interface is still the only supported interface to docker-compose, and there is an explicit commitment to keep it stable and compatible, and by virtue of #19 we should have little to no trouble with the switch.

Effectively, after dropping the requirement on the docker-compose V1 python package, my first attempt to run pytest-docker test suite with my system's docker-compose 2.2.2 is a total success.

The main issue so far would be that: in common setups using a virtualenv the current hard dependency on docker-compose V1 will usually shadow any other version provided by the user. Or at least cause a confusion about what is actually being used (see #69 ?)

Therefore, aside from any future issue that could show up, the main challenges can be reduced to:

  • A breaking change in pytest-docker installation instructions
  • Convoluting the tox.ini matrix so that tests can be run for both docker-compose V1 and V2
  • Making docker-compose V2 available in the CI workflows.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions