diff --git a/CHANGES/2122.bugfix b/CHANGES/2122.bugfix new file mode 100644 index 000000000..ab8ce4489 --- /dev/null +++ b/CHANGES/2122.bugfix @@ -0,0 +1 @@ +Fix an `AttributeError` issue that most commonly appears when running the `container-handle-image-data` management command. \ No newline at end of file diff --git a/pulp_container/app/models.py b/pulp_container/app/models.py index 626330aac..d4e440a63 100644 --- a/pulp_container/app/models.py +++ b/pulp_container/app/models.py @@ -228,12 +228,11 @@ def init_architecture_and_os(self): if self.json_manifest.get("architecture", None) or self.json_manifest.get("os", None): self.architecture = self.json_manifest.get("architecture", None) self.os = self.json_manifest.get("os", None) - return - - config_artifact = self.config_blob._artifacts.get() - config_data, _ = get_content_data(config_artifact) - self.architecture = config_data.get("architecture", None) - self.os = config_data.get("os", None) + elif self.config_blob: + config_artifact = self.config_blob._artifacts.get() + config_data, _ = get_content_data(config_artifact) + self.architecture = config_data.get("architecture", None) + self.os = config_data.get("os", None) def init_compressed_image_size(self): # manifestv2 schema1 has only blobSum definition for each layer diff --git a/pyproject.toml b/pyproject.toml index 9cc78f48f..e9f16209e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -27,6 +27,7 @@ dependencies = [ "jsonschema>=4.4,<4.24", "pulpcore>=3.73.0,<3.85", "pyjwt[crypto]>=2.4,<2.11", + "pycares<4.9", # pycares==4.9 + aiodns==3.2.0 + python<3.12 = trouble ] [project.urls]