pulpcore 3.80.1__tar.gz → 3.81.0__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.
Potentially problematic release.
This version of pulpcore might be problematic. Click here for more details.
- {pulpcore-3.80.1 → pulpcore-3.81.0}/CHANGES.md +203 -13
- {pulpcore-3.80.1 → pulpcore-3.81.0}/PKG-INFO +21 -21
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/app/__init__.py +1 -1
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/__init__.py +1 -1
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/pytest_plugin.py +22 -104
- pulpcore-3.81.0/pulp_file/tests/functional/api/test_bad_sync.py +132 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/apps.py +1 -1
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/entrypoint.py +4 -1
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/files.py +15 -5
- pulpcore-3.81.0/pulpcore/app/netutil.py +20 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/content.py +1 -1
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/fields.py +10 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/content/__init__.py +2 -1
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/content/entrypoint.py +4 -1
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/download/base.py +9 -2
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/openapi/__init__.py +1 -1
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore.egg-info/PKG-INFO +21 -21
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore.egg-info/SOURCES.txt +1 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore.egg-info/requires.txt +20 -20
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pyproject.toml +28 -28
- pulpcore-3.80.1/pulp_file/tests/functional/api/test_bad_sync.py +0 -72
- {pulpcore-3.80.1 → pulpcore-3.81.0}/CODE_OF_CONDUCT.md +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/COMMITMENT +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/CONTRIBUTING.md +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/COPYRIGHT +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/LICENSE +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/MANIFEST.in +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/README.md +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/ci_requirements.txt +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/functest_requirements.txt +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/manage.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/app/migrations/0001_initial.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/app/migrations/0002_alter_rhsmcertguard_contentguard_ptr_and_more.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/app/migrations/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/app/models.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/app/serializers.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/app/utils.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/app/viewsets.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/pytest_plugin.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/api/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/api/test_rhsm_certguard.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/api/test_x509_certguard.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/katello-default-ca.crt +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/katello-default-ca.key +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/trusted_but_expired.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/uber.cert +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/untrusted_cert-key.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/untrusted_cert.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v1/1514454871848760713-key.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v1/1514454871848760713.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v1/159442575569388840-key.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v1/159442575569388840.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v3/4260035510644027985-key.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v3/4260035510644027985.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v3/5527980418107729172-key.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v3/5527980418107729172.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/thirdparty_ca/certificates/ca.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/thirdparty_ca/genca.sh +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/thirdparty_ca/keys/ca.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/ca.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/client.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/server.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/un_urlencoded_cert.txt +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/untrusted_client.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/genall.sh +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/genca.sh +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/genclient.sh +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/gensrv.sh +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/keys/ca.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/keys/client.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/keys/server.pem +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/conftest.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/functional/constants.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/unit/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_certguard/tests/unit/test_models.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0001_initial.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0001_initial_squashed_0016_add_domain.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0002_file_related_names.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0003_auto_20191014_1721.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0004_filefilesystemexporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0005_filerepository.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0006_delete_filefilesystemexporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0007_filefilesystemexporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0008_add_manifest_field.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0009_move_data_to_new_master_distribution_model.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0010_auto_publish.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0011_fix_auto_publish.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0012_delete_filefilesystemexporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0013_file_acs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0014_new_rbac_permissions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0015_allow_null_manifest.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0016_add_domain.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/0017_alter_filealternatecontentsource_alternatecontentsource_ptr_and_more.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/migrations/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/modelresource.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/models.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/replica.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/serializers.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/tasks/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/tasks/publishing.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/tasks/synchronizing.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/app/viewsets.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/manifest.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_acs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_auto_publish.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_content_labels.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_crud_content_unit.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_crud_remotes.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_domains.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_download_policies.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_generic_list.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_labels.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_mime_types.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_publish.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_pulp_export.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_rbac.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_remote_settings.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_sync.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/unit/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/unit/test_safe_paths.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulp_file/tests/unit/test_serializers.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/access_policy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/authentication.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/checks.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/global_access_conditions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/importexport.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/loggers.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/manage.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/add-signing-service.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/analyze-publication.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/clean-up-progress-reports.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/datarepair-2327.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/dump-permissions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/dump-publications-to-fs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/handle-artifact-checksums.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/migrationstat.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/openapi.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/rebasemigrations.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/remove-plugin.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/remove-signing-service.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/repository-size.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/reset-admin-password.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/management/commands/rotate-db-key.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0001_initial.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0001_squashed_0090_char_to_text_field.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0002_increase_artifact_size_field.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0003_remove_upload_completed.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0004_add_duplicated_reserved_resources.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0005_progressreport_code.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0006_repository_plugin_managed.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0007_delete_progress_proxies.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0008_published_metadata_as_content.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0009_remove_task_non_fatal_errors.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0010_pulp_fields.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0011_relative_path.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0012_auto_20191104_2000.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0013_repository_pulp_type.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0014_remove_repository_plugin_managed.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0015_auto_20191112_1426.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0016_charfield_to_textfield.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0017_remove_task_parent.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0018_auto_20191127_2350.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0019_add_signing_service_model.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0020_change_publishedartifact_constraints.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0021_add_signing_service_foreign_key.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0022_rename_last_version.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0023_change_exporter_models.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0024_use_local_storage_for_uploads.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0025_task_parent_task.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0026_task_group.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0027_export_backend.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0028_import_importer_pulpimporter_pulpimporterrepository.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0029_export_delete.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0030_taskgroup_all_tasks_dispatched.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0031_import_export_validate_params.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0032_export_to_chunks.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0033_increase_remote_artifact_size_field.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0034_groupprogressreport.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0035_content_upstream_id.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0036_unprotect_last_export.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0037_pulptemporaryfile.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0038_repository_remote.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0039_change_download_concurrency.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0040_set_admin_is_staff.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0041_accesspolicy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0042_rbac_for_tasks.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0043_toc_attribute.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0044_temp_file_artifact_field.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0045_accesspolicy_permissions_allow_null.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0046_task__resource_job_id.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0047_improve_orphan_cleanup.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0048_fips_checksums.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0049_add_file_field_to_uploadchunk.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0050_namespace_access_policies.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0051_timeoutfields.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0052_tasking_logging_cid.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0053_remote_headers.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0054_add_public_key.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0055_label.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0056_remote_rate_limit.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0057_add_label_indexes.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0058_accesspolicy_customized.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0059_proxy_creds.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0060_data_migration_proxy_creds.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0061_call_handle_artifact_checksums_command.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0062_add_new_distribution_mastermodel.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0063_repository_retained_versions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0064_add_new_style_task_columns.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0064_repository_user_hidden.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0065_merge_20210615_1211.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0066_download_concurrency_and_retry_changes.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0067_add_protect_to_task_reservation.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0068_add_timestamp_of_interest.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0069_update_json_fields.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0070_rename_retained_versions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0071_filesystemexport_filesystemexporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0072_add_method_to_filesystem_exporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0073_encrypt_remote_fields.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0074_acs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0075_rbaccontentguard.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0076_remove_reserved_resource.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0077_move_remote_url_credentials.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0078_grouprole_role_userrole.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0079_rename_permissions_assignment_accesspolicy_creation_hooks.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0080_proxy_group_model.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0081_reapplabel_group_permissions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0082_add_manage_roles_permissions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0083_alter_group_options.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0084_alter_rbaccontentguard_options.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0085_contentredirectcontentguard.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0086_task_json_fields.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0087_taskschedule.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0088_accesspolicy_queryset_scoping.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0089_alter_contentredirectcontentguard_options.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0090_char_to_text_field.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0091_systemid.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0092_alter_upload_options.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0093_add_info_field_repositoryversion.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0094_protect_repository_content.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0095_artifactdistribution.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0096_alter_task_logging_cid.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0097_remove_telemetry_task_schedule.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0098_pulp_labels.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0099_versions_field.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0100_upstreampulp.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0101_add_domain.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0102_add_domain_relations.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0103_alter_export_task.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0104_delete_label.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0105_abstract_uuid_gen.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0106_alter_artifactdistribution_distribution_ptr_and_more.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0107_distribution_hidden.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0108_task_versions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0109_contentartifact_relative_path_index.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0110_apiappstatus.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0111_task_enc_args_task_enc_kwargs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0112_alter_upstreampulp_options.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0113_headercontentguard.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0114_remove_task_args_remove_task_kwargs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0115_compositecontentguard.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0116_alter_remoteartifact_md5_alter_remoteartifact_sha1_and_more.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0117_task_unblocked_at.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0118_task_core_task_unblock_2276a4_idx_and_more.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0119_grouprole_core_groupr_object__250e22_idx_and_more.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0120_get_url_removal.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0121_add_profile_artifacts_table.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0122_record_last_replication_timestamp.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0123_upstreampulp_q_select.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0124_task_deferred_task_immediate.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0125_openpgpdistribution_openpgpkeyring_openpgppublickey_and_more.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0126_remoteartifact_failed_at.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0127_remove_upstreampulp_pulp_label_select.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0128_domain_pulp_labels.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0129_content_pulp_labels.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0130_upstreampulp_policy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0131_distribution_checkpoint_publication_checkpoint.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/0132_alter_content_options.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/migrations/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/mime_types.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/modelresource.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/access_policy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/acs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/analytics.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/content.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/domain.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/exporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/fields.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/generic.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/importer.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/openpgp.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/progress.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/publication.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/replica.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/repository.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/role.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/status.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/storage.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/task.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/models/upload.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/openpgp.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/protobuf/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/protobuf/analytics_pb2.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/pulp_hashlib.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/pulpcore_gunicorn_application.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/redis_connection.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/replica.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/response.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/role_util.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/access_policy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/acs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/domain.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/exporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/importer.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/openpgp.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/orphans.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/progress.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/publication.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/purge.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/reclaim.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/repair.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/replica.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/repository.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/status.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/task.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/upload.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/serializers/user.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/settings.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/analytics.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/export.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/importer.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/migrate.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/orphan.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/purge.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/reclaim_space.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/replica.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/repository.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/telemetry.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/test.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/tasks/upload.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/templates/rest_framework/api.html +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/templatetags/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/templatetags/pulp_urls.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/urls.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/util.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/views/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/views/importer.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/views/orphans.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/views/repair.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/views/status.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/access_policy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/acs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/content.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/custom_filters.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/domain.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/exporter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/importer.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/openpgp.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/orphans.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/publication.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/reclaim.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/replica.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/repository.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/task.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/upload.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/viewsets/user.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/app/wsgi.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/backends.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/cache/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/cache/cache.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/constants.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/content/authentication.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/content/handler.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/content/instrumentation.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/download/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/download/factory.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/download/file.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/download/http.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/exceptions/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/exceptions/base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/exceptions/plugin.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/exceptions/validation.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/filters.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/metrics.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/middleware.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/migrations.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/openapi/hooks.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/access_policy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/actions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/apps.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/authentication/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/cache/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/constants.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/content.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/download/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/exceptions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/files.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/importexport.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/migrations.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/modelresources.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/models/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/models/role.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/publication_utils.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/pulp_hashlib.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/replica.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/repo_version_utils.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/responses.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/serializers/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/serializers/content.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/stages/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/stages/api.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/stages/artifact_stages.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/stages/content_stages.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/stages/declarative_version.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/stages/models.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/storage.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/sync.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/tasking.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/util.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/viewsets/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/plugin/viewsets/content.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/pytest_plugin.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/responses.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tasking/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tasking/_util.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tasking/entrypoint.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tasking/kafka.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tasking/storage.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tasking/tasks.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tasking/worker.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_access_policy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_api_docs.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_api_root_rewrite.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_artifact_distribution.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_auth.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_correlation_id.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_crd_artifacts.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_crud_domains.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_filter.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_login.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_openapi_schema.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_openpgp.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_replication.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_repos.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_role.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_root_endpoint.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_scoping.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_signing_service.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_status.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_task_purge.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_tasking.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_upload.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_users_groups.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_workers.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_checkpoint.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_access.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_cache.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_delivery.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_directory.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_path.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_promotion.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_contentguard.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_crud_repos.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_distributions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_filesystemexport.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_labels.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_migrate.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_orphans.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_pagination.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_prn.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_proxy.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_pulpimport.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_reclaim_disk_space.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_repair.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_repo_versions.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_tasks.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_unlinking_repo.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/assets/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/content_with_coverage.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/functional/utils.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/performance/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/performance/test_performance.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/conftest.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/content/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/content/test_handler.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/content/test_heartbeat.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/download/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/download/test_downloader_base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/download/test_downloader_factory.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/metrics/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/metrics/conftest.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/metrics/test_aiohttp_instrumentation.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/metrics/test_django_instrumentation.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/migration/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/migration/test_0077_move_remote_url_credentials.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/models/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_content.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_remote.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_repository.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_task.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/roles/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/roles/test_roles.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_domain.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_fields.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_orphans_cleanup.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_pulpexport.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_repository.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_user.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/stages/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/stages/test_artifactdownloader.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/stages/test_stages.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_cache.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_chunked_file.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_content_guard.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_files.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_import_checks.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_pulp_urls.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_settings.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_util.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/test_viewsets.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/viewsets/__init__.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore/tests/unit/viewsets/test_viewset_base.py +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore.egg-info/dependency_links.txt +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore.egg-info/entry_points.txt +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/pulpcore.egg-info/top_level.txt +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/setup.cfg +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/test_requirements.txt +0 -0
- {pulpcore-3.80.1 → pulpcore-3.81.0}/unittest_requirements.txt +0 -0
|
@@ -8,6 +8,38 @@
|
|
|
8
8
|
|
|
9
9
|
[//]: # (towncrier release notes start)
|
|
10
10
|
|
|
11
|
+
## 3.81.0 (2025-06-24) {: #3.81.0 }
|
|
12
|
+
|
|
13
|
+
### REST API {: #3.81.0-rest-api }
|
|
14
|
+
|
|
15
|
+
#### Features {: #3.81.0-rest-api-feature }
|
|
16
|
+
|
|
17
|
+
- Checksum calculation of files being uploaded or downloaded to Pulp is now multithreaded.
|
|
18
|
+
|
|
19
|
+
#### Bugfixes {: #3.81.0-rest-api-bugfix }
|
|
20
|
+
|
|
21
|
+
- Changed default http bind address from `[::]` to `0.0.0.0` if IPv6 is not available.
|
|
22
|
+
[#6606](https://github.com/pulp/pulpcore/issues/6606)
|
|
23
|
+
- Raised the minimum version of gunicorn to 22.0.
|
|
24
|
+
[#6640](https://github.com/pulp/pulpcore/issues/6640)
|
|
25
|
+
|
|
26
|
+
### Plugin API {: #3.81.0-plugin-api }
|
|
27
|
+
|
|
28
|
+
#### Bugfixes {: #3.81.0-plugin-api-bugfix }
|
|
29
|
+
|
|
30
|
+
- Fixed the `pulp_labels` field on the NoArtifactContentSerializer to work inside ViewSets for multipart/form uploads.
|
|
31
|
+
[#6713](https://github.com/pulp/pulpcore/issues/6713)
|
|
32
|
+
|
|
33
|
+
### Pulp File {: #3.81.0-pulp-file }
|
|
34
|
+
|
|
35
|
+
No significant changes.
|
|
36
|
+
|
|
37
|
+
### Pulp Cert Guard {: #3.81.0-pulp-cert-guard }
|
|
38
|
+
|
|
39
|
+
No significant changes.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
11
43
|
## 3.80.1 (2025-06-12) {: #3.80.1 }
|
|
12
44
|
|
|
13
45
|
### REST API {: #3.80.1-rest-api }
|
|
@@ -43,7 +75,7 @@ No significant changes.
|
|
|
43
75
|
|
|
44
76
|
### Plugin API {: #3.80.0-plugin-api }
|
|
45
77
|
|
|
46
|
-
####
|
|
78
|
+
#### Deprecations {: #3.80.0-plugin-api-deprecation }
|
|
47
79
|
|
|
48
80
|
- Deprecated `TaskGroup.finish()` for removal with Pulp 4.
|
|
49
81
|
[#task_group_finish](https://github.com/pulp/pulpcore/issues/task_group_finish)
|
|
@@ -58,6 +90,26 @@ No significant changes.
|
|
|
58
90
|
|
|
59
91
|
---
|
|
60
92
|
|
|
93
|
+
## 3.79.1 (2025-05-27) {: #3.79.1 }
|
|
94
|
+
|
|
95
|
+
### REST API {: #3.79.1-rest-api }
|
|
96
|
+
|
|
97
|
+
No significant changes.
|
|
98
|
+
|
|
99
|
+
### Plugin API {: #3.79.1-plugin-api }
|
|
100
|
+
|
|
101
|
+
No significant changes.
|
|
102
|
+
|
|
103
|
+
### Pulp File {: #3.79.1-pulp-file }
|
|
104
|
+
|
|
105
|
+
No significant changes.
|
|
106
|
+
|
|
107
|
+
### Pulp Cert Guard {: #3.79.1-pulp-cert-guard }
|
|
108
|
+
|
|
109
|
+
No significant changes.
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
61
113
|
## 3.79.0 (2025-05-20) {: #3.79.0 }
|
|
62
114
|
|
|
63
115
|
### REST API {: #3.79.0-rest-api }
|
|
@@ -104,7 +156,7 @@ No significant changes.
|
|
|
104
156
|
|
|
105
157
|
#### Misc {: #3.78.0-rest-api-misc }
|
|
106
158
|
|
|
107
|
-
-
|
|
159
|
+
-
|
|
108
160
|
|
|
109
161
|
### Plugin API {: #3.78.0-plugin-api }
|
|
110
162
|
|
|
@@ -167,7 +219,7 @@ No significant changes.
|
|
|
167
219
|
|
|
168
220
|
#### Misc {: #3.77.0-rest-api-misc }
|
|
169
221
|
|
|
170
|
-
-
|
|
222
|
+
-
|
|
171
223
|
|
|
172
224
|
### Plugin API {: #3.77.0-plugin-api }
|
|
173
225
|
|
|
@@ -482,6 +534,68 @@ No significant changes.
|
|
|
482
534
|
|
|
483
535
|
---
|
|
484
536
|
|
|
537
|
+
## 3.73.12 (2025-06-11) {: #3.73.12 }
|
|
538
|
+
|
|
539
|
+
### REST API {: #3.73.12-rest-api }
|
|
540
|
+
|
|
541
|
+
No significant changes.
|
|
542
|
+
|
|
543
|
+
### Plugin API {: #3.73.12-plugin-api }
|
|
544
|
+
|
|
545
|
+
No significant changes.
|
|
546
|
+
|
|
547
|
+
### Pulp File {: #3.73.12-pulp-file }
|
|
548
|
+
|
|
549
|
+
No significant changes.
|
|
550
|
+
|
|
551
|
+
### Pulp Cert Guard {: #3.73.12-pulp-cert-guard }
|
|
552
|
+
|
|
553
|
+
No significant changes.
|
|
554
|
+
|
|
555
|
+
---
|
|
556
|
+
|
|
557
|
+
## 3.73.11 (2025-06-04) {: #3.73.11 }
|
|
558
|
+
|
|
559
|
+
### REST API {: #3.73.11-rest-api }
|
|
560
|
+
|
|
561
|
+
No significant changes.
|
|
562
|
+
|
|
563
|
+
### Plugin API {: #3.73.11-plugin-api }
|
|
564
|
+
|
|
565
|
+
No significant changes.
|
|
566
|
+
|
|
567
|
+
### Pulp File {: #3.73.11-pulp-file }
|
|
568
|
+
|
|
569
|
+
No significant changes.
|
|
570
|
+
|
|
571
|
+
### Pulp Cert Guard {: #3.73.11-pulp-cert-guard }
|
|
572
|
+
|
|
573
|
+
No significant changes.
|
|
574
|
+
|
|
575
|
+
---
|
|
576
|
+
|
|
577
|
+
## 3.73.10 (2025-05-27) {: #3.73.10 }
|
|
578
|
+
|
|
579
|
+
### REST API {: #3.73.10-rest-api }
|
|
580
|
+
|
|
581
|
+
#### Bugfixes {: #3.73.10-rest-api-bugfix }
|
|
582
|
+
|
|
583
|
+
- Prevent downloader session to be closed when there is a digest validation in on_demand content serving.
|
|
584
|
+
|
|
585
|
+
### Plugin API {: #3.73.10-plugin-api }
|
|
586
|
+
|
|
587
|
+
No significant changes.
|
|
588
|
+
|
|
589
|
+
### Pulp File {: #3.73.10-pulp-file }
|
|
590
|
+
|
|
591
|
+
No significant changes.
|
|
592
|
+
|
|
593
|
+
### Pulp Cert Guard {: #3.73.10-pulp-cert-guard }
|
|
594
|
+
|
|
595
|
+
No significant changes.
|
|
596
|
+
|
|
597
|
+
---
|
|
598
|
+
|
|
485
599
|
## 3.73.9 (2025-05-06) {: #3.73.9 }
|
|
486
600
|
|
|
487
601
|
### REST API {: #3.73.9-rest-api }
|
|
@@ -1253,7 +1367,7 @@ No significant changes.
|
|
|
1253
1367
|
- Downloaders now always ensure the download ends up under `WORKING_DIRECTORY`.
|
|
1254
1368
|
[#5912](https://github.com/pulp/pulpcore/issues/5912)
|
|
1255
1369
|
|
|
1256
|
-
####
|
|
1370
|
+
#### Deprecations {: #3.67.0-plugin-api-deprecation }
|
|
1257
1371
|
|
|
1258
1372
|
- Deprecated `AccessPolicyFromDB` for removal in 4.0.
|
|
1259
1373
|
[#5822](https://github.com/pulp/pulpcore/issues/5822)
|
|
@@ -1393,6 +1507,48 @@ No significant changes.
|
|
|
1393
1507
|
|
|
1394
1508
|
---
|
|
1395
1509
|
|
|
1510
|
+
## 3.63.20 (2025-06-04) {: #3.63.20 }
|
|
1511
|
+
|
|
1512
|
+
### REST API {: #3.63.20-rest-api }
|
|
1513
|
+
|
|
1514
|
+
No significant changes.
|
|
1515
|
+
|
|
1516
|
+
### Plugin API {: #3.63.20-plugin-api }
|
|
1517
|
+
|
|
1518
|
+
No significant changes.
|
|
1519
|
+
|
|
1520
|
+
### Pulp File {: #3.63.20-pulp-file }
|
|
1521
|
+
|
|
1522
|
+
No significant changes.
|
|
1523
|
+
|
|
1524
|
+
### Pulp Cert Guard {: #3.63.20-pulp-cert-guard }
|
|
1525
|
+
|
|
1526
|
+
No significant changes.
|
|
1527
|
+
|
|
1528
|
+
---
|
|
1529
|
+
|
|
1530
|
+
## 3.63.19 (2025-05-27) {: #3.63.19 }
|
|
1531
|
+
|
|
1532
|
+
### REST API {: #3.63.19-rest-api }
|
|
1533
|
+
|
|
1534
|
+
#### Bugfixes {: #3.63.19-rest-api-bugfix }
|
|
1535
|
+
|
|
1536
|
+
- Prevent downloader session to be closed when there is a digest validation in on_demand content serving.
|
|
1537
|
+
|
|
1538
|
+
### Plugin API {: #3.63.19-plugin-api }
|
|
1539
|
+
|
|
1540
|
+
No significant changes.
|
|
1541
|
+
|
|
1542
|
+
### Pulp File {: #3.63.19-pulp-file }
|
|
1543
|
+
|
|
1544
|
+
No significant changes.
|
|
1545
|
+
|
|
1546
|
+
### Pulp Cert Guard {: #3.63.19-pulp-cert-guard }
|
|
1547
|
+
|
|
1548
|
+
No significant changes.
|
|
1549
|
+
|
|
1550
|
+
---
|
|
1551
|
+
|
|
1396
1552
|
## 3.63.18 (2025-05-13) {: #3.63.18 }
|
|
1397
1553
|
|
|
1398
1554
|
### REST API {: #3.63.18-rest-api }
|
|
@@ -4229,6 +4385,23 @@ No significant changes.
|
|
|
4229
4385
|
- Starting from this release pulp_file will be shipped as part of the pulpcore package.
|
|
4230
4386
|
[#4550](https://github.com/pulp/pulpcore/issues/4550)
|
|
4231
4387
|
|
|
4388
|
+
## 3.39.32 (2025-05-27) {: #3.39.32 }
|
|
4389
|
+
|
|
4390
|
+
### REST API {: #3.39.32-rest-api }
|
|
4391
|
+
|
|
4392
|
+
#### Bugfixes {: #3.39.32-rest-api-bugfix }
|
|
4393
|
+
|
|
4394
|
+
- Fixed bug which prevented the Pulp API usaging from a web browser
|
|
4395
|
+
[#5250](https://github.com/pulp/pulpcore/issues/5250)
|
|
4396
|
+
- pass envvars to Signing Scripts to access GNUPGHOME
|
|
4397
|
+
[#5911](https://github.com/pulp/pulpcore/issues/5911)
|
|
4398
|
+
|
|
4399
|
+
### Plugin API {: #3.39.32-plugin-api }
|
|
4400
|
+
|
|
4401
|
+
No significant changes.
|
|
4402
|
+
|
|
4403
|
+
---
|
|
4404
|
+
|
|
4232
4405
|
## 3.39.31 (2025-05-20) {: #3.39.31 }
|
|
4233
4406
|
|
|
4234
4407
|
### REST API {: #3.39.31-rest-api }
|
|
@@ -5198,6 +5371,23 @@ No significant changes.
|
|
|
5198
5371
|
|
|
5199
5372
|
- [#3798](https://github.com/pulp/pulpcore/issues/3798)
|
|
5200
5373
|
|
|
5374
|
+
## 3.28.39 (2025-05-27) {: #3.28.39 }
|
|
5375
|
+
|
|
5376
|
+
### REST API {: #3.28.39-rest-api }
|
|
5377
|
+
|
|
5378
|
+
#### Bugfixes {: #3.28.39-rest-api-bugfix }
|
|
5379
|
+
|
|
5380
|
+
- Fixed bug which prevented the Pulp API usaging from a web browser
|
|
5381
|
+
[#5250](https://github.com/pulp/pulpcore/issues/5250)
|
|
5382
|
+
- pass envvars to Signing Scripts to access GNUPGHOME
|
|
5383
|
+
[#5911](https://github.com/pulp/pulpcore/issues/5911)
|
|
5384
|
+
|
|
5385
|
+
### Plugin API {: #3.28.39-plugin-api }
|
|
5386
|
+
|
|
5387
|
+
No significant changes.
|
|
5388
|
+
|
|
5389
|
+
---
|
|
5390
|
+
|
|
5201
5391
|
## 3.28.38 (2025-05-20) {: #3.28.38 }
|
|
5202
5392
|
|
|
5203
5393
|
### REST API {: #3.28.38-rest-api }
|
|
@@ -7898,7 +8088,7 @@ No significant changes.
|
|
|
7898
8088
|
- Documented the use of `RolesMixin` in the plugin writer concepts section.
|
|
7899
8089
|
[#3085](https://github.com/pulp/pulpcore/issues/3085)
|
|
7900
8090
|
|
|
7901
|
-
####
|
|
8091
|
+
#### Deprecations
|
|
7902
8092
|
|
|
7903
8093
|
- Deprecated `verify_signature` in favor of `gpg_verify` for removal in 3.25.
|
|
7904
8094
|
[#2930](https://github.com/pulp/pulpcore/issues/2930)
|
|
@@ -8041,6 +8231,13 @@ No significant changes.
|
|
|
8041
8231
|
- Update installation instructions about "User and database configuration" for the Database setup to point to a matching Django documentation.
|
|
8042
8232
|
[#2877](https://github.com/pulp/pulpcore/issues/2877)
|
|
8043
8233
|
|
|
8234
|
+
#### Deprecations
|
|
8235
|
+
|
|
8236
|
+
- Deprecated creation hook interface was removed. Creation hook need to be registered with the view
|
|
8237
|
+
set by the plugin writer before being used. Creation hooks can no longer be added with the
|
|
8238
|
+
deprecated name `permission_assignments`.
|
|
8239
|
+
[#2559](https://github.com/pulp/pulpcore/issues/2559)
|
|
8240
|
+
|
|
8044
8241
|
#### Removals
|
|
8045
8242
|
|
|
8046
8243
|
- Removed the group permission endpoints `api/v3/groups/:id/model_permissions/` and
|
|
@@ -8049,10 +8246,6 @@ No significant changes.
|
|
|
8049
8246
|
- Removed django-guardian from the stack. The `guardian.backends.ObjectPermissionBackend` should
|
|
8050
8247
|
not be used anymore.
|
|
8051
8248
|
[#2051](https://github.com/pulp/pulpcore/issues/2051)
|
|
8052
|
-
- Deprecated creation hook interface was removed. Creation hook need to be registered with the view
|
|
8053
|
-
set by the plugin writer before being used. Creation hooks can no longer be added with the
|
|
8054
|
-
deprecated name `permission_assignments`.
|
|
8055
|
-
[#2559](https://github.com/pulp/pulpcore/issues/2559)
|
|
8056
8249
|
|
|
8057
8250
|
#### Misc
|
|
8058
8251
|
|
|
@@ -9032,13 +9225,10 @@ No significant changes.
|
|
|
9032
9225
|
- Expose Roles model in plugin api.
|
|
9033
9226
|
[#2185](https://github.com/pulp/pulpcore/issues/2185)
|
|
9034
9227
|
|
|
9035
|
-
####
|
|
9228
|
+
#### Deprecations
|
|
9036
9229
|
|
|
9037
9230
|
- Deprecate the the use of `custom_file_object` parameter in `BaseDownloader`.
|
|
9038
9231
|
[#2123](https://github.com/pulp/pulpcore/issues/2123)
|
|
9039
|
-
|
|
9040
|
-
#### Deprecations
|
|
9041
|
-
|
|
9042
9232
|
- The `API_ROOT` constant has been deprecated and turned into a setting. Its removal is scheduled
|
|
9043
9233
|
for 3.20. Please use the setting with the same name instead.
|
|
9044
9234
|
[#2148](https://github.com/pulp/pulpcore/issues/2148)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pulpcore
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.81.0
|
|
4
4
|
Summary: Pulp Django Application and Related Modules
|
|
5
5
|
Author-email: Pulp Team <pulp-list@redhat.com>
|
|
6
6
|
Project-URL: Homepage, https://pulpproject.org
|
|
@@ -21,17 +21,17 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
21
21
|
Requires-Python: >=3.9
|
|
22
22
|
Description-Content-Type: text/markdown
|
|
23
23
|
License-File: LICENSE
|
|
24
|
-
Requires-Dist: aiodns
|
|
25
|
-
Requires-Dist: aiofiles
|
|
26
|
-
Requires-Dist: aiohttp<3.
|
|
24
|
+
Requires-Dist: aiodns<3.6,>=3.3.0
|
|
25
|
+
Requires-Dist: aiofiles<=24.1.0,>=22.1
|
|
26
|
+
Requires-Dist: aiohttp<3.13,>=3.8.1
|
|
27
27
|
Requires-Dist: asyncio-throttle<=1.0.2,>=1.0
|
|
28
28
|
Requires-Dist: async-timeout<4.0.4,>=4.0.3; python_version < "3.11"
|
|
29
|
-
Requires-Dist: backoff<2.
|
|
30
|
-
Requires-Dist: click
|
|
31
|
-
Requires-Dist: cryptography<
|
|
29
|
+
Requires-Dist: backoff<2.3,>=2.1.2
|
|
30
|
+
Requires-Dist: click<8.2,>=8.1.0
|
|
31
|
+
Requires-Dist: cryptography<46.0,>=38.0.1
|
|
32
32
|
Requires-Dist: Django~=4.2.0
|
|
33
33
|
Requires-Dist: django-filter<=25.1,>=23.1
|
|
34
|
-
Requires-Dist: django-guid
|
|
34
|
+
Requires-Dist: django-guid<3.6,>=3.3.0
|
|
35
35
|
Requires-Dist: django-import-export<3.4.0,>=2.9
|
|
36
36
|
Requires-Dist: django-lifecycle<=1.2.4,>=1.0
|
|
37
37
|
Requires-Dist: djangorestframework<=3.16.0,>=3.14.0
|
|
@@ -40,28 +40,28 @@ Requires-Dist: drf-access-policy<1.5.1,>=1.1.2
|
|
|
40
40
|
Requires-Dist: drf-nested-routers<=0.94.2,>=0.93.4
|
|
41
41
|
Requires-Dist: drf-spectacular==0.27.2
|
|
42
42
|
Requires-Dist: dynaconf<3.3.0,>=3.2.5
|
|
43
|
-
Requires-Dist: gunicorn<23.1.0,>=
|
|
43
|
+
Requires-Dist: gunicorn<23.1.0,>=22.0
|
|
44
44
|
Requires-Dist: importlib-metadata<=6.0.1,>=6.0.1
|
|
45
45
|
Requires-Dist: jinja2<=3.1.6,>=3.1
|
|
46
46
|
Requires-Dist: json_stream<2.4,>=2.3.2
|
|
47
|
-
Requires-Dist: jq<1.
|
|
47
|
+
Requires-Dist: jq<1.10.0,>=1.6.0
|
|
48
48
|
Requires-Dist: PyOpenSSL<26.0
|
|
49
|
-
Requires-Dist: opentelemetry-api<1.
|
|
50
|
-
Requires-Dist: opentelemetry-sdk<1.
|
|
51
|
-
Requires-Dist: opentelemetry-exporter-otlp-proto-http<1.
|
|
49
|
+
Requires-Dist: opentelemetry-api<1.35,>=1.27.0
|
|
50
|
+
Requires-Dist: opentelemetry-sdk<1.35,>=1.27.0
|
|
51
|
+
Requires-Dist: opentelemetry-exporter-otlp-proto-http<1.35,>=1.27.0
|
|
52
52
|
Requires-Dist: protobuf<6.0,>=4.21.1
|
|
53
|
-
Requires-Dist: pulp-glue<0.
|
|
53
|
+
Requires-Dist: pulp-glue<0.34,>=0.18.0
|
|
54
54
|
Requires-Dist: pygtrie<=2.5.0,>=2.5
|
|
55
55
|
Requires-Dist: psycopg[binary]<3.3,>=3.1.8
|
|
56
|
-
Requires-Dist: pyparsing
|
|
56
|
+
Requires-Dist: pyparsing<3.3,>=3.1.0
|
|
57
57
|
Requires-Dist: python-gnupg<=0.5.4,>=0.5
|
|
58
|
-
Requires-Dist: PyYAML
|
|
59
|
-
Requires-Dist: redis<5.
|
|
60
|
-
Requires-Dist: tablib<3.6.0
|
|
61
|
-
Requires-Dist: url-normalize
|
|
62
|
-
Requires-Dist: uuid6<=
|
|
58
|
+
Requires-Dist: PyYAML<6.1,>=5.1.1
|
|
59
|
+
Requires-Dist: redis<5.3,>=4.3.0
|
|
60
|
+
Requires-Dist: tablib<3.6,>=3.5.0
|
|
61
|
+
Requires-Dist: url-normalize<2.3,>=1.4.3
|
|
62
|
+
Requires-Dist: uuid6<=2025.0.0,>=2023.5.2
|
|
63
63
|
Requires-Dist: whitenoise<6.10.0,>=5.0
|
|
64
|
-
Requires-Dist: yarl<1.
|
|
64
|
+
Requires-Dist: yarl<1.21,>=1.8
|
|
65
65
|
Provides-Extra: sftp
|
|
66
66
|
Requires-Dist: django-storages[sftp]==1.14.6; extra == "sftp"
|
|
67
67
|
Provides-Extra: s3
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
import os
|
|
2
2
|
import uuid
|
|
3
|
-
import subprocess
|
|
4
|
-
from collections import defaultdict
|
|
5
|
-
from pathlib import Path
|
|
6
3
|
|
|
7
|
-
import aiofiles
|
|
8
4
|
import pytest
|
|
9
|
-
from aiohttp import web
|
|
10
5
|
|
|
11
6
|
from pulpcore.tests.functional.utils import BindingsNamespace, generate_iso, generate_manifest
|
|
12
7
|
|
|
@@ -37,9 +32,9 @@ def file_random_content_unit(file_content_unit_with_name_factory):
|
|
|
37
32
|
|
|
38
33
|
|
|
39
34
|
@pytest.fixture
|
|
40
|
-
def file_content_unit_with_name_factory(file_bindings,
|
|
35
|
+
def file_content_unit_with_name_factory(file_bindings, random_artifact_factory, monitor_task):
|
|
41
36
|
def _file_content_unit_with_name_factory(name):
|
|
42
|
-
artifact_attrs = {"artifact":
|
|
37
|
+
artifact_attrs = {"artifact": random_artifact_factory().pulp_href, "relative_path": name}
|
|
43
38
|
return file_bindings.ContentFilesApi.read(
|
|
44
39
|
monitor_task(
|
|
45
40
|
file_bindings.ContentFilesApi.create(**artifact_attrs).task
|
|
@@ -74,14 +69,13 @@ def file_distribution_factory(file_bindings, gen_object_with_cleanup):
|
|
|
74
69
|
return _file_distribution_factory
|
|
75
70
|
|
|
76
71
|
|
|
77
|
-
@pytest.fixture
|
|
78
|
-
def file_fixtures_root(
|
|
79
|
-
fixture_dir =
|
|
80
|
-
fixture_dir.mkdir()
|
|
72
|
+
@pytest.fixture(scope="class")
|
|
73
|
+
def file_fixtures_root(tmp_path_factory):
|
|
74
|
+
fixture_dir = tmp_path_factory.mktemp("fixtures")
|
|
81
75
|
return fixture_dir
|
|
82
76
|
|
|
83
77
|
|
|
84
|
-
@pytest.fixture
|
|
78
|
+
@pytest.fixture(scope="class")
|
|
85
79
|
def write_3_iso_file_fixture_data_factory(file_fixtures_root):
|
|
86
80
|
def _write_3_iso_file_fixture_data_factory(name, overwrite=False, seed=None):
|
|
87
81
|
file_fixtures_root.joinpath(name).mkdir(exist_ok=overwrite)
|
|
@@ -96,12 +90,12 @@ def write_3_iso_file_fixture_data_factory(file_fixtures_root):
|
|
|
96
90
|
return _write_3_iso_file_fixture_data_factory
|
|
97
91
|
|
|
98
92
|
|
|
99
|
-
@pytest.fixture
|
|
93
|
+
@pytest.fixture(scope="class")
|
|
100
94
|
def basic_manifest_path(write_3_iso_file_fixture_data_factory):
|
|
101
95
|
return write_3_iso_file_fixture_data_factory("basic")
|
|
102
96
|
|
|
103
97
|
|
|
104
|
-
@pytest.fixture
|
|
98
|
+
@pytest.fixture(scope="class")
|
|
105
99
|
def copy_manifest_only_factory(file_fixtures_root):
|
|
106
100
|
def _copy_manifest_only(name):
|
|
107
101
|
file_fixtures_root.joinpath(f"{name}-manifest").mkdir()
|
|
@@ -114,12 +108,12 @@ def copy_manifest_only_factory(file_fixtures_root):
|
|
|
114
108
|
return _copy_manifest_only
|
|
115
109
|
|
|
116
110
|
|
|
117
|
-
@pytest.fixture
|
|
111
|
+
@pytest.fixture(scope="class")
|
|
118
112
|
def basic_manifest_only_path(copy_manifest_only_factory):
|
|
119
113
|
return copy_manifest_only_factory("basic")
|
|
120
114
|
|
|
121
115
|
|
|
122
|
-
@pytest.fixture
|
|
116
|
+
@pytest.fixture(scope="class")
|
|
123
117
|
def large_manifest_path(file_fixtures_root):
|
|
124
118
|
one_megabyte = 1048576
|
|
125
119
|
file_fixtures_root.joinpath("large").mkdir()
|
|
@@ -128,7 +122,7 @@ def large_manifest_path(file_fixtures_root):
|
|
|
128
122
|
return "/large/PULP_MANIFEST"
|
|
129
123
|
|
|
130
124
|
|
|
131
|
-
@pytest.fixture
|
|
125
|
+
@pytest.fixture(scope="class")
|
|
132
126
|
def range_header_manifest_path(file_fixtures_root):
|
|
133
127
|
"""A path to a File repository manifest that contains 8 unique files each 4mb in size."""
|
|
134
128
|
one_megabyte = 1048576
|
|
@@ -147,7 +141,7 @@ def range_header_manifest_path(file_fixtures_root):
|
|
|
147
141
|
return "/range/PULP_MANIFEST"
|
|
148
142
|
|
|
149
143
|
|
|
150
|
-
@pytest.fixture
|
|
144
|
+
@pytest.fixture(scope="class")
|
|
151
145
|
def manifest_path_with_commas(file_fixtures_root):
|
|
152
146
|
file_fixtures_root.joinpath("comma_test").mkdir()
|
|
153
147
|
file_fixtures_root.joinpath("comma_test/comma,folder").mkdir()
|
|
@@ -161,15 +155,15 @@ def manifest_path_with_commas(file_fixtures_root):
|
|
|
161
155
|
return "/comma_test/PULP_MANIFEST"
|
|
162
156
|
|
|
163
157
|
|
|
164
|
-
@pytest.fixture
|
|
158
|
+
@pytest.fixture(scope="class")
|
|
165
159
|
def invalid_manifest_path(file_fixtures_root, basic_manifest_path):
|
|
166
|
-
file_path_to_corrupt = file_fixtures_root /
|
|
160
|
+
file_path_to_corrupt = file_fixtures_root / "basic/1.iso"
|
|
167
161
|
with open(file_path_to_corrupt, "w") as f:
|
|
168
162
|
f.write("this is not the right data")
|
|
169
163
|
return basic_manifest_path
|
|
170
164
|
|
|
171
165
|
|
|
172
|
-
@pytest.fixture
|
|
166
|
+
@pytest.fixture(scope="class")
|
|
173
167
|
def duplicate_filename_paths(write_3_iso_file_fixture_data_factory):
|
|
174
168
|
return (
|
|
175
169
|
write_3_iso_file_fixture_data_factory("file"),
|
|
@@ -177,24 +171,24 @@ def duplicate_filename_paths(write_3_iso_file_fixture_data_factory):
|
|
|
177
171
|
)
|
|
178
172
|
|
|
179
173
|
|
|
180
|
-
@pytest.fixture
|
|
174
|
+
@pytest.fixture(scope="class")
|
|
181
175
|
def file_fixture_server_ssl_client_cert_req(
|
|
182
176
|
ssl_ctx_req_client_auth, file_fixtures_root, gen_fixture_server
|
|
183
177
|
):
|
|
184
178
|
return gen_fixture_server(file_fixtures_root, ssl_ctx_req_client_auth)
|
|
185
179
|
|
|
186
180
|
|
|
187
|
-
@pytest.fixture
|
|
181
|
+
@pytest.fixture(scope="class")
|
|
188
182
|
def file_fixture_server_ssl(ssl_ctx, file_fixtures_root, gen_fixture_server):
|
|
189
183
|
return gen_fixture_server(file_fixtures_root, ssl_ctx)
|
|
190
184
|
|
|
191
185
|
|
|
192
|
-
@pytest.fixture
|
|
186
|
+
@pytest.fixture(scope="class")
|
|
193
187
|
def file_fixture_server(file_fixtures_root, gen_fixture_server):
|
|
194
188
|
return gen_fixture_server(file_fixtures_root, None)
|
|
195
189
|
|
|
196
190
|
|
|
197
|
-
@pytest.fixture
|
|
191
|
+
@pytest.fixture(scope="class")
|
|
198
192
|
def file_remote_factory(file_fixture_server, file_bindings, gen_object_with_cleanup):
|
|
199
193
|
def _file_remote_factory(
|
|
200
194
|
manifest_path=None, url=None, policy="immediate", pulp_domain=None, **body
|
|
@@ -213,7 +207,7 @@ def file_remote_factory(file_fixture_server, file_bindings, gen_object_with_clea
|
|
|
213
207
|
return _file_remote_factory
|
|
214
208
|
|
|
215
209
|
|
|
216
|
-
@pytest.fixture
|
|
210
|
+
@pytest.fixture(scope="class")
|
|
217
211
|
def file_remote_ssl_factory(
|
|
218
212
|
file_fixture_server_ssl,
|
|
219
213
|
file_bindings,
|
|
@@ -235,7 +229,7 @@ def file_remote_ssl_factory(
|
|
|
235
229
|
return _file_remote_ssl_factory
|
|
236
230
|
|
|
237
231
|
|
|
238
|
-
@pytest.fixture
|
|
232
|
+
@pytest.fixture(scope="class")
|
|
239
233
|
def file_remote_client_cert_req_factory(
|
|
240
234
|
file_fixture_server_ssl_client_cert_req,
|
|
241
235
|
file_bindings,
|
|
@@ -290,83 +284,7 @@ def file_publication_factory(file_bindings, gen_object_with_cleanup):
|
|
|
290
284
|
return _file_publication_factory
|
|
291
285
|
|
|
292
286
|
|
|
293
|
-
@pytest.fixture
|
|
294
|
-
def gen_bad_response_fixture_server(gen_threaded_aiohttp_server):
|
|
295
|
-
"""
|
|
296
|
-
This server will perform 3 bad responses for each file requested.
|
|
297
|
-
|
|
298
|
-
1st response will be incomplete, sending only half of the data.
|
|
299
|
-
2nd response will have corrupted data, with one byte changed.
|
|
300
|
-
3rd response will return error 429.
|
|
301
|
-
4th response will be correct.
|
|
302
|
-
"""
|
|
303
|
-
|
|
304
|
-
def _gen_fixture_server(fixtures_root, ssl_ctx):
|
|
305
|
-
record = []
|
|
306
|
-
num_requests = defaultdict(int)
|
|
307
|
-
|
|
308
|
-
async def handler(request):
|
|
309
|
-
nonlocal num_requests
|
|
310
|
-
record.append(request)
|
|
311
|
-
relative_path = request.raw_path[1:] # Strip off leading "/"
|
|
312
|
-
file_path = Path(fixtures_root) / Path(relative_path)
|
|
313
|
-
# Max retries is 3. So on fourth request, send full data
|
|
314
|
-
num_requests[relative_path] += 1
|
|
315
|
-
if "PULP_MANIFEST" in relative_path or num_requests[relative_path] % 4 == 0:
|
|
316
|
-
return web.FileResponse(file_path)
|
|
317
|
-
|
|
318
|
-
# On third request send 429 error, TooManyRequests
|
|
319
|
-
if num_requests[relative_path] % 4 == 3:
|
|
320
|
-
raise web.HTTPTooManyRequests
|
|
321
|
-
|
|
322
|
-
size = file_path.stat().st_size
|
|
323
|
-
response = web.StreamResponse(headers={"content-length": f"{size}"})
|
|
324
|
-
await response.prepare(request)
|
|
325
|
-
async with aiofiles.open(file_path, "rb") as f:
|
|
326
|
-
# Send only partial content causing aiohttp.ClientPayloadError if request num == 1
|
|
327
|
-
chunk = await f.read(size // 2)
|
|
328
|
-
await response.write(chunk)
|
|
329
|
-
# Send last chunk with modified last byte if request num == 2
|
|
330
|
-
if num_requests[relative_path] % 4 == 2:
|
|
331
|
-
chunk2 = await f.read()
|
|
332
|
-
await response.write(chunk2[:-1])
|
|
333
|
-
await response.write(bytes([chunk2[-1] ^ 1]))
|
|
334
|
-
else:
|
|
335
|
-
request.transport.close()
|
|
336
|
-
|
|
337
|
-
return response
|
|
338
|
-
|
|
339
|
-
app = web.Application()
|
|
340
|
-
app.add_routes([web.get("/{tail:.*}", handler)])
|
|
341
|
-
return gen_threaded_aiohttp_server(app, ssl_ctx, record)
|
|
342
|
-
|
|
343
|
-
return _gen_fixture_server
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
@pytest.fixture
|
|
347
|
-
def bad_response_fixture_server(file_fixtures_root, gen_bad_response_fixture_server):
|
|
348
|
-
return gen_bad_response_fixture_server(file_fixtures_root, None)
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
@pytest.fixture
|
|
352
|
-
def wget_recursive_download_on_host():
|
|
353
|
-
def _wget_recursive_download_on_host(url, destination):
|
|
354
|
-
subprocess.check_output(
|
|
355
|
-
[
|
|
356
|
-
"wget",
|
|
357
|
-
"--recursive",
|
|
358
|
-
"--no-parent",
|
|
359
|
-
"--no-host-directories",
|
|
360
|
-
"--directory-prefix",
|
|
361
|
-
destination,
|
|
362
|
-
url,
|
|
363
|
-
]
|
|
364
|
-
)
|
|
365
|
-
|
|
366
|
-
return _wget_recursive_download_on_host
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
@pytest.fixture
|
|
287
|
+
@pytest.fixture(scope="class")
|
|
370
288
|
def generate_server_and_remote(
|
|
371
289
|
file_bindings, gen_fixture_server, file_fixtures_root, gen_object_with_cleanup
|
|
372
290
|
):
|