Also check for compose.yaml and compose.yml, and do not require the Compose file to be an actual file. (#759)

This commit is contained in:
Felix Fontein 2024-01-16 19:03:29 +01:00 committed by GitHub
parent d4a5280512
commit ab73061a5f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -18,7 +18,7 @@ from ansible_collections.community.docker.plugins.module_utils.util import Docke
from ansible_collections.community.docker.plugins.module_utils.version import LooseVersion from ansible_collections.community.docker.plugins.module_utils.version import LooseVersion
DOCKER_COMPOSE_FILES = 'docker-compose.yml', 'docker-compose.yaml' DOCKER_COMPOSE_FILES = ('compose.yaml', 'compose.yml', 'docker-compose.yaml', 'docker-compose.yml')
DOCKER_STATUS_DONE = frozenset(( DOCKER_STATUS_DONE = frozenset((
'Started', 'Started',
@ -436,8 +436,9 @@ class BaseComposeManager(DockerBaseClass):
if not os.path.isdir(self.project_src): if not os.path.isdir(self.project_src):
self.client.fail('"{0}" is not a directory'.format(self.project_src)) self.client.fail('"{0}" is not a directory'.format(self.project_src))
if all(not os.path.isfile(os.path.join(self.project_src, f)) for f in DOCKER_COMPOSE_FILES): if all(not os.path.exists(os.path.join(self.project_src, f)) for f in DOCKER_COMPOSE_FILES):
self.client.fail('"{0}" does not contain {1}'.format(self.project_src, ' or '.join(DOCKER_COMPOSE_FILES))) filenames = ', '.join(DOCKER_COMPOSE_FILES[:-1])
self.client.fail('"{0}" does not contain {1}, or {2}'.format(self.project_src, filenames, DOCKER_COMPOSE_FILES[-1]))
def get_base_args(self): def get_base_args(self):
args = ['compose', '--ansi', 'never'] args = ['compose', '--ansi', 'never']