Skip to content

Conversation

@Normo
Copy link
Contributor

@Normo Normo commented Nov 20, 2025

Replace the removed community.general.yaml callback with the result_format option in ansible.builtin.default callback plugin.

The community.general.yaml callback plugin has been removed in community.general 12.0.0. The replacement is to use result_format=yaml with the default callback plugin from ansible-core 2.13+.

Copy link
Contributor

@schurzi schurzi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a good idea. This however breaks our compatability with EL8 distros. Most of them are still in support, so I'd not like to drop that. Can you try adding the dependency to the current version of community.general in the collection requirements?

@schurzi schurzi added the patch label Nov 26, 2025
@rndmh3ro
Copy link
Member

This however breaks our compatability with EL8 distros

Yeah, RHEL is still supported for 3.5 more years. So let's try to support that.

@Normo Normo force-pushed the fix-callback-plugin branch 2 times, most recently from 4fb4a33 to 22fb384 Compare November 27, 2025 08:02
galaxy.yml Outdated
ansible.posix: '>=1.0.0'
community.crypto: '>=1.0.0'
community.general: '>=1.0.0'
community.general: '>=1.0.0,<12.0.0'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can make this futureproof by forcing a higher version instead. I found no deprecation of EL8 support for community.general.

Suggested change
community.general: '>=1.0.0,<12.0.0'
community.general: '>=12.0.0'

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm confused now. We seem to be stuck between two incompatible requirements.

If we use community.general: '>=12.0.0':

  • Future-proof, users get the latest community.general
  • Must switch to result_format: yaml in molecule.yml
  • But this breaks the EL8 support (get community.general <12.0.0 with yaml callback)

If we use community.general: '<12.0.0':

  • Maintains EL8 support
  • Keep callbacks_enabled: profile_tasks, timer, yaml in molecule.yml
  • BUT locks ALL users to outdated community.general

Or is there another approach I'm missing?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another option: Removing the yaml callback entirely:

callbacks_enabled: profile_tasks, timer

This would work on all distros without version pinning on community.general, but we lose pretty YAML-formatted output in test logs.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • But this breaks the EL8 support

This is not correct and the source of your confusion. We currently declare a dependency on version 1.0.0, this version does not support the new way of things, because the new Ansible version already ships the current community.general version everything works. The older Ansible version from EL8 does include an older community.general version, that satisfies our collection requirements, but does not have the feature. When we declare a explicit dependency to the current community.general version, Ansible will update the community.general collection on the older EL8 targets to a compatible version.

Copy link
Contributor

@schurzi schurzi Nov 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

... which is also not correct from my side ... version 12.0.0 declares a dependency to Ansible >2.17 ... which is not possible on EL8 :D
https://galaxy.ansible.com/api/v3/plugin/ansible/content/published/collections/index/community/general/versions/

{
  "version": "12.0.0",
  "href": "/api/v3/plugin/ansible/content/published/collections/index/community/general/versions/12.0.0/",
  "created_at": "2025-11-03T18:41:29.965355Z",
  "updated_at": "2025-11-03T18:41:30.188202Z",
  "requires_ansible": ">=2.17.0",
  "marks": []
},

@Normo Normo force-pushed the fix-callback-plugin branch from 22fb384 to 21cf879 Compare November 27, 2025 12:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants