cmdbsyncer 4.1.0.dev6__tar.gz → 4.1.0.dev7__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.
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/PKG-INFO +1 -1
- cmdbsyncer-4.1.0.dev7/application/buildinfo.txt +1 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v4.1.md +3 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/log/views.py +10 -5
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/inventorize.py +33 -7
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/cmdbsyncer.egg-info/PKG-INFO +1 -1
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/pyproject.toml +1 -1
- cmdbsyncer-4.1.0.dev6/application/buildinfo.txt +0 -1
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/LICENSE +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/README.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/_version.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/api/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/api/inventory.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/api/objects.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/api/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/api/syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/api/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/auth/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/.pages +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v3.10.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v3.11.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v3.12.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v3.5.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v3.7.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v3.8.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v3.9.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/changelog/v4.0.md +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/cli.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/config.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/docu_links.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/enterprise.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/audit.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/cron.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/get_account.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/inventory.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/local_config_file.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/local_config_presets.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/mongo_keys.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/notification_channels.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/notification_dispatch.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/plugins.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/sates.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/sql.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/syncer_jinja.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/tablib_formater.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/tests/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/tests/test_sql.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/mcp_server.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/account.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/config.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/cron.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/field_approval.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/forms.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/host.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/host_inventory_tree.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/notification_channel.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/notification_rule.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/notification_state.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/saved_search.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/states.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/models/user.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/custom_attributes/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/custom_attributes/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/custom_attributes/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/debug.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/email.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/inventory/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/log/log.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/log/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/plugin.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/rule/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/rule/filter.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/rule/match.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/rule/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/rule/rewrite.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/rule/rule.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/rule/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/statefile.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/notices/strict_certificate_verification.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/inventory.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/playbook_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/runner.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/site_syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/bmc_remedy/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/bmc_remedy/bmc_remedy.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/bmc_remedy/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/bi.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/cmk2.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/cmk_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/dcd.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/downtimes.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/groups.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/helpers.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/import_v1.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/import_v2.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/inits.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/notification_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/passwords.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/poolfolder.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/sites.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tags.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_bi.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_cmk2.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_cmk_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_dcd.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_downtimes.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_groups.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_helpers.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_import_v1.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_import_v2.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_inventorize.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_notification_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_passwords.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_poolfolder.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_sites.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_tags.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_users.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/users.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/cisco_dna/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/cisco_dna/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/cisco_dna/syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/cron.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/csv/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/csv/csv.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/csv/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/file_requests.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/idoit/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/idoit/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/idoit/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/idoit/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/idoit/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/idoit/syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/idoit/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jdisc/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jdisc/applications.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jdisc/devices.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jdisc/executables.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jdisc/jdisc.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jdisc/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jira/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jira/jira.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jira/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jira_cloud/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jira_cloud/jira_cloud.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jira_cloud/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/json/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/json/json.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/json/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ldap/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ldap/ldap.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ldap/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/maintenance/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/maintenance/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/mssql/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/mssql/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/mysql/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/mysql/mysql.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/mysql/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/cluster.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/contacts.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/dataflow.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/devices.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/interfaces.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/ips.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/netbox.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/networks.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/prefixes.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/netbox/virtualmachines.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/prtg/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/prtg/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/prtg/prtg.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/pyodbc/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/pyodbc/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/pyodbc/pyodbc.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rest/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rest/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rest/rest.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rules/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rules/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rules/autorules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rules/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rules/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rules/rule_definitions.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rules/rule_import_export.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/rules/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/syncer_shell.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/vmware/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/vmware/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/vmware/custom_attributes.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/vmware/models.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/vmware/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/vmware/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/vmware/views.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/vmware/vmware.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/yml/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/yml/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/yml/yml.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins_cli.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/static/css/cmdbsyncer.css +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/static/js/main.js +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/static/logo_white.png +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/_brand.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/_theme.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/_host_tabs.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/account_pick_type.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/ansible_playbook_run.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/ansible_project_detail.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/ansible_rule_list.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/bulk_label_form.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/changelog_archive.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/checkmk_rule_mngmt_list.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/checkmk_settings_list.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/copy_as_new_form.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/data_quality.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/file/list.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/file/modals/form.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/host_details.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/host_edit.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/host_inventory_tree.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/host_list.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/host_relations_graph.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/host_timeline.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/index.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/local_config_editor.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/master.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/model/clone_confirm.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/model/inline_list_base.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/object_list.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/set_cmk_version_form.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/admin/set_template_form.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/base.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/change_password.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/debug.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/debug_host.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/email/newuser.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/email/notification.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/email/resetpassword.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/formular.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/license_info.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/login.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/logout_confirm.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/request_password.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/set_2fa.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/templates/set_theme.html +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/themes/dracula.css +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/themes/gruvbox-dark.css +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/themes/gruvbox-light.css +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/themes/nord.css +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/themes_registry.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/_form_fields.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/_form_sections.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/account.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/config.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/cron.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/data_quality.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/default.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/field_approval.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/fileadmin.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/host.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/host_filters.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/host_renderers.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/host_widgets.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/license.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/notification_channel.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/notification_rule.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/saved_search.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/views/user.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/cmdbsyncer.egg-info/SOURCES.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/cmdbsyncer.egg-info/dependency_links.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/cmdbsyncer.egg-info/entry_points.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/cmdbsyncer.egg-info/requires.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/cmdbsyncer.egg-info/top_level.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/requirements-ansible.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/requirements-extras.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/requirements.txt +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/setup.cfg +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/syncerapi/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/syncerapi/v1/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/syncerapi/v1/core/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/syncerapi/v1/inventory/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/syncerapi/v1/rest/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_api.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_api_csrf_invariant.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_default_view.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_mongo_keys.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_plugin.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_plugin_ssti.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_plugins_cli.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_rule.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/tests/test_rule_match.py +0 -0
- {cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/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.
|
|
3
|
+
Version: 4.1.0.dev7
|
|
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:26:20Z
|
|
@@ -53,6 +53,8 @@
|
|
|
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"
|
|
56
58
|
|
|
57
59
|
### API
|
|
58
60
|
- FEAT: `/api/v1/objects/<hostname>/relations` reads, adds and removes typed Host relations (CMDB_MODE only)
|
|
@@ -83,6 +85,7 @@
|
|
|
83
85
|
- FEAT: Set Theme, Set 2FA and Change Password pages now keep the admin navigation
|
|
84
86
|
- 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
87
|
- FIX: PyPI installs ship the bundled theme CSS files (Gruvbox Dark / Light, Nord, Dracula) so the theme picker actually shows themes other than Default
|
|
88
|
+
- 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
89
|
|
|
87
90
|
### Plugin runtime
|
|
88
91
|
- 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
|
-
|
|
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
|
|
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
|
|
49
|
-
'
|
|
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
|
)
|
|
@@ -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
|
-
|
|
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
|
-
|
|
149
|
-
|
|
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
|
-
|
|
163
|
+
process_timeout = app.config['PROCESS_TIMEOUT']
|
|
164
|
+
for hostname, task in tasks:
|
|
152
165
|
try:
|
|
153
|
-
|
|
166
|
+
_host, data = task.get(timeout=process_timeout)
|
|
154
167
|
except multiprocessing.TimeoutError:
|
|
155
|
-
progress.console.print(
|
|
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(
|
|
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.
|
|
3
|
+
Version: 4.1.0.dev7
|
|
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.
|
|
7
|
+
version = "4.1.0.dev7"
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/notification_channels.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/helpers/notification_dispatch.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/custom_attributes/models.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/custom_attributes/rules.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/modules/custom_attributes/views.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/ansible/playbook_rules.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/bmc_remedy/bmc_remedy.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/notification_rules.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/__init__.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_bi.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_cmk2.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_cmk_rules.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_dcd.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_downtimes.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_groups.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_helpers.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_import_v1.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_import_v2.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_passwords.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_poolfolder.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_rules.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_sites.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_syncer.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_tags.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/checkmk/tests/test_users.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev6 → cmdbsyncer-4.1.0.dev7}/application/plugins/jira_cloud/jira_cloud.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|