puppetlabs / puppetlabs-puppet_agent

Module for managing Puppet-Agent
Apache License 2.0
41 stars 192 forks source link

Implement stdlib 9 compatibility #657

Closed bastelfreak closed 1 year ago

bastelfreak commented 1 year ago

stdlib 9 dropped the is_function_available() function. I reworked the code to check if pe_anchor is defined. The code now works with Puppet core functions and is compatible with Puppet 7/8, probably 6, and does not rely on stdlib.

smortex commented 1 year ago

I have squashed my changes in your commits, and CI seems happy with it.

@bastelfreak had you the opportunity to check that the behavior was not broken by my change in the real world with PE? Is this PR ready for review :grin: :wink: :wink:?

bastelfreak commented 1 year ago

@smortex yes it's working fine :)

bastelfreak commented 1 year ago

@joshcooper I updated the git commit with the description and added it to the PR title as well.

I want to point out that puppetlabs/stdlib 9 was released almost 2 months ago. PE customers were not able to upgrade because this module isn't compatible. The CAT team worked hard to upgrade all of their modules. I still don't understand why the puppetdb and puppet_agent module are not owned by them / the CAT team isn't listed as code owners. From my point of view (also also from the PE customers I represent) this doesn't make sense. I pointed it out multiple times in the past years and never got a proper explanation for this. Also this wasn't changed. There was zero activity from the current owners about making puppet_agent compatible with stdlib 9. It took quite a long time to get a response here. I fail to understand why some modules are not maintained at all / maintained by other teams instead of the module with the main focus on maintaining modules. I would love to see a migration to the CAT team to ship enhancements faster to customers and to have a single source of configuration/guidelines/team for modules.

joshcooper commented 1 year ago

Hi @bastelfreak, I understand your frustration, the current approach is not working for anyone. I've been advocating for moving these and *_core modules to the ~Modules~, ~IAC~ and CAT teams for literally years. But as usual, there are too many things to do and not enough people. I am hopeful this will change in the near future though. I'll have a chat with folks on my end.

bastelfreak commented 1 year ago

@tvpartytonight thanks for merging <3