cmdbsyncer 4.1.0.dev10__tar.gz → 4.1.0.dev11__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (318) hide show
  1. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/PKG-INFO +1 -1
  2. cmdbsyncer-4.1.0.dev11/application/buildinfo.txt +1 -0
  3. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v4.1.md +1 -1
  4. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/inventorize.py +38 -20
  5. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_inventorize.py +27 -24
  6. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/cmdbsyncer.egg-info/PKG-INFO +1 -1
  7. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/pyproject.toml +1 -1
  8. cmdbsyncer-4.1.0.dev10/application/buildinfo.txt +0 -1
  9. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/LICENSE +0 -0
  10. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/README.md +0 -0
  11. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/__init__.py +0 -0
  12. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/_version.py +0 -0
  13. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/api/__init__.py +0 -0
  14. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/api/inventory.py +0 -0
  15. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/api/objects.py +0 -0
  16. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/api/rules.py +0 -0
  17. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/api/syncer.py +0 -0
  18. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/api/views.py +0 -0
  19. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/auth/views.py +0 -0
  20. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/.pages +0 -0
  21. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v3.10.md +0 -0
  22. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v3.11.md +0 -0
  23. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v3.12.md +0 -0
  24. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v3.5.md +0 -0
  25. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v3.7.md +0 -0
  26. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v3.8.md +0 -0
  27. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v3.9.md +0 -0
  28. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/changelog/v4.0.md +0 -0
  29. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/cli.py +0 -0
  30. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/config.py +0 -0
  31. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/docu_links.py +0 -0
  32. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/enterprise.py +0 -0
  33. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/__init__.py +0 -0
  34. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/audit.py +0 -0
  35. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/cron.py +0 -0
  36. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/get_account.py +0 -0
  37. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/inventory.py +0 -0
  38. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/local_config_file.py +0 -0
  39. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/local_config_presets.py +0 -0
  40. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/mongo_keys.py +0 -0
  41. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/notification_channels.py +0 -0
  42. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/notification_dispatch.py +0 -0
  43. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/plugins.py +0 -0
  44. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/sates.py +0 -0
  45. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/sql.py +0 -0
  46. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/syncer_jinja.py +0 -0
  47. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/tablib_formater.py +0 -0
  48. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/tests/__init__.py +0 -0
  49. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/helpers/tests/test_sql.py +0 -0
  50. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/mcp_server.py +0 -0
  51. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/__init__.py +0 -0
  52. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/account.py +0 -0
  53. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/config.py +0 -0
  54. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/cron.py +0 -0
  55. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/field_approval.py +0 -0
  56. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/forms.py +0 -0
  57. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/host.py +0 -0
  58. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/host_inventory_tree.py +0 -0
  59. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/notification_channel.py +0 -0
  60. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/notification_rule.py +0 -0
  61. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/notification_state.py +0 -0
  62. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/saved_search.py +0 -0
  63. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/states.py +0 -0
  64. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/models/user.py +0 -0
  65. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/__init__.py +0 -0
  66. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/custom_attributes/models.py +0 -0
  67. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/custom_attributes/rules.py +0 -0
  68. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/custom_attributes/views.py +0 -0
  69. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/debug.py +0 -0
  70. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/email.py +0 -0
  71. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/inventory/__init__.py +0 -0
  72. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/log/log.py +0 -0
  73. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/log/models.py +0 -0
  74. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/log/views.py +0 -0
  75. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/plugin.py +0 -0
  76. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/rule/__init__.py +0 -0
  77. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/rule/filter.py +0 -0
  78. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/rule/match.py +0 -0
  79. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/rule/models.py +0 -0
  80. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/rule/rewrite.py +0 -0
  81. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/rule/rule.py +0 -0
  82. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/rule/views.py +0 -0
  83. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/modules/statefile.py +0 -0
  84. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/notices/strict_certificate_verification.txt +0 -0
  85. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/__init__.py +0 -0
  86. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/__init__.py +0 -0
  87. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/admin_views.py +0 -0
  88. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/inventory.py +0 -0
  89. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/models.py +0 -0
  90. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/playbook_rules.py +0 -0
  91. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/plugin.json +0 -0
  92. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/rules.py +0 -0
  93. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/runner.py +0 -0
  94. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/site_syncer.py +0 -0
  95. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ansible/views.py +0 -0
  96. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/bmc_remedy/__init__.py +0 -0
  97. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/bmc_remedy/bmc_remedy.py +0 -0
  98. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/bmc_remedy/plugin.json +0 -0
  99. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/__init__.py +0 -0
  100. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/admin_views.py +0 -0
  101. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/bi.py +0 -0
  102. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/cmk2.py +0 -0
  103. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/cmk_rules.py +0 -0
  104. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/dcd.py +0 -0
  105. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/downtimes.py +0 -0
  106. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/groups.py +0 -0
  107. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/helpers.py +0 -0
  108. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/import_v1.py +0 -0
  109. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/import_v2.py +0 -0
  110. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/inits.py +0 -0
  111. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/models.py +0 -0
  112. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/notification_rules.py +0 -0
  113. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/passwords.py +0 -0
  114. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/plugin.json +0 -0
  115. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/poolfolder.py +0 -0
  116. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/rules.py +0 -0
  117. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/sites.py +0 -0
  118. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/syncer.py +0 -0
  119. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tags.py +0 -0
  120. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/__init__.py +0 -0
  121. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_bi.py +0 -0
  122. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_cmk2.py +0 -0
  123. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_cmk_rules.py +0 -0
  124. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_dcd.py +0 -0
  125. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_downtimes.py +0 -0
  126. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_groups.py +0 -0
  127. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_helpers.py +0 -0
  128. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_import_v1.py +0 -0
  129. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_import_v2.py +0 -0
  130. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_notification_rules.py +0 -0
  131. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_passwords.py +0 -0
  132. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_poolfolder.py +0 -0
  133. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_rules.py +0 -0
  134. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_sites.py +0 -0
  135. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_syncer.py +0 -0
  136. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_tags.py +0 -0
  137. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/tests/test_users.py +0 -0
  138. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/users.py +0 -0
  139. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/checkmk/views.py +0 -0
  140. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/cisco_dna/__init__.py +0 -0
  141. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/cisco_dna/plugin.json +0 -0
  142. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/cisco_dna/syncer.py +0 -0
  143. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/cron.py +0 -0
  144. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/csv/__init__.py +0 -0
  145. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/csv/csv.py +0 -0
  146. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/csv/plugin.json +0 -0
  147. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/file_requests.py +0 -0
  148. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/idoit/__init__.py +0 -0
  149. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/idoit/admin_views.py +0 -0
  150. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/idoit/models.py +0 -0
  151. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/idoit/plugin.json +0 -0
  152. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/idoit/rules.py +0 -0
  153. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/idoit/syncer.py +0 -0
  154. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/idoit/views.py +0 -0
  155. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jdisc/__init__.py +0 -0
  156. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jdisc/applications.py +0 -0
  157. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jdisc/devices.py +0 -0
  158. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jdisc/executables.py +0 -0
  159. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jdisc/jdisc.py +0 -0
  160. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jdisc/plugin.json +0 -0
  161. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jira/__init__.py +0 -0
  162. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jira/jira.py +0 -0
  163. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jira/plugin.json +0 -0
  164. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jira_cloud/__init__.py +0 -0
  165. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jira_cloud/jira_cloud.py +0 -0
  166. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/jira_cloud/plugin.json +0 -0
  167. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/json/__init__.py +0 -0
  168. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/json/json.py +0 -0
  169. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/json/plugin.json +0 -0
  170. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ldap/__init__.py +0 -0
  171. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ldap/ldap.py +0 -0
  172. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/ldap/plugin.json +0 -0
  173. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/maintenance/__init__.py +0 -0
  174. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/maintenance/plugin.json +0 -0
  175. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/mssql/__init__.py +0 -0
  176. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/mssql/plugin.json +0 -0
  177. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/mysql/__init__.py +0 -0
  178. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/mysql/mysql.py +0 -0
  179. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/mysql/plugin.json +0 -0
  180. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/__init__.py +0 -0
  181. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/admin_views.py +0 -0
  182. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/cluster.py +0 -0
  183. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/contacts.py +0 -0
  184. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/dataflow.py +0 -0
  185. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/devices.py +0 -0
  186. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/interfaces.py +0 -0
  187. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/ips.py +0 -0
  188. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/models.py +0 -0
  189. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/netbox.py +0 -0
  190. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/networks.py +0 -0
  191. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/plugin.json +0 -0
  192. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/prefixes.py +0 -0
  193. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/rules.py +0 -0
  194. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/views.py +0 -0
  195. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/netbox/virtualmachines.py +0 -0
  196. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/prtg/__init__.py +0 -0
  197. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/prtg/plugin.json +0 -0
  198. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/prtg/prtg.py +0 -0
  199. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/pyodbc/__init__.py +0 -0
  200. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/pyodbc/plugin.json +0 -0
  201. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/pyodbc/pyodbc.py +0 -0
  202. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rest/__init__.py +0 -0
  203. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rest/plugin.json +0 -0
  204. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rest/rest.py +0 -0
  205. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rules/__init__.py +0 -0
  206. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rules/admin_views.py +0 -0
  207. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rules/autorules.py +0 -0
  208. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rules/models.py +0 -0
  209. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rules/plugin.json +0 -0
  210. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rules/rule_definitions.py +0 -0
  211. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rules/rule_import_export.py +0 -0
  212. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/rules/views.py +0 -0
  213. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/syncer_shell.py +0 -0
  214. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/vmware/__init__.py +0 -0
  215. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/vmware/admin_views.py +0 -0
  216. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/vmware/custom_attributes.py +0 -0
  217. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/vmware/models.py +0 -0
  218. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/vmware/plugin.json +0 -0
  219. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/vmware/rules.py +0 -0
  220. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/vmware/views.py +0 -0
  221. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/vmware/vmware.py +0 -0
  222. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/yml/__init__.py +0 -0
  223. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/yml/plugin.json +0 -0
  224. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins/yml/yml.py +0 -0
  225. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/plugins_cli.py +0 -0
  226. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/static/css/cmdbsyncer.css +0 -0
  227. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/static/js/main.js +0 -0
  228. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/static/logo_white.png +0 -0
  229. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/_brand.html +0 -0
  230. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/_theme.html +0 -0
  231. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/_host_tabs.html +0 -0
  232. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/account_pick_type.html +0 -0
  233. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/ansible_playbook_run.html +0 -0
  234. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/ansible_project_detail.html +0 -0
  235. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/ansible_rule_list.html +0 -0
  236. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/bulk_label_form.html +0 -0
  237. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/changelog_archive.html +0 -0
  238. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/checkmk_rule_mngmt_list.html +0 -0
  239. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/checkmk_settings_list.html +0 -0
  240. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/copy_as_new_form.html +0 -0
  241. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/data_quality.html +0 -0
  242. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/file/list.html +0 -0
  243. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/file/modals/form.html +0 -0
  244. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/host_details.html +0 -0
  245. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/host_edit.html +0 -0
  246. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/host_inventory_tree.html +0 -0
  247. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/host_list.html +0 -0
  248. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/host_relations_graph.html +0 -0
  249. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/host_timeline.html +0 -0
  250. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/index.html +0 -0
  251. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/local_config_editor.html +0 -0
  252. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/master.html +0 -0
  253. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/model/clone_confirm.html +0 -0
  254. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/model/inline_list_base.html +0 -0
  255. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/object_list.html +0 -0
  256. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/set_cmk_version_form.html +0 -0
  257. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/admin/set_template_form.html +0 -0
  258. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/base.html +0 -0
  259. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/change_password.html +0 -0
  260. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/debug.html +0 -0
  261. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/debug_host.html +0 -0
  262. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/email/newuser.html +0 -0
  263. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/email/notification.html +0 -0
  264. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/email/resetpassword.html +0 -0
  265. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/formular.html +0 -0
  266. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/license_info.html +0 -0
  267. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/login.html +0 -0
  268. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/logout_confirm.html +0 -0
  269. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/request_password.html +0 -0
  270. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/set_2fa.html +0 -0
  271. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/templates/set_theme.html +0 -0
  272. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/themes/dracula.css +0 -0
  273. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/themes/gruvbox-dark.css +0 -0
  274. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/themes/gruvbox-light.css +0 -0
  275. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/themes/nord.css +0 -0
  276. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/themes_registry.py +0 -0
  277. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/_form_fields.py +0 -0
  278. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/_form_sections.py +0 -0
  279. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/account.py +0 -0
  280. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/config.py +0 -0
  281. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/cron.py +0 -0
  282. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/data_quality.py +0 -0
  283. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/default.py +0 -0
  284. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/field_approval.py +0 -0
  285. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/fileadmin.py +0 -0
  286. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/host.py +0 -0
  287. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/host_filters.py +0 -0
  288. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/host_renderers.py +0 -0
  289. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/host_widgets.py +0 -0
  290. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/license.py +0 -0
  291. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/notification_channel.py +0 -0
  292. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/notification_rule.py +0 -0
  293. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/saved_search.py +0 -0
  294. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/application/views/user.py +0 -0
  295. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/cmdbsyncer.egg-info/SOURCES.txt +0 -0
  296. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/cmdbsyncer.egg-info/dependency_links.txt +0 -0
  297. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/cmdbsyncer.egg-info/entry_points.txt +0 -0
  298. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/cmdbsyncer.egg-info/requires.txt +0 -0
  299. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/cmdbsyncer.egg-info/top_level.txt +0 -0
  300. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/requirements-ansible.txt +0 -0
  301. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/requirements-extras.txt +0 -0
  302. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/requirements.txt +0 -0
  303. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/setup.cfg +0 -0
  304. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/syncerapi/__init__.py +0 -0
  305. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/syncerapi/v1/__init__.py +0 -0
  306. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/syncerapi/v1/core/__init__.py +0 -0
  307. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/syncerapi/v1/inventory/__init__.py +0 -0
  308. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/syncerapi/v1/rest/__init__.py +0 -0
  309. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_api.py +0 -0
  310. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_api_csrf_invariant.py +0 -0
  311. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_default_view.py +0 -0
  312. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_mongo_keys.py +0 -0
  313. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_plugin.py +0 -0
  314. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_plugin_ssti.py +0 -0
  315. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_plugins_cli.py +0 -0
  316. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_rule.py +0 -0
  317. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_rule_match.py +0 -0
  318. {cmdbsyncer-4.1.0.dev10 → cmdbsyncer-4.1.0.dev11}/tests/test_webhook_token_hash.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cmdbsyncer
3
- Version: 4.1.0.dev10
3
+ Version: 4.1.0.dev11
4
4
  Summary: Rule-based modular synchronizer for Checkmk, Netbox, Ansible, I-DOIT, Jira CMDB and 15+ other CMDB/monitoring systems
5
5
  Author-email: Kuhn & Ruess GmbH <info@kuhn-ruess.de>
6
6
  Maintainer-email: Bastian Kuhn <mail@bastian-kuhn.de>
@@ -0,0 +1 @@
1
+ BUILD_DATE=2026-05-11T11:52:21Z
@@ -53,7 +53,7 @@
53
53
  - FEAT: Quick-search on Rule Management matches name and ruleset
54
54
  - FIX: Saving a rule with outcomes that target different rulesets is rejected with a flash
55
55
  - FEAT: New "Manage Notification Rules" view exports notification rules to Checkmk 2.4 / 2.5 with `cmdbsyncer checkmk export_notifications`; admin edits are detected and corrected on the next run
56
- - FIX: HW/SW inventorize no longer fails with an instant "Timeout error" each multiprocessing worker gets its own MongoDB connection, the legacy `host_inv_api.py` endpoint is called directly with HTTP Basic auth instead of the REST API's Bearer wrapper, and on failure the failing hostname, exception type, full traceback and (for non-JSON HTTP errors) the response status and body are reported
56
+ - FIX: HW/SW inventorize fetches the inventory tree via the REST API's `host_mk_inventory` Livestatus column instead of the legacy `host_inv_api.py` endpoint works behind OIDC/SSO proxies that block the Multisite path. Each multiprocessing worker also gets its own MongoDB connection, and on failure the failing hostname, exception type and full traceback are reported instead of a misleading "Timeout error"
57
57
 
58
58
  ### API
59
59
  - FEAT: `/api/v1/objects/<hostname>/relations` reads, adds and removes typed Host relations (CMDB_MODE only)
@@ -2,6 +2,9 @@
2
2
  Checkmk Inventorize
3
3
  """
4
4
  # pylint: disable=too-many-locals,too-many-branches,too-many-nested-blocks,duplicate-code
5
+ import ast
6
+ import base64
7
+ import binascii
5
8
  import datetime
6
9
  import hashlib
7
10
  import json
@@ -79,27 +82,42 @@ class InventorizeHosts(CMK2): # pylint: disable=too-many-instance-attributes
79
82
  IPC boundary; shipping a 100-500 KB blob per host through the
80
83
  result pipe was a runtime catastrophe at scale.
81
84
  """
82
- # host_inv_api.py is the legacy Multisite endpoint, not the REST
83
- # API. self.request() adds a Bearer Authorization header and
84
- # REST-flavoured error parsing both useless here and the Bearer
85
- # gets the request rejected with an HTML 401 login page on
86
- # stricter Checkmk setups. Call inner_request directly with HTTP
87
- # Basic so we hit the Multisite endpoint with the auth scheme it
88
- # actually understands.
89
- address = self.config['address']
90
- url = f"{address}/check_mk/host_inv_api.py"
91
- auth = (self.config['username'], self.config['password'])
92
- params = {'host': hostname, 'output_format': 'json'}
93
- response = self.inner_request('GET', url, params=params, auth=auth)
94
- if response.status_code != 200:
95
- body = (response.text or '').strip().replace('\n', ' ')
96
- if len(body) > 300:
97
- body = body[:300] + '…'
85
+ # Pull the inventory tree via the Livestatus column
86
+ # ``host_mk_inventory`` on the REST API. host_inv_api.py is the
87
+ # legacy Multisite endpoint and is unreachable behind OIDC/SSO
88
+ # proxies (they intercept it before Checkmk sees the Bearer
89
+ # token). The REST API stays Bearer-auth'd, so this path works
90
+ # behind any auth proxy the GUI is normally fronted by. The blob
91
+ # comes back base64-encoded as a Python ``repr()`` of the
92
+ # inventory tree — same key casing (Attributes/Nodes/Pairs/…) as
93
+ # host_inv_api.py, so flatten_inventory below works unchanged.
94
+ url = "domain-types/service/collections/all"
95
+ query = {
96
+ "op": "and",
97
+ "expr": [
98
+ {"op": "=", "left": "description", "right": "Check_MK"},
99
+ {"op": "=", "left": "host_name", "right": hostname},
100
+ ],
101
+ }
102
+ params = {
103
+ "query": json.dumps(query),
104
+ "columns": ['host_mk_inventory'],
105
+ }
106
+ api_response = self.request(url, params=params, method="GET")
107
+ rows = api_response[0].get('value') or []
108
+ if not rows:
109
+ return hostname, None
110
+ raw = rows[0].get('extensions', {}).get('host_mk_inventory') or {}
111
+ encoded = raw.get('value') if isinstance(raw, dict) else None
112
+ if not encoded:
113
+ return hostname, None
114
+ try:
115
+ text = base64.b64decode(encoded).decode('utf-8', 'replace')
116
+ dict_inventory = ast.literal_eval(text) if text else None
117
+ except (binascii.Error, ValueError, SyntaxError) as exc:
98
118
  raise CmkException(
99
- f"HTTP {response.status_code} GET {url}?host={hostname}: "
100
- f"{body or '<empty response body>'}"
101
- )
102
- dict_inventory = response.json()['result'][hostname]
119
+ f"host_mk_inventory parse failed for {hostname}: {exc}"
120
+ ) from exc
103
121
  if not dict_inventory:
104
122
  return hostname, None
105
123
 
@@ -2,10 +2,11 @@
2
2
  Unit tests for checkmk inventorize module
3
3
  """
4
4
  # pylint: disable=missing-function-docstring,protected-access,unused-argument,no-value-for-parameter
5
+ import base64
5
6
  import hashlib
6
7
  import json
7
8
  import unittest
8
- from unittest.mock import MagicMock, Mock, patch
9
+ from unittest.mock import Mock, patch
9
10
 
10
11
  from application.plugins.checkmk.inventorize import (
11
12
  InventorizeHosts,
@@ -23,9 +24,7 @@ class TestInventorizeHosts(unittest.TestCase):
23
24
  def mock_init(self_param, account=False):
24
25
  base_mock_init(self_param,
25
26
  account_name='Test Account', debug=False,
26
- config={'address': 'https://cmk.test',
27
- 'username': 'u', 'password': 'p',
28
- 'settings': {}},
27
+ config={'settings': {}},
29
28
  fields={}, found_hosts=set(),
30
29
  status_inventory={}, hw_sw_inventory={},
31
30
  service_label_inventory={}, config_inventory={},
@@ -99,28 +98,26 @@ class TestInventorizeHosts(unittest.TestCase):
99
98
  mock_host.objects.assert_called_once_with(hostname__in=['unknown_host'])
100
99
 
101
100
  def test_get_hw_sw_inventory_data_success(self):
102
- api_payload = {
103
- 'result': {
104
- 'host1': {
105
- 'Attributes': {
106
- 'Pairs': {'model': 'PowerEdge'}
107
- },
108
- 'Nodes': {
109
- 'hardware': {
110
- 'Attributes': {
111
- 'Pairs': {'cpu_model': 'Xeon'}
112
- }
113
- }
114
- }
101
+ inventory_tree = {
102
+ 'Attributes': {'Pairs': {'model': 'PowerEdge'}},
103
+ 'Nodes': {
104
+ 'hardware': {
105
+ 'Attributes': {'Pairs': {'cpu_model': 'Xeon'}}
115
106
  }
116
- }
107
+ },
117
108
  }
118
- mock_response = MagicMock(status_code=200)
119
- mock_response.json.return_value = api_payload
109
+ encoded = base64.b64encode(repr(inventory_tree).encode('utf-8')).decode('ascii')
110
+ api_response = ({
111
+ 'value': [{
112
+ 'extensions': {
113
+ 'host_mk_inventory': {'value': encoded}
114
+ }
115
+ }]
116
+ }, {})
120
117
 
121
118
  self.inv.fields = {'cmk_inventory': ['model*', 'hardware*']}
122
119
 
123
- with patch.object(self.inv, 'inner_request', return_value=mock_response), \
120
+ with patch.object(self.inv, 'request', return_value=api_response), \
124
121
  patch.object(self.inv, '_save_inventory_tree') as save_tree:
125
122
  hostname, data = self.inv.get_hw_sw_inventory_data('host1')
126
123
 
@@ -196,12 +193,18 @@ class TestInventorizeHosts(unittest.TestCase):
196
193
  validate_mongo_keys(self.inv.config_inventory['host1'], 'inventory')
197
194
 
198
195
  def test_get_hw_sw_inventory_data_empty(self):
199
- mock_response = MagicMock(status_code=200)
200
- mock_response.json.return_value = {'result': {'host1': None}}
196
+ # Host known but no inventory column populated yet — empty value
197
+ # string. The new REST path returns (hostname, None) without
198
+ # touching the side-doc.
199
+ api_response = ({
200
+ 'value': [{
201
+ 'extensions': {'host_mk_inventory': {'value': ''}}
202
+ }]
203
+ }, {})
201
204
 
202
205
  self.inv.fields = {'cmk_inventory': ['model']}
203
206
 
204
- with patch.object(self.inv, 'inner_request', return_value=mock_response), \
207
+ with patch.object(self.inv, 'request', return_value=api_response), \
205
208
  patch.object(self.inv, '_save_inventory_tree') as save_tree:
206
209
  hostname, data = self.inv.get_hw_sw_inventory_data('host1')
207
210
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cmdbsyncer
3
- Version: 4.1.0.dev10
3
+ Version: 4.1.0.dev11
4
4
  Summary: Rule-based modular synchronizer for Checkmk, Netbox, Ansible, I-DOIT, Jira CMDB and 15+ other CMDB/monitoring systems
5
5
  Author-email: Kuhn & Ruess GmbH <info@kuhn-ruess.de>
6
6
  Maintainer-email: Bastian Kuhn <mail@bastian-kuhn.de>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "cmdbsyncer"
7
- version = "4.1.0.dev10"
7
+ version = "4.1.0.dev11"
8
8
  description = "Rule-based modular synchronizer for Checkmk, Netbox, Ansible, I-DOIT, Jira CMDB and 15+ other CMDB/monitoring systems"
9
9
  readme = "README.md"
10
10
  license = { text = "MIT" }
@@ -1 +0,0 @@
1
- BUILD_DATE=2026-05-11T11:26:20Z