cmdbsyncer 4.1.0.dev6__tar.gz → 4.1.0.dev8__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.dev6 → cmdbsyncer-4.1.0.dev8}/PKG-INFO +1 -1
  2. cmdbsyncer-4.1.0.dev8/application/buildinfo.txt +1 -0
  3. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v4.1.md +4 -0
  4. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/log/views.py +10 -5
  5. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/cmk2.py +17 -4
  6. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/inventorize.py +33 -7
  7. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/cmdbsyncer.egg-info/PKG-INFO +1 -1
  8. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/pyproject.toml +1 -1
  9. cmdbsyncer-4.1.0.dev6/application/buildinfo.txt +0 -1
  10. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/LICENSE +0 -0
  11. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/README.md +0 -0
  12. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/__init__.py +0 -0
  13. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/_version.py +0 -0
  14. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/api/__init__.py +0 -0
  15. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/api/inventory.py +0 -0
  16. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/api/objects.py +0 -0
  17. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/api/rules.py +0 -0
  18. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/api/syncer.py +0 -0
  19. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/api/views.py +0 -0
  20. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/auth/views.py +0 -0
  21. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/.pages +0 -0
  22. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v3.10.md +0 -0
  23. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v3.11.md +0 -0
  24. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v3.12.md +0 -0
  25. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v3.5.md +0 -0
  26. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v3.7.md +0 -0
  27. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v3.8.md +0 -0
  28. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v3.9.md +0 -0
  29. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/changelog/v4.0.md +0 -0
  30. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/cli.py +0 -0
  31. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/config.py +0 -0
  32. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/docu_links.py +0 -0
  33. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/enterprise.py +0 -0
  34. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/__init__.py +0 -0
  35. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/audit.py +0 -0
  36. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/cron.py +0 -0
  37. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/get_account.py +0 -0
  38. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/inventory.py +0 -0
  39. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/local_config_file.py +0 -0
  40. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/local_config_presets.py +0 -0
  41. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/mongo_keys.py +0 -0
  42. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/notification_channels.py +0 -0
  43. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/notification_dispatch.py +0 -0
  44. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/plugins.py +0 -0
  45. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/sates.py +0 -0
  46. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/sql.py +0 -0
  47. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/syncer_jinja.py +0 -0
  48. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/tablib_formater.py +0 -0
  49. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/tests/__init__.py +0 -0
  50. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/helpers/tests/test_sql.py +0 -0
  51. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/mcp_server.py +0 -0
  52. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/__init__.py +0 -0
  53. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/account.py +0 -0
  54. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/config.py +0 -0
  55. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/cron.py +0 -0
  56. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/field_approval.py +0 -0
  57. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/forms.py +0 -0
  58. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/host.py +0 -0
  59. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/host_inventory_tree.py +0 -0
  60. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/notification_channel.py +0 -0
  61. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/notification_rule.py +0 -0
  62. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/notification_state.py +0 -0
  63. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/saved_search.py +0 -0
  64. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/states.py +0 -0
  65. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/models/user.py +0 -0
  66. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/__init__.py +0 -0
  67. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/custom_attributes/models.py +0 -0
  68. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/custom_attributes/rules.py +0 -0
  69. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/custom_attributes/views.py +0 -0
  70. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/debug.py +0 -0
  71. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/email.py +0 -0
  72. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/inventory/__init__.py +0 -0
  73. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/log/log.py +0 -0
  74. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/log/models.py +0 -0
  75. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/plugin.py +0 -0
  76. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/rule/__init__.py +0 -0
  77. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/rule/filter.py +0 -0
  78. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/rule/match.py +0 -0
  79. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/rule/models.py +0 -0
  80. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/rule/rewrite.py +0 -0
  81. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/rule/rule.py +0 -0
  82. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/rule/views.py +0 -0
  83. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/modules/statefile.py +0 -0
  84. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/notices/strict_certificate_verification.txt +0 -0
  85. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/__init__.py +0 -0
  86. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/__init__.py +0 -0
  87. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/admin_views.py +0 -0
  88. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/inventory.py +0 -0
  89. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/models.py +0 -0
  90. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/playbook_rules.py +0 -0
  91. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/plugin.json +0 -0
  92. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/rules.py +0 -0
  93. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/runner.py +0 -0
  94. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/site_syncer.py +0 -0
  95. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ansible/views.py +0 -0
  96. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/bmc_remedy/__init__.py +0 -0
  97. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/bmc_remedy/bmc_remedy.py +0 -0
  98. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/bmc_remedy/plugin.json +0 -0
  99. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/__init__.py +0 -0
  100. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/admin_views.py +0 -0
  101. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/bi.py +0 -0
  102. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/cmk_rules.py +0 -0
  103. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/dcd.py +0 -0
  104. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/downtimes.py +0 -0
  105. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/groups.py +0 -0
  106. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/helpers.py +0 -0
  107. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/import_v1.py +0 -0
  108. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/import_v2.py +0 -0
  109. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/inits.py +0 -0
  110. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/models.py +0 -0
  111. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/notification_rules.py +0 -0
  112. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/passwords.py +0 -0
  113. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/plugin.json +0 -0
  114. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/poolfolder.py +0 -0
  115. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/rules.py +0 -0
  116. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/sites.py +0 -0
  117. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/syncer.py +0 -0
  118. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tags.py +0 -0
  119. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/__init__.py +0 -0
  120. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_bi.py +0 -0
  121. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_cmk2.py +0 -0
  122. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_cmk_rules.py +0 -0
  123. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_dcd.py +0 -0
  124. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_downtimes.py +0 -0
  125. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_groups.py +0 -0
  126. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_helpers.py +0 -0
  127. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_import_v1.py +0 -0
  128. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_import_v2.py +0 -0
  129. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_inventorize.py +0 -0
  130. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_notification_rules.py +0 -0
  131. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_passwords.py +0 -0
  132. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_poolfolder.py +0 -0
  133. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_rules.py +0 -0
  134. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_sites.py +0 -0
  135. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_syncer.py +0 -0
  136. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_tags.py +0 -0
  137. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/tests/test_users.py +0 -0
  138. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/users.py +0 -0
  139. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/checkmk/views.py +0 -0
  140. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/cisco_dna/__init__.py +0 -0
  141. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/cisco_dna/plugin.json +0 -0
  142. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/cisco_dna/syncer.py +0 -0
  143. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/cron.py +0 -0
  144. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/csv/__init__.py +0 -0
  145. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/csv/csv.py +0 -0
  146. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/csv/plugin.json +0 -0
  147. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/file_requests.py +0 -0
  148. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/idoit/__init__.py +0 -0
  149. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/idoit/admin_views.py +0 -0
  150. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/idoit/models.py +0 -0
  151. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/idoit/plugin.json +0 -0
  152. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/idoit/rules.py +0 -0
  153. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/idoit/syncer.py +0 -0
  154. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/idoit/views.py +0 -0
  155. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jdisc/__init__.py +0 -0
  156. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jdisc/applications.py +0 -0
  157. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jdisc/devices.py +0 -0
  158. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jdisc/executables.py +0 -0
  159. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jdisc/jdisc.py +0 -0
  160. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jdisc/plugin.json +0 -0
  161. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jira/__init__.py +0 -0
  162. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jira/jira.py +0 -0
  163. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jira/plugin.json +0 -0
  164. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jira_cloud/__init__.py +0 -0
  165. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jira_cloud/jira_cloud.py +0 -0
  166. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/jira_cloud/plugin.json +0 -0
  167. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/json/__init__.py +0 -0
  168. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/json/json.py +0 -0
  169. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/json/plugin.json +0 -0
  170. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ldap/__init__.py +0 -0
  171. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ldap/ldap.py +0 -0
  172. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/ldap/plugin.json +0 -0
  173. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/maintenance/__init__.py +0 -0
  174. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/maintenance/plugin.json +0 -0
  175. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/mssql/__init__.py +0 -0
  176. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/mssql/plugin.json +0 -0
  177. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/mysql/__init__.py +0 -0
  178. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/mysql/mysql.py +0 -0
  179. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/mysql/plugin.json +0 -0
  180. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/__init__.py +0 -0
  181. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/admin_views.py +0 -0
  182. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/cluster.py +0 -0
  183. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/contacts.py +0 -0
  184. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/dataflow.py +0 -0
  185. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/devices.py +0 -0
  186. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/interfaces.py +0 -0
  187. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/ips.py +0 -0
  188. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/models.py +0 -0
  189. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/netbox.py +0 -0
  190. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/networks.py +0 -0
  191. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/plugin.json +0 -0
  192. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/prefixes.py +0 -0
  193. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/rules.py +0 -0
  194. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/views.py +0 -0
  195. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/netbox/virtualmachines.py +0 -0
  196. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/prtg/__init__.py +0 -0
  197. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/prtg/plugin.json +0 -0
  198. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/prtg/prtg.py +0 -0
  199. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/pyodbc/__init__.py +0 -0
  200. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/pyodbc/plugin.json +0 -0
  201. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/pyodbc/pyodbc.py +0 -0
  202. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rest/__init__.py +0 -0
  203. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rest/plugin.json +0 -0
  204. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rest/rest.py +0 -0
  205. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rules/__init__.py +0 -0
  206. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rules/admin_views.py +0 -0
  207. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rules/autorules.py +0 -0
  208. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rules/models.py +0 -0
  209. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rules/plugin.json +0 -0
  210. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rules/rule_definitions.py +0 -0
  211. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rules/rule_import_export.py +0 -0
  212. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/rules/views.py +0 -0
  213. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/syncer_shell.py +0 -0
  214. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/vmware/__init__.py +0 -0
  215. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/vmware/admin_views.py +0 -0
  216. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/vmware/custom_attributes.py +0 -0
  217. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/vmware/models.py +0 -0
  218. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/vmware/plugin.json +0 -0
  219. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/vmware/rules.py +0 -0
  220. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/vmware/views.py +0 -0
  221. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/vmware/vmware.py +0 -0
  222. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/yml/__init__.py +0 -0
  223. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/yml/plugin.json +0 -0
  224. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins/yml/yml.py +0 -0
  225. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/plugins_cli.py +0 -0
  226. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/static/css/cmdbsyncer.css +0 -0
  227. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/static/js/main.js +0 -0
  228. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/static/logo_white.png +0 -0
  229. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/_brand.html +0 -0
  230. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/_theme.html +0 -0
  231. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/_host_tabs.html +0 -0
  232. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/account_pick_type.html +0 -0
  233. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/ansible_playbook_run.html +0 -0
  234. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/ansible_project_detail.html +0 -0
  235. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/ansible_rule_list.html +0 -0
  236. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/bulk_label_form.html +0 -0
  237. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/changelog_archive.html +0 -0
  238. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/checkmk_rule_mngmt_list.html +0 -0
  239. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/checkmk_settings_list.html +0 -0
  240. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/copy_as_new_form.html +0 -0
  241. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/data_quality.html +0 -0
  242. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/file/list.html +0 -0
  243. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/file/modals/form.html +0 -0
  244. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/host_details.html +0 -0
  245. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/host_edit.html +0 -0
  246. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/host_inventory_tree.html +0 -0
  247. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/host_list.html +0 -0
  248. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/host_relations_graph.html +0 -0
  249. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/host_timeline.html +0 -0
  250. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/index.html +0 -0
  251. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/local_config_editor.html +0 -0
  252. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/master.html +0 -0
  253. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/model/clone_confirm.html +0 -0
  254. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/model/inline_list_base.html +0 -0
  255. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/object_list.html +0 -0
  256. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/set_cmk_version_form.html +0 -0
  257. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/admin/set_template_form.html +0 -0
  258. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/base.html +0 -0
  259. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/change_password.html +0 -0
  260. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/debug.html +0 -0
  261. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/debug_host.html +0 -0
  262. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/email/newuser.html +0 -0
  263. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/email/notification.html +0 -0
  264. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/email/resetpassword.html +0 -0
  265. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/formular.html +0 -0
  266. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/license_info.html +0 -0
  267. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/login.html +0 -0
  268. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/logout_confirm.html +0 -0
  269. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/request_password.html +0 -0
  270. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/set_2fa.html +0 -0
  271. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/templates/set_theme.html +0 -0
  272. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/themes/dracula.css +0 -0
  273. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/themes/gruvbox-dark.css +0 -0
  274. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/themes/gruvbox-light.css +0 -0
  275. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/themes/nord.css +0 -0
  276. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/themes_registry.py +0 -0
  277. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/_form_fields.py +0 -0
  278. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/_form_sections.py +0 -0
  279. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/account.py +0 -0
  280. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/config.py +0 -0
  281. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/cron.py +0 -0
  282. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/data_quality.py +0 -0
  283. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/default.py +0 -0
  284. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/field_approval.py +0 -0
  285. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/fileadmin.py +0 -0
  286. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/host.py +0 -0
  287. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/host_filters.py +0 -0
  288. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/host_renderers.py +0 -0
  289. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/host_widgets.py +0 -0
  290. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/license.py +0 -0
  291. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/notification_channel.py +0 -0
  292. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/notification_rule.py +0 -0
  293. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/saved_search.py +0 -0
  294. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/application/views/user.py +0 -0
  295. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/cmdbsyncer.egg-info/SOURCES.txt +0 -0
  296. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/cmdbsyncer.egg-info/dependency_links.txt +0 -0
  297. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/cmdbsyncer.egg-info/entry_points.txt +0 -0
  298. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/cmdbsyncer.egg-info/requires.txt +0 -0
  299. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/cmdbsyncer.egg-info/top_level.txt +0 -0
  300. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/requirements-ansible.txt +0 -0
  301. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/requirements-extras.txt +0 -0
  302. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/requirements.txt +0 -0
  303. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/setup.cfg +0 -0
  304. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/syncerapi/__init__.py +0 -0
  305. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/syncerapi/v1/__init__.py +0 -0
  306. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/syncerapi/v1/core/__init__.py +0 -0
  307. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/syncerapi/v1/inventory/__init__.py +0 -0
  308. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/syncerapi/v1/rest/__init__.py +0 -0
  309. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_api.py +0 -0
  310. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_api_csrf_invariant.py +0 -0
  311. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_default_view.py +0 -0
  312. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_mongo_keys.py +0 -0
  313. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_plugin.py +0 -0
  314. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_plugin_ssti.py +0 -0
  315. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_plugins_cli.py +0 -0
  316. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_rule.py +0 -0
  317. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/tests/test_rule_match.py +0 -0
  318. {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev8}/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.dev6
3
+ Version: 4.1.0.dev8
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-11T10:58:19Z
@@ -53,6 +53,9 @@
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: Checkmk HW/SW inventorize multiprocessing pool initialises a fresh MongoDB connection per worker so writes no longer fail with an instant "Timeout error"
57
+ - FIX: Checkmk HW/SW inventory worker errors show the failing hostname, exception type and full traceback instead of a misleading "Timeout error"
58
+ - FIX: Checkmk API errors with a non-JSON body (HTML error page, auth redirect, disabled endpoint) report status code, URL and body snippet instead of the useless message "None NoneNone"
56
59
 
57
60
  ### API
58
61
  - FEAT: `/api/v1/objects/<hostname>/relations` reads, adds and removes typed Host relations (CMDB_MODE only)
@@ -83,6 +86,7 @@
83
86
  - FEAT: Set Theme, Set 2FA and Change Password pages now keep the admin navigation
84
87
  - FIX: Settings → License menu entry is hidden on Community Edition installs (no enterprise package present), so admins are not pointed at a page with no upload form and an empty feature table
85
88
  - FIX: PyPI installs ship the bundled theme CSS files (Gruvbox Dark / Light, Nord, Dracula) so the theme picker actually shows themes other than Default
89
+ - FIX: Log details and traceback boxes pick up theme colours so they no longer render as a half-white card on Gruvbox Dark / Nord / Dracula
86
90
 
87
91
  ### Plugin runtime
88
92
  - FIX: HTTP sessions and CA-cert temp files are released even when a plugin's init fails
@@ -17,7 +17,8 @@ def format_log(_view, _ctx, model, _path):
17
17
  rows = ''.join(
18
18
  '<tr>'
19
19
  '<th style="width:1%;vertical-align:top;padding:2px 8px 2px 0;'
20
- f'white-space:nowrap;color:#666;font-weight:600;">{escape(entry.level)}</th>'
20
+ 'white-space:nowrap;color:var(--surface-muted,#666);'
21
+ f'font-weight:600;">{escape(entry.level)}</th>'
21
22
  '<td style="vertical-align:top;word-break:break-word;'
22
23
  f'overflow-wrap:anywhere;white-space:pre-wrap;">{escape(entry.message)}</td>'
23
24
  '</tr>'
@@ -34,19 +35,23 @@ def format_traceback(_view, _ctx, model, _path):
34
35
  """
35
36
  Tracebacks are routinely 30-80 lines and would otherwise blow up the
36
37
  detail card. Render them inside a collapsed `<details>` so the row
37
- stays scannable and the operator can pop it open on click.
38
+ stays scannable and the operator can pop it open on click. Colours
39
+ come from theme tokens so the `<pre>` block doesn't show up as a
40
+ white card on Gruvbox/Nord/Dracula rows.
38
41
  """
39
42
  trace = (model.traceback or '').strip()
40
43
  if not trace or trace == 'NoneType: None':
41
44
  return ''
42
45
  return Markup(
43
46
  '<details style="margin:0;">'
44
- '<summary style="cursor:pointer;color:#2c5d99;'
47
+ '<summary style="cursor:pointer;color:var(--surface-muted,#2c5d99);'
45
48
  'font-family:ui-monospace,monospace;font-size:0.88rem;">'
46
49
  'Show traceback</summary>'
47
50
  '<pre style="margin-top:6px;padding:8px 10px;'
48
- 'background:#f6f8fa;border:1px solid #e2e6ea;border-radius:6px;'
49
- 'font-size:0.82rem;white-space:pre-wrap;'
51
+ 'background:var(--surface-subtle,#f6f8fa);'
52
+ 'border:1px solid var(--surface-border,#e2e6ea);'
53
+ 'color:var(--surface-text,inherit);'
54
+ 'border-radius:6px;font-size:0.82rem;white-space:pre-wrap;'
50
55
  f'overflow-x:auto;">{escape(trace)}</pre>'
51
56
  '</details>'
52
57
  )
@@ -91,7 +91,7 @@ class CMK2(Plugin):
91
91
  ) from exc
92
92
 
93
93
 
94
- def request(self, url, method='GET', data=None, # pylint: disable=too-many-arguments,too-many-positional-arguments,too-many-locals
94
+ def request(self, url, method='GET', data=None, # pylint: disable=too-many-arguments,too-many-positional-arguments,too-many-locals,too-many-branches
95
95
  params=None, additional_header=None, api_version="api/1.0/"):
96
96
  """
97
97
  Handle Request to CMK
@@ -140,9 +140,22 @@ class CMK2(Plugin):
140
140
  return {}, {"error": "Object not found"}
141
141
  if response.status_code != 200:
142
142
  if response_json.get('title') not in error_whitelist:
143
- raise CmkException(f"{response_json.get('title')} "\
144
- f"{response_json.get('detail')}"\
145
- f"{response_json.get('fields')}")
143
+ title = response_json.get('title')
144
+ detail = response_json.get('detail')
145
+ fields = response_json.get('fields')
146
+ if title is None and detail is None and fields is None:
147
+ # Non-JSON error body (HTML error page, auth
148
+ # redirect, legacy endpoint disabled, …) — surface
149
+ # status + URL + a body snippet so the failure is
150
+ # debuggable instead of a useless "None NoneNone".
151
+ body = (response.text or '').strip().replace('\n', ' ')
152
+ if len(body) > 300:
153
+ body = body[:300] + '…'
154
+ raise CmkException(
155
+ f"HTTP {response.status_code} {method.upper()} "
156
+ f"{url}: {body or '<empty response body>'}"
157
+ )
158
+ raise CmkException(f"{title} {detail}{fields}")
146
159
  return {}, {'status_code': response.status_code}
147
160
  resp_header['status_code'] = response.status_code
148
161
 
@@ -6,9 +6,11 @@ import datetime
6
6
  import hashlib
7
7
  import json
8
8
  import multiprocessing
9
+ import traceback
9
10
 
10
11
  from rich.progress import Progress, SpinnerColumn, TimeElapsedColumn, MofNCompleteColumn
11
12
 
13
+ from application import init_db
12
14
  from application.models.host import Host, app
13
15
  from application.models.host_inventory_tree import (
14
16
  HostInventoryTree,
@@ -140,23 +142,47 @@ class InventorizeHosts(CMK2): # pylint: disable=too-many-instance-attributes
140
142
  *Progress.get_default_columns(),
141
143
  TimeElapsedColumn()) as progress:
142
144
  task1 = progress.add_task("Requesting HW/SW Inventory Data from Checkmk", total=total)
143
- with multiprocessing.Pool() as pool:
145
+ # init_db gives each worker a fresh MongoEngine connection;
146
+ # without it the workers inherit the parent's connection across
147
+ # fork() and the first _save_inventory_tree() write raises
148
+ # immediately (matching the "instant timeout" symptom).
149
+ with multiprocessing.Pool(initializer=init_db) as pool:
150
+ # Pair every async result with its hostname so error output
151
+ # can name the failing host. Previously the hostname was
152
+ # only recoverable from the worker's return tuple, which we
153
+ # never see when the worker raised or timed out.
144
154
  tasks = []
145
155
  for host_resp in response:
146
156
  hostname = host_resp['extensions']['host_name']
147
157
  self.add_host(hostname)
148
- task = pool.apply_async(self.get_hw_sw_inventory_data, args=(hostname,))
149
- tasks.append(task)
158
+ async_result = pool.apply_async(
159
+ self.get_hw_sw_inventory_data, args=(hostname,)
160
+ )
161
+ tasks.append((hostname, async_result))
150
162
 
151
- for task in tasks:
163
+ process_timeout = app.config['PROCESS_TIMEOUT']
164
+ for hostname, task in tasks:
152
165
  try:
153
- hostname, data = task.get(timeout=app.config['PROCESS_TIMEOUT'])
166
+ _host, data = task.get(timeout=process_timeout)
154
167
  except multiprocessing.TimeoutError:
155
- progress.console.print("- ERROR: Timeout for a object")
168
+ progress.console.print(
169
+ f"- {ColorCodes.FAIL}TIMEOUT{ColorCodes.ENDC} "
170
+ f"after {process_timeout}s for {hostname}"
171
+ )
156
172
  except Exception as error: # pylint: disable=broad-exception-caught
173
+ # apply_async preserves the worker traceback on
174
+ # .get(); print it so the operator can see what
175
+ # really blew up instead of a misleading
176
+ # "Timeout error" label. --debug re-raises to abort
177
+ # the run for interactive inspection.
157
178
  if self.debug:
158
179
  raise
159
- progress.console.print(f"- ERROR: Timeout error for object ({error})")
180
+ progress.console.print(
181
+ f"- {ColorCodes.FAIL}ERROR{ColorCodes.ENDC} "
182
+ f"in worker for {hostname}: "
183
+ f"{type(error).__name__}: {error}"
184
+ )
185
+ progress.console.print(traceback.format_exc())
160
186
  else:
161
187
  progress.advance(task1)
162
188
  if data is not None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cmdbsyncer
3
- Version: 4.1.0.dev6
3
+ Version: 4.1.0.dev8
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.dev6"
7
+ version = "4.1.0.dev8"
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-08T14:36:22Z
File without changes