From 19fdfcf0b3304db40ef7aad687180ea5e47b9f5a Mon Sep 17 00:00:00 2001 From: Jeff Geerling Date: Mon, 26 Oct 2020 13:31:17 -0500 Subject: [PATCH] Issue #1179: Fix v2 composer require idempotence (#1180) * Issue #1179: Add new statement to composer require changed check for v2. * Issue #1179: Add changelog fragment. --- .../fragments/1179-composer_require_v2_idempotence_fix.yml | 4 ++++ plugins/modules/packaging/language/composer.py | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 changelogs/fragments/1179-composer_require_v2_idempotence_fix.yml diff --git a/changelogs/fragments/1179-composer_require_v2_idempotence_fix.yml b/changelogs/fragments/1179-composer_require_v2_idempotence_fix.yml new file mode 100644 index 0000000000..03874b6775 --- /dev/null +++ b/changelogs/fragments/1179-composer_require_v2_idempotence_fix.yml @@ -0,0 +1,4 @@ +--- +bugfixes: + - composer - fix bug in command idempotence with composer v2 + (https://github.com/ansible-collections/community.general/issues/1179). diff --git a/plugins/modules/packaging/language/composer.py b/plugins/modules/packaging/language/composer.py index 6fe6ade6e2..dc564932d2 100644 --- a/plugins/modules/packaging/language/composer.py +++ b/plugins/modules/packaging/language/composer.py @@ -145,7 +145,11 @@ def parse_out(string): def has_changed(string): - return "Nothing to install or update" not in string + for no_change in ["Nothing to install or update", "Nothing to install, update or remove"]: + if no_change in string: + return False + + return True def get_available_options(module, command='install'):