patchman 4.0.1__tar.gz → 4.0.3__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.
- {patchman-4.0.1 → patchman-4.0.3}/INSTALL.md +4 -2
- {patchman-4.0.1 → patchman-4.0.3}/PKG-INFO +1 -1
- patchman-4.0.3/VERSION.txt +1 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/views.py +15 -1
- {patchman-4.0.1 → patchman-4.0.3}/patchman.egg-info/PKG-INFO +1 -1
- {patchman-4.0.1 → patchman-4.0.3}/reports/utils.py +1 -1
- patchman-4.0.1/VERSION.txt +0 -1
- {patchman-4.0.1 → patchman-4.0.3}/AUTHORS +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/COPYING +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/MANIFEST.in +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/README.md +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/arch/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/domains/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0002_alter_erratumreference_unique_together.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0003_delete_erratumreference_alter_erratum_references.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0004_rename_packages_erratum_fixed_packages.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0005_erratum_affected_packages_and_more.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0006_alter_erratum_options.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0007_alter_erratum_fixed_packages.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/distros/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/distros/alma.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/distros/arch.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/distros/centos.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/distros/debian.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/distros/rocky.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/distros/ubuntu.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/repos/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/sources/repos/yum.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/tasks.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/templates/errata/erratum_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/templates/errata/erratum_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/tests/test_integration.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/errata/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/etc/patchman/apache.conf.example +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/etc/patchman/celery.conf +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/etc/patchman/local_settings.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/etc/systemd/system/patchman-celery-beat.service +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/etc/systemd/system/patchman-celery-worker.service +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/forms.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0002_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0003_host_modules.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0004_remove_host_tags_host_tags.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0005_rename_os_host_osvariant.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0006_migrate_to_tz_aware.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0007_alter_host_tags.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0008_alter_host_options.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/0009_host_errata.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/tasks.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/templates/hosts/host_delete.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/templates/hosts/host_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/templates/hosts/host_edit.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/templates/hosts/host_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/templatetags/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/templatetags/report_alert.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/tests/test_find_updates.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/tests/test_managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/hosts/utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/migrations/0002_auto_20240204_2214.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/migrations/0003_alter_module_options.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/migrations/0004_alter_module_options.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/migrations/0005_alter_module_unique_together.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/templates/modules/module_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/templates/modules/module_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/modules/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/fixtures/os.json +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/fixtures/osgroup.json +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/forms.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0002_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0003_os_arch.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0003_osgroup_codename.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0004_alter_osgroup_unique_together.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0005_rename_osgroup_osrelease_rename_os_osvariant_and_more.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0006_osrelease_cpe_name_osvariant_codename.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0007_alter_osrelease_unique_together.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0008_alter_osrelease_options_alter_osvariant_options.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/os_landing.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osrelease_delete.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osrelease_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osrelease_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osvariant_delete.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osvariant_delete_multiple.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osvariant_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osvariant_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/operatingsystems/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/migrations/0002_auto_20250207_1319.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/migrations/0002_delete_erratum_delete_erratumreference.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/migrations/0003_auto_20250207_1746.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/migrations/0004_alter_package_options_alter_packagecategory_options_and_more.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/migrations/0005_alter_package_packagetype.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/templates/packages/package_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/templates/packages/package_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/templates/packages/package_name_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/templates/packages/package_name_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/tests/test_version_compare.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/packages/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/celery.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/receivers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/settings.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/signals.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/sqlite3/base.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/static/css/base.css +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/static/js/expandable-text.js +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/static/js/sidebar.js +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman/wsgi.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman.egg-info/SOURCES.txt +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman.egg-info/dependency_links.txt +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman.egg-info/requires.txt +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/patchman.egg-info/top_level.txt +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/migrations/0002_report_modules.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/migrations/0003_remove_report_accessed.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/migrations/0004_migrate_to_tz_aware.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/migrations/0005_alter_report_options.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tasks.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/templates/reports/report.txt +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/templates/reports/report_delete.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/templates/reports/report_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/templates/reports/report_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/test_edge_cases.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/test_integration.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/test_parsing.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/test_serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/test_tasks.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/tests/test_utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/reports/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/forms.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/migrations/0002_alter_repository_repotype.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/migrations/0003_migrate_to_tz_aware.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/migrations/0004_rename_file_checksum_mirror_package_checksum.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/migrations/0005_rename_package_checksum_mirror_packages_checksum.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/migrations/0006_mirror_errata_checksum_mirror_modules_checksum.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/repo_types/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/repo_types/arch.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/repo_types/deb.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/repo_types/gentoo.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/repo_types/rpm.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/repo_types/yast.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/repo_types/yum.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/tasks.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/mirror_delete.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/mirror_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/mirror_edit.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/mirror_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/mirror_with_repo_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/repo_delete.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/repo_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/repo_edit.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templates/repos/repo_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/templatetags/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/tests/test_managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/tests/test_mirror_sync.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/repos/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/requirements.txt +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/sbin/patchman +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/sbin/patchman-manage +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/sbin/patchman-set-secret-key +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/scripts/clear-django-logs.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/scripts/create_graph.sh +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/scripts/rpm-install.sh +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/scripts/rpm-post-install.sh +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/admin.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/managers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/migrations/0001_initial.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/migrations/0002_alter_cve_options.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/migrations/0003_alter_cve_description_alter_cwe_description.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/migrations/0004_alter_cve_options.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/migrations/0005_reference_cve_references.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/migrations/0006_alter_cve_options_alter_cvss_unique_together.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/migrations/0007_remove_cve_title.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/migrations/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/serializers.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/tasks.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/templates/security/cve_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/templates/security/cve_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/templates/security/cwe_detail.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/templates/security/cwe_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/templates/security/reference_list.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/templates/security/security_landing.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/tests/test_api.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/tests/test_models.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/security/views.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/setup.cfg +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/setup.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/apps.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/context_processors.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/filterspecs.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/logging.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/management/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/management/commands/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/management/commands/create_api_key.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/management/commands/list_api_keys.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/management/commands/revoke_api_key.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/tables.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/tasks.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/404.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/500.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/base.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/bulk_actions.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/dashboard.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/navbar.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/objectlist.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/registration/login.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/searchbar.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templates/table.html +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templatetags/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/templatetags/common.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/tests/__init__.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/tests/test_commands.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/tests/test_utils.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/urls.py +0 -0
- {patchman-4.0.1 → patchman-4.0.3}/util/views.py +0 -0
|
@@ -34,7 +34,8 @@ patchman-manage createsuperuser
|
|
|
34
34
|
|
|
35
35
|
### Rocky 10
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
Server installation is currently broken due to missing upstream packages: https://github.com/furlongm/patchman/issues/669
|
|
38
|
+
Client installation should work as expected.
|
|
38
39
|
|
|
39
40
|
This also applies to Alma, RHEL, etc.
|
|
40
41
|
|
|
@@ -50,7 +51,8 @@ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-openbytes
|
|
|
50
51
|
EOF
|
|
51
52
|
dnf -y install epel-release
|
|
52
53
|
dnf makecache
|
|
53
|
-
dnf -y install patchman
|
|
54
|
+
dnf -y install patchman-client
|
|
55
|
+
#dnf -y install patchman
|
|
54
56
|
systemctl restart httpd
|
|
55
57
|
patchman-manage createsuperuser
|
|
56
58
|
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
4.0.3
|
|
@@ -20,6 +20,7 @@ from django.contrib.auth.decorators import login_required
|
|
|
20
20
|
from django.db.models import Count, Q
|
|
21
21
|
from django.shortcuts import get_object_or_404, redirect, render
|
|
22
22
|
from django.urls import reverse
|
|
23
|
+
from django_filters import rest_framework as filters
|
|
23
24
|
from django_tables2 import RequestConfig
|
|
24
25
|
from rest_framework import viewsets
|
|
25
26
|
from taggit.models import Tag
|
|
@@ -279,13 +280,26 @@ def host_bulk_action(request):
|
|
|
279
280
|
return redirect('hosts:host_list')
|
|
280
281
|
|
|
281
282
|
|
|
283
|
+
class HostFilter(filters.FilterSet):
|
|
284
|
+
package_id = filters.NumberFilter(field_name='packages', lookup_expr='exact')
|
|
285
|
+
package_name = filters.CharFilter(field_name='packages__name__name', lookup_expr='exact')
|
|
286
|
+
package_version = filters.CharFilter(field_name='packages__version', lookup_expr='exact')
|
|
287
|
+
package_release = filters.CharFilter(field_name='packages__release', lookup_expr='exact')
|
|
288
|
+
package_epoch = filters.CharFilter(field_name='packages__epoch', lookup_expr='exact')
|
|
289
|
+
package_arch = filters.CharFilter(field_name='packages__arch__name', lookup_expr='exact')
|
|
290
|
+
|
|
291
|
+
class Meta:
|
|
292
|
+
model = Host
|
|
293
|
+
fields = ['hostname']
|
|
294
|
+
|
|
295
|
+
|
|
282
296
|
class HostViewSet(viewsets.ModelViewSet):
|
|
283
297
|
"""
|
|
284
298
|
API endpoint that allows hosts to be viewed or edited.
|
|
285
299
|
"""
|
|
286
300
|
queryset = Host.objects.all()
|
|
287
301
|
serializer_class = HostSerializer
|
|
288
|
-
|
|
302
|
+
filterset_class = HostFilter
|
|
289
303
|
|
|
290
304
|
|
|
291
305
|
class HostRepoViewSet(viewsets.ModelViewSet):
|
|
@@ -153,7 +153,7 @@ def parse_updates(updates_string, security):
|
|
|
153
153
|
specifying whether it is a security update or not
|
|
154
154
|
"""
|
|
155
155
|
updates = {}
|
|
156
|
-
ulist = updates_string
|
|
156
|
+
ulist = updates_string..split()
|
|
157
157
|
while ulist:
|
|
158
158
|
name = f'{ulist[0]} {ulist[1]} {ulist[2]}\n'
|
|
159
159
|
del ulist[:3]
|
patchman-4.0.1/VERSION.txt
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
4.0.1
|
|
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
|
{patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0002_alter_erratumreference_unique_together.py
RENAMED
|
File without changes
|
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0004_rename_packages_erratum_fixed_packages.py
RENAMED
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/errata/migrations/0005_erratum_affected_packages_and_more.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
|
|
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
|
|
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
|
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/operatingsystems/migrations/0004_alter_osgroup_unique_together.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
|
{patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/os_landing.html
RENAMED
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osrelease_delete.html
RENAMED
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osrelease_detail.html
RENAMED
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osrelease_list.html
RENAMED
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osvariant_delete.html
RENAMED
|
File without changes
|
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osvariant_detail.html
RENAMED
|
File without changes
|
{patchman-4.0.1 → patchman-4.0.3}/operatingsystems/templates/operatingsystems/osvariant_list.html
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
|
{patchman-4.0.1 → patchman-4.0.3}/packages/migrations/0002_delete_erratum_delete_erratumreference.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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|