cmdbsyncer 4.1.0.dev12__tar.gz → 4.1.0.dev13__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.dev12 → cmdbsyncer-4.1.0.dev13}/PKG-INFO +1 -1
- cmdbsyncer-4.1.0.dev13/application/buildinfo.txt +1 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v4.1.md +1 -0
- cmdbsyncer-4.1.0.dev13/application/cli.py +78 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/account.py +11 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/cmdbsyncer.egg-info/PKG-INFO +1 -1
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/pyproject.toml +1 -1
- cmdbsyncer-4.1.0.dev12/application/buildinfo.txt +0 -1
- cmdbsyncer-4.1.0.dev12/application/cli.py +0 -48
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/LICENSE +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/README.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/_version.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/api/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/api/inventory.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/api/objects.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/api/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/api/syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/api/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/auth/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/.pages +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v3.10.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v3.11.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v3.12.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v3.5.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v3.7.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v3.8.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v3.9.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/changelog/v4.0.md +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/config.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/docu_links.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/enterprise.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/audit.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/cron.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/get_account.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/inventory.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/local_config_file.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/local_config_presets.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/mongo_keys.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/notification_channels.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/notification_dispatch.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/plugins.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/sates.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/sql.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/syncer_jinja.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/tablib_formater.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/tests/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/tests/test_sql.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/mcp_server.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/config.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/cron.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/field_approval.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/forms.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/host.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/host_inventory_tree.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/notification_channel.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/notification_rule.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/notification_state.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/saved_search.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/states.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/user.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/custom_attributes/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/custom_attributes/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/custom_attributes/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/debug.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/email.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/inventory/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/log/log.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/log/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/log/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/plugin.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/rule/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/rule/filter.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/rule/match.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/rule/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/rule/rewrite.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/rule/rule.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/rule/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/statefile.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/notices/strict_certificate_verification.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/inventory.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/playbook_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/runner.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/site_syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/bmc_remedy/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/bmc_remedy/bmc_remedy.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/bmc_remedy/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/bi.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/cmk2.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/cmk_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/dcd.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/downtimes.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/groups.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/helpers.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/import_v1.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/import_v2.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/inits.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/inventorize.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/notification_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/passwords.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/poolfolder.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/sites.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tags.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_bi.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_cmk2.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_cmk_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_dcd.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_downtimes.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_groups.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_helpers.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_import_v1.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_import_v2.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_inventorize.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_notification_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_passwords.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_poolfolder.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_sites.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_tags.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_users.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/users.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/cisco_dna/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/cisco_dna/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/cisco_dna/syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/cron.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/csv/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/csv/csv.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/csv/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/file_requests.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/idoit/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/idoit/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/idoit/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/idoit/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/idoit/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/idoit/syncer.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/idoit/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jdisc/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jdisc/applications.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jdisc/devices.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jdisc/executables.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jdisc/jdisc.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jdisc/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jira/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jira/jira.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jira/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jira_cloud/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jira_cloud/jira_cloud.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/jira_cloud/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/json/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/json/json.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/json/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ldap/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ldap/ldap.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ldap/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/maintenance/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/maintenance/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/mssql/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/mssql/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/mysql/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/mysql/mysql.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/mysql/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/cluster.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/contacts.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/dataflow.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/devices.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/interfaces.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/ips.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/netbox.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/networks.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/prefixes.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/netbox/virtualmachines.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/prtg/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/prtg/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/prtg/prtg.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/pyodbc/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/pyodbc/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/pyodbc/pyodbc.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rest/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rest/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rest/rest.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rules/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rules/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rules/autorules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rules/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rules/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rules/rule_definitions.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rules/rule_import_export.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/rules/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/syncer_shell.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/vmware/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/vmware/admin_views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/vmware/custom_attributes.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/vmware/models.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/vmware/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/vmware/rules.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/vmware/views.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/vmware/vmware.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/yml/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/yml/plugin.json +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/yml/yml.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins_cli.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/static/css/cmdbsyncer.css +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/static/js/main.js +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/static/logo_white.png +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/_brand.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/_theme.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/_host_tabs.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/account_pick_type.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/ansible_playbook_run.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/ansible_project_detail.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/ansible_rule_list.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/bulk_label_form.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/changelog_archive.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/checkmk_rule_mngmt_list.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/checkmk_settings_list.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/copy_as_new_form.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/data_quality.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/file/list.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/file/modals/form.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/host_details.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/host_edit.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/host_inventory_tree.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/host_list.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/host_relations_graph.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/host_timeline.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/index.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/local_config_editor.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/master.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/model/clone_confirm.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/model/inline_list_base.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/object_list.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/set_cmk_version_form.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/admin/set_template_form.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/base.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/change_password.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/debug.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/debug_host.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/email/newuser.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/email/notification.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/email/resetpassword.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/formular.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/license_info.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/login.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/logout_confirm.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/request_password.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/set_2fa.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/templates/set_theme.html +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/themes/dracula.css +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/themes/gruvbox-dark.css +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/themes/gruvbox-light.css +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/themes/nord.css +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/themes_registry.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/_form_fields.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/_form_sections.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/account.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/config.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/cron.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/data_quality.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/default.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/field_approval.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/fileadmin.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/host.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/host_filters.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/host_renderers.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/host_widgets.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/license.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/notification_channel.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/notification_rule.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/saved_search.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/views/user.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/cmdbsyncer.egg-info/SOURCES.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/cmdbsyncer.egg-info/dependency_links.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/cmdbsyncer.egg-info/entry_points.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/cmdbsyncer.egg-info/requires.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/cmdbsyncer.egg-info/top_level.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/requirements-ansible.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/requirements-extras.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/requirements.txt +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/setup.cfg +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/syncerapi/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/syncerapi/v1/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/syncerapi/v1/core/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/syncerapi/v1/inventory/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/syncerapi/v1/rest/__init__.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_api.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_api_csrf_invariant.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_default_view.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_mongo_keys.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_plugin.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_plugin_ssti.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_plugins_cli.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_rule.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/tests/test_rule_match.py +0 -0
- {cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/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.dev13
|
|
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-11T13:01:07Z
|
|
@@ -93,6 +93,7 @@
|
|
|
93
93
|
- FEAT: `cmdbsyncer sys self_configure` now creates a default `app.wsgi` so PyPI installs can be served by Apache/mod_wsgi or uWSGI without writing one by hand
|
|
94
94
|
- FIX: `Edit local_config.py` GUI now writes to the same `local_config.py` Python actually imports. PyPI installs previously wrote into site-packages instead of the deployment directory next to `app.wsgi`
|
|
95
95
|
- FIX: `local_config.py` is now found reliably across PyPI console scripts, mod_wsgi / gunicorn and source checkouts — `CRYPTOGRAPHY_KEY` and friends are no longer silently `None`, so Account passwords decrypt correctly. A misplaced deployment now surfaces as a startup warning instead of failing silently
|
|
96
|
+
- FIX: `cmdbsyncer` CLI searches `$CMDBSYNCER_CONFIG_DIR`, the venv parent directory and `/etc/cmdbsyncer/` for `local_config.py` so the binary works regardless of the caller's working directory (cron / systemd / shell aliases). If no `local_config.py` is found the operator now sees a clear stderr message, and any later attempt to decrypt an Account password raises a readable `CRYPTOGRAPHY_KEY is not set` error instead of an opaque `Fernet(None)` traceback
|
|
96
97
|
- FIX: PyPI installs now ship every plugin's `plugin.json` (was only the `.py` files), and the user `plugins/` directory plus `disabled_plugins.json` next to `app.wsgi` are picked up correctly instead of being looked for inside `site-packages`
|
|
97
98
|
- FEAT: Offline installation bundle always ships base, extras and ansible Python dependencies plus the default Ansible playbook collection, and the bundled `install.sh` deploys the playbooks to `/opt/cmdbsyncer/ansible` (override via `ANSIBLE_TARGET`, skip with `SKIP_ANSIBLE=1`, replace existing target with `FORCE=1`)
|
|
98
99
|
- FEAT: New `make release-pre` target ships sequential pre-release builds (`.devN` / `aN` / `bN` / `rcN`) to PyPI without requiring a hand-edit before each upload; `tools/build_offline_bundle.sh --syncer-version 4.1.0.dev3 --enterprise-version 0.3.9.dev1` pins the offline bundle to those pre-releases so QA can test them on air-gapped systems
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"""Entry point for the ``cmdbsyncer`` console script.
|
|
2
|
+
|
|
3
|
+
Registered via ``[project.scripts]`` in ``pyproject.toml`` so the command is
|
|
4
|
+
available on ``PATH`` after ``pip install cmdbsyncer``. Delegates to Flask's
|
|
5
|
+
Click CLI on the app instance.
|
|
6
|
+
"""
|
|
7
|
+
import os
|
|
8
|
+
import sys
|
|
9
|
+
import warnings
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def main():
|
|
13
|
+
"""Run the cmdbsyncer Flask Click CLI."""
|
|
14
|
+
os.environ.setdefault("config", "prod")
|
|
15
|
+
# Mark the process as a CLI invocation before importing the app factory.
|
|
16
|
+
# ``application/__init__.py`` and ``application/enterprise.py`` check this
|
|
17
|
+
# to suppress their startup banner / ECS JSON log pipeline — none of that
|
|
18
|
+
# noise belongs in front of command output like ``checkmk export_hosts``.
|
|
19
|
+
os.environ["CMDBSYNCER_CLI"] = "1"
|
|
20
|
+
# cmdbsyncer needs to find ``local_config.py`` regardless of the
|
|
21
|
+
# caller's cwd. Source checkouts have it next to ``./cmdbsyncer`` and
|
|
22
|
+
# were always covered by the cwd injection below; PyPI installs (and
|
|
23
|
+
# any cron / systemd unit that doesn't set WorkingDirectory) drop it
|
|
24
|
+
# into the install root (e.g. ``/opt/cmdbsyncer/``) but invoke the
|
|
25
|
+
# binary from elsewhere — that previously left ``CRYPTOGRAPHY_KEY``
|
|
26
|
+
# at ``None`` and exploded much later with a "Fernet(None)" TypeError
|
|
27
|
+
# that pointed nowhere useful. Search a fixed list of well-known
|
|
28
|
+
# directories and inject the first one that actually contains the
|
|
29
|
+
# file; cwd stays in the list so source checkouts still win.
|
|
30
|
+
_config_candidates = []
|
|
31
|
+
if env_dir := os.environ.get("CMDBSYNCER_CONFIG_DIR"):
|
|
32
|
+
_config_candidates.append(env_dir)
|
|
33
|
+
_config_candidates.append(os.getcwd())
|
|
34
|
+
# ``sys.prefix`` is the venv root (``/opt/cmdbsyncer/venv``); its
|
|
35
|
+
# parent is the conventional install dir where local_config.py sits.
|
|
36
|
+
_config_candidates.append(os.path.dirname(sys.prefix))
|
|
37
|
+
_config_candidates.append("/etc/cmdbsyncer")
|
|
38
|
+
for _candidate in _config_candidates:
|
|
39
|
+
if _candidate and os.path.isfile(os.path.join(_candidate, "local_config.py")):
|
|
40
|
+
if _candidate not in sys.path:
|
|
41
|
+
sys.path.insert(0, _candidate)
|
|
42
|
+
break
|
|
43
|
+
else:
|
|
44
|
+
# Nothing found. Keep the legacy cwd injection so the import
|
|
45
|
+
# still attempts and the warning in ``application/__init__.py``
|
|
46
|
+
# surfaces the searched paths — but tell the operator upfront.
|
|
47
|
+
if os.getcwd() not in sys.path:
|
|
48
|
+
sys.path.insert(0, os.getcwd())
|
|
49
|
+
print(
|
|
50
|
+
"cmdbsyncer: local_config.py not found in any of "
|
|
51
|
+
f"{_config_candidates!r}. Set CMDBSYNCER_CONFIG_DIR to "
|
|
52
|
+
"its directory or run from there. Continuing — encrypted "
|
|
53
|
+
"account passwords will fail to decrypt without "
|
|
54
|
+
"CRYPTOGRAPHY_KEY.",
|
|
55
|
+
file=sys.stderr,
|
|
56
|
+
)
|
|
57
|
+
with warnings.catch_warnings():
|
|
58
|
+
warnings.filterwarnings("ignore", "Fields missing from ruleset", UserWarning)
|
|
59
|
+
try:
|
|
60
|
+
from application import app, DISPLAY_VERSION # pylint: disable=import-outside-toplevel
|
|
61
|
+
from flask.cli import ScriptInfo # pylint: disable=import-outside-toplevel
|
|
62
|
+
except Exception as exp: # pylint: disable=broad-except
|
|
63
|
+
print("Cannot load application. Is MongoDB reachable and local_config.py present?")
|
|
64
|
+
print(exp)
|
|
65
|
+
sys.exit(1)
|
|
66
|
+
|
|
67
|
+
if len(sys.argv) == 1:
|
|
68
|
+
print(f"CMDB Syncer Version: {DISPLAY_VERSION}")
|
|
69
|
+
sys.argv.append("--help")
|
|
70
|
+
# AppGroup commands re-resolve the app via ScriptInfo.load_app(), which
|
|
71
|
+
# otherwise scans for FLASK_APP / app.py / wsgi.py. PyPI installs have
|
|
72
|
+
# none of those in the cwd, so hand Click a ScriptInfo that returns the
|
|
73
|
+
# already-imported app instance directly.
|
|
74
|
+
app.cli(obj=ScriptInfo(create_app=lambda: app))
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
if __name__ == "__main__":
|
|
78
|
+
main()
|
|
@@ -144,6 +144,17 @@ class Account(db.Document):
|
|
|
144
144
|
cryptography_key = key
|
|
145
145
|
else:
|
|
146
146
|
cryptography_key = app.config['CRYPTOGRAPHY_KEY']
|
|
147
|
+
if not cryptography_key:
|
|
148
|
+
# Without a key Fernet(None) explodes a few frames deeper with
|
|
149
|
+
# an opaque "argument should be a bytes-like object or ASCII
|
|
150
|
+
# string, not 'NoneType'" — surface the real cause instead so
|
|
151
|
+
# operators can fix their config.
|
|
152
|
+
raise RuntimeError(
|
|
153
|
+
"CRYPTOGRAPHY_KEY is not set — local_config.py was not "
|
|
154
|
+
"loaded. Set CMDBSYNCER_CONFIG_DIR to its directory, run "
|
|
155
|
+
"cmdbsyncer from that directory, or place "
|
|
156
|
+
"local_config.py at /etc/cmdbsyncer/."
|
|
157
|
+
)
|
|
147
158
|
if not self.password_crypted and self.password:
|
|
148
159
|
uncrypted = self.password
|
|
149
160
|
self.password = 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.dev13
|
|
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.dev13"
|
|
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-11T12:24:38Z
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"""Entry point for the ``cmdbsyncer`` console script.
|
|
2
|
-
|
|
3
|
-
Registered via ``[project.scripts]`` in ``pyproject.toml`` so the command is
|
|
4
|
-
available on ``PATH`` after ``pip install cmdbsyncer``. Delegates to Flask's
|
|
5
|
-
Click CLI on the app instance.
|
|
6
|
-
"""
|
|
7
|
-
import os
|
|
8
|
-
import sys
|
|
9
|
-
import warnings
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def main():
|
|
13
|
-
"""Run the cmdbsyncer Flask Click CLI."""
|
|
14
|
-
os.environ.setdefault("config", "prod")
|
|
15
|
-
# Mark the process as a CLI invocation before importing the app factory.
|
|
16
|
-
# ``application/__init__.py`` and ``application/enterprise.py`` check this
|
|
17
|
-
# to suppress their startup banner / ECS JSON log pipeline — none of that
|
|
18
|
-
# noise belongs in front of command output like ``checkmk export_hosts``.
|
|
19
|
-
os.environ["CMDBSYNCER_CLI"] = "1"
|
|
20
|
-
# cmdbsyncer expects to be run from a working directory that contains
|
|
21
|
-
# ``local_config.py``; in source checkouts that file is next to
|
|
22
|
-
# ``./cmdbsyncer``, so cwd is already on sys.path. PyPI console scripts do
|
|
23
|
-
# not add cwd automatically — inject it so ``from local_config import ...``
|
|
24
|
-
# works the same in both layouts.
|
|
25
|
-
if os.getcwd() not in sys.path:
|
|
26
|
-
sys.path.insert(0, os.getcwd())
|
|
27
|
-
with warnings.catch_warnings():
|
|
28
|
-
warnings.filterwarnings("ignore", "Fields missing from ruleset", UserWarning)
|
|
29
|
-
try:
|
|
30
|
-
from application import app, DISPLAY_VERSION # pylint: disable=import-outside-toplevel
|
|
31
|
-
from flask.cli import ScriptInfo # pylint: disable=import-outside-toplevel
|
|
32
|
-
except Exception as exp: # pylint: disable=broad-except
|
|
33
|
-
print("Cannot load application. Is MongoDB reachable and local_config.py present?")
|
|
34
|
-
print(exp)
|
|
35
|
-
sys.exit(1)
|
|
36
|
-
|
|
37
|
-
if len(sys.argv) == 1:
|
|
38
|
-
print(f"CMDB Syncer Version: {DISPLAY_VERSION}")
|
|
39
|
-
sys.argv.append("--help")
|
|
40
|
-
# AppGroup commands re-resolve the app via ScriptInfo.load_app(), which
|
|
41
|
-
# otherwise scans for FLASK_APP / app.py / wsgi.py. PyPI installs have
|
|
42
|
-
# none of those in the cwd, so hand Click a ScriptInfo that returns the
|
|
43
|
-
# already-imported app instance directly.
|
|
44
|
-
app.cli(obj=ScriptInfo(create_app=lambda: app))
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if __name__ == "__main__":
|
|
48
|
-
main()
|
|
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.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/local_config_presets.py
RENAMED
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/helpers/notification_channels.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/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
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/models/notification_channel.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.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/custom_attributes/models.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/modules/custom_attributes/rules.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/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
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/admin_views.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/playbook_rules.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/ansible/site_syncer.py
RENAMED
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/bmc_remedy/__init__.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/bmc_remedy/bmc_remedy.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/bmc_remedy/plugin.json
RENAMED
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/admin_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
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/inventorize.py
RENAMED
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/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.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/__init__.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_bi.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_cmk2.py
RENAMED
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_dcd.py
RENAMED
|
File without changes
|
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_groups.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_helpers.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.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_rules.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_sites.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_syncer.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/application/plugins/checkmk/tests/test_tags.py
RENAMED
|
File without changes
|
{cmdbsyncer-4.1.0.dev12 → cmdbsyncer-4.1.0.dev13}/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
|