Collection Release Announcements

A quick bugfix release to start the weekend: 7.2.3. :adhesive_bandage:

Shoutout to @floek for spotting a bug with the minimal firewall management of the agent role. Thank you! :folded_hands:

Excerpt from the changelog: Fix the minimal firewall management the agent role does. Due to a peculiarity in how the ufw module works, it was possible, that the firewall would become active, locking out users connected via SSH or disrupting other connections.

If you have not yet experienced this issue, use this version of the collection and you probably never will. :slight_smile:

2 Likes

Spring is here and so is a new collection release! :sunrise_over_mountains:
Announcing the Checkmk Ansible Collection 7.3.0!

This release revolves all around one change, but it is huge: nicoske struck again with his second module, and this time it is … drum roll … the notification module! :tada:

Thanks a ton buddy, not only for the module itself, but also for bearing with us through an extensive review and refinement process! :folded_hands: I am certain it was worthwile, because the result is very presentable indeed. :dizzy:

A few remarks on the module though: Notification rules, just like other rules managed by the rule module are very complex by nature, so building a module that handles them gracefully is a huge feat. Idempotency is the main issue and while this module does a pretty good job ensuring it, there will be configurations, which will not work as expected. Please read the module documentation carefully, if you might have found such an example before filing an issue. There will also probably be some bugs in this first iteration and support is limited to Checkmk 2.4 (ideally 2.4.0p14 or higher) and above. If you find any issues, please do create an issue over at GitHub.

And with that, I am looking forward to your feedback and give you:

2 Likes

And with spring here, there is also a little spring-cleaning. :broom:

This release features no functional changes, but improves the module documentation significantly. :books:

Full disclosure: I used Claude AI as a PoC to align the documentation, as it felt like a good and sensible use case given all the text and patterns. Personally, I think the outcome (which I of course reviewed thoroughly) is pretty decent. But let me know if you find any issues or have general comments. :speech_balloon:

And that is already it. Again: There are no functional changes, so no need to run and upgrade the collection. Only, if you are a sucker for good documentation. :wink:

And with that, I give you:

And another bug fix release, this time with functional changes. :gear:

@alexandrud found an issue with the agent role: In certain scenarios the file download logic, which tries to download a host-specific, then a folder-specific and lastly a generic agent configuration would fail entirely. Thanks for the report! :folded_hands:
This has been resolved by falling back to the vanilla agent configuration, instead of a generic configuration. While this means, that the fallback possibly uses a less tailored agent, we think it is the most stable solution. :rock:
If you have not yet experienced this issue, you probably never were - and never will be - affected.

Additionally, we bumped the Ansible versions the collection is tested against, as the Ansible project bumped their development branch in preparation for the Ansible 2.21 release.
This means testing for Ansible 2.18 is removed and Ansible 2.21 is added.

And with that, I give you the Checkmk Ansible Collection 7.3.2:

1 Like

Y’all remember the times, when I joked about Friday releases? Well here we go again. :smiley:

Announcing the Checkmk Ansible Collection 7.4.0. :partying_face:

This one features two cool changes:

  • Shout out to @lgetwan for implementing automatic parent creation when using the folder module. With this option, you can now create complex folder structures without needing to create all parent folders in advance. :flexed_biceps: :card_index_dividers:
  • Based on that, the agent role now optionally can create the folder a host will be put in upon automatic creation of the host in Checkmk. :file_folder:

And that is already it. Enjoy the release and enjoy your weekend! :blush:

1 Like

Let’s start the week with some good news: The Checkmk Ansible collection now supports Checkmk 2.5 to the fullest extent! Announcing version 7.5.0. :partying_face:

Apart from some cosmetic updates to task titles, the main “feature” of this release is the polished support for Checkmk 2.5. We already laid the groundwork a while back, to ensure your playbooks continue to run, when you start updating to Checkmk 2.5. But with the edition renaming, which happened alongside the release, there were some missing pieces in the support, mainly accepting the new edition names. The old ones do still work, but if you e.g., started with a fresh 2.5 setup, this was confusing.

So starting with this release, Checkmk 2.5 is fully supported, and any remaining issues would be considered a bug. If you find any of those, head over to GitHub and open an issue, so we can look into it. :beetle:

And with that, I give you the Checkmk Ansible Collection 7.5.0:

3 Likes

Q: What is the best thing one could do right before going on vacation?
A: Make a release, correct!

Announcing the Checkmk Ansible collection 7.6.0. :grin:

And I would like to say, this is just a small bugfix release, but it contains quite a few relevant changes:

  • @lgetwan fixed an issue with the forward compatibility of the password module: Recent versions of Checkmk use editable_by instead of owner. This now works for all Checkmk versions and editable_by is the new default. owner continues to work as an alias, but will be removed ina future release, so make sure to update your playbooks. :key:
  • The dynamic inventory plugin now properly supports environment and ini-style variables. And while at it, we also added support for api_auth_cookie. :globe_showing_europe_africa:
  • We also fixed a small bug with the authentication in the API abstraction layer, which caused modules to crash. No further action necessary. :adhesive_bandage:
  • For module developers: The changelogs template.yml was updated to be more tailored to the collection and more helpful overall. We are happy for any feedback on how to make it even better! :page_facing_up:
  • And finally one broader thing: We added AGENTS.md to the repository. With the wide adoption of LLMs, this seems sensible. As you can see we want to keep it agnostic of the specific LLM used. We start using LLMs to support us in maintaining and extending the collection. This is a learning process and we want to make sure it is sustainable. For contributors, we neither expect you to use LLMs, nor do we encourage it. We merely want to make sure, that the process is convenient, guardrails are in place and we have some governance. Bear with us, we might make mistakes, but we hope to be able do discuss, when something does not work as expected. Thanks!

So that is this realease. Grew a bit bigger, than I anticipated at first. :sweat_smile:
Oh, while on the subject of anticipation:

Heads-up: There will be a breaking release soon to fix a bug in the user module. The affected parameter is auth_type, which defaults to password. This default can break users in scenarios, where the authentication provider is not local (e.g., LDAP, SAML). To prevent this, the auth_type parameter will become mandatory. What do you need to do? Make sure your playbooks set auth_type explicitely and you will not even feel the breaking change. :slight_smile:
This breaking release might not be the next or the one after, as we have some more things in the pipeline, but keep your eyes peeled for 8.0.0. :glasses:

And with that, I give you:

1 Like

Back from vacation, looks like nothing broke terribly with the last release, so let’s try again, shall we? :wink:

This release features a first for this collection and while it was inevitable and hinted on in the last release, I honestly have mixed feelings about it. Especially, as those of you who know me, know that I am definitely on the sceptical end of AI users. But nevertheless did I generate a module entirely with an LLM. The reason is simple: I needed something for internal testing which did not justify occupying the scarse developer time we have in the project. And I figured, why not kill two birds with one stone and unblock my testing while learning how to interact with LLMs? So long story short: I learned a lot and eventually had a module that looked pretty decent. So I had it reviewed by a human and here we are:

Introducing the role module. :partying_face:
And that is about it. The module enables management of roles within Checkmk and there are also accompanying lookup modules. :magnifying_glass_tilted_right:

If you have any concerns about this development or feedback, both in general or specifically towards the modules, please do reach out, I genuinely appreciate every feedback!

P.S.: No actual birds were harmed in the writing of this post. :bird:

And with that I give you: The Checkmk Ansible Collection 7.7.0:

1 Like

This has to be the hottest release so far (folks here in Germany will understand)! :hot_face:

Announcing the Checkmk Ansible Collection 7.8.0. :sun:

This is a small maintenance release, mainly enabling the discovery module to interact with Checkmk 3.0 sites and adds a new discovery mode. Other modules continue to work without modification so far, but we will fix them, as issues arise.

So if you are one of the brave souls running Checkmk dailies: Here you go. :wrapped_gift:
Everyone else: Carry on. :blush:

Oh and a quick heads-up: The next release will be 8.0.0 as announced two posts back.

Heads-up: There will be a breaking release soon to fix a bug in the user module. The affected parameter is auth_type, which defaults to password. This default can break users in scenarios, where the authentication provider is not local (e.g., LDAP, SAML). To prevent this, the auth_type parameter will become mandatory. What do you need to do? Make sure your playbooks set auth_type explicitely and you will not even feel the breaking change. :slight_smile:
This breaking release might not be the next or the one after, as we have some more things in the pipeline, but keep your eyes peeled for 8.0.0. :glasses:

2 Likes

And here it is: The breaking release 8.0.0. :collision:

As announced earlier already, the breakage is not too bad and should be rather contained. Here are the facts:

  • User module - The parameter auth_type no longer defaults to password.
    Playbooks that create a new user and rely on this default must now set auth_type explicitly.
    Existing playbooks that already pass auth_type are unaffected.
  • User module - Fix editing of users that authenticate via LDAP or SAML.
    The default has been removed and the authentication option is now only changed when
    auth_type, password or enforce_password_change is set explicitly.

I’ll keep it brief, so this post remains focussed. If you find any issues, open an issue over at Github, or post directly here, then I will split off dedicated topics. Thanks! :folded_hands:

2 Likes