Closed noahlehmann closed 1 week ago
cc @Gaetan2907 @eikef @mattock @ndclt click here for bot help
CC @yeoldegrove
@felixfontein Updated the changelog fragment with your suggestions. Happy to help!
CI errors are unrelated and will get fixed by #8550.
✅ Backport PR branch: patchback/backports/stable-8/1053545870f0f71eae8cb05dddc995f6ee737f50/pr-8545
Backported as https://github.com/ansible-collections/community.general/pull/8553
🤖 @patchback I'm built with octomachinery and my source is open — https://github.com/sanitizers/patchback-github-app.
@noahlehmann thanks for your contribution! @yeoldegrove thanks for reviewing!
✅ Backport PR branch: patchback/backports/stable-9/1053545870f0f71eae8cb05dddc995f6ee737f50/pr-8545
Backported as https://github.com/ansible-collections/community.general/pull/8554
🤖 @patchback I'm built with octomachinery and my source is open — https://github.com/sanitizers/patchback-github-app.
SUMMARY
Stumbled upon this when using an older version of the plugin. Originally had the issue with
consentRequired
which was fixed by Merge #8496 .If the user supplies no
id
either in themodule.params.get('id')
or in one of themodule.params.get('protocol_mappers')
, the comparison will result in a diff detected, even though all other params might be identical.Running a task multiple times with no
id
s set (Keycloak API then creates one) will now result in no change detected, improving idempotence checks.ISSUE TYPE
Bugfix Pull Request
COMPONENT NAME
commnity.general.keycloak_clientscope.py
ADDITIONAL INFORMATION
The check on wether the task
changed
now normalizes the dictsdesired_clientscope
andbefore_clientscope
to ignore allid
fields on all levels, as they are not required to be set if aname
has been set instead.This ensures that the module does not detect a change and does not call the keycloak API unnecessarily.
Before:
After: