1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2026-04-11 14:35:06 +00:00
community.general/changelogs/fragments
patchback[bot] e7e9cf97e5
[PR #11536/dae2157b backport][stable-12] merge_variables: extended merge capabilities added (#11626)
merge_variables: extended merge capabilities added (#11536)

* merge_variables: extended merge capabilities added

This extension gives you more control over the variable merging process of the lookup plugin `merge_variables`. It closes the gap between Puppet's Hiera merging capabilities and the limitations of Ansible's default variable plugin `host_group_vars` regarding fragment-based value definition. You can now decide which merge strategy should be applied to dicts, lists, and other types. Furthermore, you can specify a merge strategy that should be applied in case of type conflicts.

The default behavior of the plugin has been preserved so that it is fully backward-compatible with the already implemented state.



* Update changelogs/fragments/11536-merge-variables-extended-merging-capabilities.yml



* Update plugins/lookup/merge_variables.py



* Periods added at the end of each choice description



* Update plugins/lookup/merge_variables.py



* ref: follow project standard for choice descriptions



* ref: more examples added and refactoring



* Update plugins/lookup/merge_variables.py



* ref: some more comments to examples added



* fix: unused import removed



* ref: re-add "merge" to strategy map



* Update comments



* Specification of transformations solely as string



* Comments updated



* ref: `append_rp` and `prepend_rp` removed
feat: options dict for list transformations re-added
feat: allow setting `keep` for dedup transformation with possible values: `first` (default) and `last`



* ref: improve options documentation



* ref: documentation improved, avoiding words like newer or older in merge description



* Update plugins/lookup/merge_variables.py



* ref: "prio" replaced by "dict"



* feat: two integration tests added



---------





(cherry picked from commit dae2157bb7)

Signed-off-by: Fiehe Christoph  <c.fiehe@eurodata.de>
Co-authored-by: Christoph Fiehe <cfiehe@users.noreply.github.com>
Co-authored-by: Fiehe Christoph <c.fiehe@eurodata.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Mark <40321020+m-a-r-k-e@users.noreply.github.com>
2026-03-19 22:59:56 +01:00
..
.keep
11254-monit-deprecate-old.yml [PR #11254/cc24e573 backport][stable-12] monit: deprecate support for monit <= 5.18 (#11609) 2026-03-16 20:16:41 +01:00
11481-doas-pipelining.yml [PR #11481/55dae7c2 backport][stable-12] doas: allow to explicitly enable pipelining (#11577) 2026-03-12 21:44:11 +01:00
11536-merge-variables-extended-merging-capabilities.yml [PR #11536/dae2157b backport][stable-12] merge_variables: extended merge capabilities added (#11626) 2026-03-19 22:59:56 +01:00
11540-deprecate-aix.yml [PR #11540/137f5444 backport][stable-12] aix_*: deprecation (#11550) 2026-03-04 21:59:38 +01:00
11551-fix-nmcli-idempotency-for-macvlan.yml [PR #11551/1554f23b backport][stable-12] nmcli: fix idempotency issue with macvlan (#11566) 2026-03-10 22:00:44 +01:00
11555-incus-domain-name.yml [PR #11555/71f8c15d backport][stable-12] Allow setting of independent custom domain for incus inventory (#11560) 2026-03-07 19:12:30 +01:00
11558-binary-ldap-attributes.yml [PR #11558/0e4783dc backport][stable-12] Binary attribute support for ldap_attrs and ldap_entry (#11578) 2026-03-12 21:39:01 +01:00
11559-fix-ipa_dnsrecord-fail-when-no-change.yaml [PR #11559/3194ed9d backport][stable-12] ipa_dnsrecord fix error when using dnsttl and nothing to change (#11587) 2026-03-13 21:14:48 +01:00
11561-use-httpstatus-1.yml [PR #11576/ccc974e2 backport][stable-12] Consolidate changelog fragments (#11580) 2026-03-13 07:58:25 +01:00
11590-list-map.yml [PR #11590/ce5d5622 backport][stable-12] replace list(map(...)) with comprehension (#11591) 2026-03-14 17:14:18 +01:00
keycloak-authentication-none-executions.yml [PR #11548/2f33ff10 backport][stable-12] keycloak_authentication: fix TypeError when flow has no authenticationExecutions (#11565) 2026-03-10 06:57:51 +01:00
nictagadm-etherstub-nonetype-bugfix.yml [PR #11589/d8bb637c backport][stable-12] nictagadm: don't call is_valid_mac when etherstub is true (#11618) 2026-03-18 07:05:16 +01:00