Skip to content

Version 3.5

Major update that refreshes all Python dependencies and resolves older incompatibilities. Only needed when upgrading from a pre-3.5 version.

Breaking Changes

requirements.txt Split

The requirements file is now split into three files:

  • requirements.txt — everything needed to run the Syncer
  • requirements-extras.txt — optional modules (LDAP, MySQL, etc.)
  • requirements-ansible.txt — everything needed for Ansible automations

Docker users: all modules are installed automatically.

Module Updates

Due to security fixes in upstream packages, all framework modules have been upgraded. After updating the Syncer code, run pip install -r requirements.txt again.

Inventory Prefix Change

Inventory value prefixes changed from single underscore to double underscore:

Old prefix New prefix
cmk_ cmk__
cmk_svc_ cmk_svc__
csv_ csv__

Migration steps:

  1. Delete current inventory: ./cmdbsyncer sys delete_inventory
  2. Re-run your inventories
  3. Update rules that reference inventory attributes to use the new prefix

Normal attributes from imports are not affected — only inventorized data.

Checkmk Create Tags

The function is now simpler: instead of specifying a foreach and referring to {{name}}, you can directly reference the attribute by name.

Attribute Values as Lists and Dicts

Attributes can now hold lists and dicts in addition to strings. Example: service: ['dns', 'dhcp'] can be used in Jinja as {{ service[0] }} or {% for svc in service %}.