docker_compose_v2: ignore some pull events (#803)

* Ignore some pull events.

* Adjust tests.
This commit is contained in:
Felix Fontein
2024-02-23 18:24:16 +01:00
committed by GitHub
parent f0c91ef5f9
commit 6f5d67860c
4 changed files with 11 additions and 6 deletions
+5 -3
View File
@@ -350,9 +350,11 @@ def parse_events(stderr, dry_run=False, warn_function=None):
return events
def has_changes(events):
def has_changes(events, ignore_service_pull_events=False):
for event in events:
if event.status in DOCKER_STATUS_WORKING:
if ignore_service_pull_events and event.status in DOCKER_STATUS_PULL:
continue
return True
return False
@@ -539,8 +541,8 @@ class BaseComposeManager(DockerBaseClass):
def emit_warnings(self, events):
emit_warnings(events, warn_function=self.client.warn)
def update_result(self, result, events, stdout, stderr):
result['changed'] = result.get('changed', False) or has_changes(events)
def update_result(self, result, events, stdout, stderr, ignore_service_pull_events=False):
result['changed'] = result.get('changed', False) or has_changes(events, ignore_service_pull_events=ignore_service_pull_events)
result['actions'] = result.get('actions', []) + extract_actions(events)
result['stdout'] = combine_text_output(result.get('stdout'), to_native(stdout))
result['stderr'] = combine_text_output(result.get('stderr'), to_native(stderr))