Actions
Issue #4328
closedfsLayers error during sync
Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Sprint/Milestone:
Start date:
Due date:
Estimated time:
Severity:
2. Medium
Version - Docker:
Platform Release:
2.19.0
Target Release - Docker:
OS:
CentOS 7
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Sprint 48
Quarter:
Description
Hello,
trying to mirror gcr.io/google-containers/etcd, I encountered that issue during a sync:
2019-01-15 12:54:13,606 - INFO - Response body :
{
"exception": null,
"task_type": "pulp.server.managers.repo.sync.sync",
"_href": "/pulp/api/v2/tasks/291a8d9d-4b84-4aeb-af0f-2772e8ade987/",
"task_id": "291a8d9d-4b84-4aeb-af0f-2772e8ade987",
"tags": [
"pulp:repository:etcd-gcr2",
"pulp:action:sync"
],
"finish_time": "2019-01-15T20:54:12Z",
"_ns": "task_status",
"start_time": "2019-01-15T20:54:09Z",
"traceback": "Traceback (most recent call last):\n File \"/usr/lib/python2.7/site-packages/celery/app/trace.py\", line 367, in trace_task\n R = retval = fun(*args, **kwargs)\n File \"/usr/lib/python2.7/site-packages/pulp/server/async/tasks.py\", line 529, in __call__\n return super(Task, self).__call__(*args, **kwargs)\n File \"/usr/lib/python2.7/site-packages/pulp/server/async/tasks.py\", line 107, in __call__\n return super(PulpTask, self).__call__(*args, **kwargs)\n File \"/usr/lib/python2.7/site-packages/celery/app/trace.py\", line 622, in __protected_call__\n return self.run(*args, **kwargs)\n File \"/usr/lib/python2.7/site-packages/pulp/server/controllers/repository.py\", line 770, in sync\n sync_report = sync_repo(transfer_repo, conduit, call_config)\n File \"/usr/lib/python2.7/site-packages/pulp/server/async/tasks.py\", line 737, in wrap_f\n return f(*args, **kwargs)\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/importers/importer.py\", line 85, in sync_repo\n return self.sync_step.process_lifecycle()\n File \"/usr/lib/python2.7/site-packages/pulp/plugins/util/publish_step.py\", line 572, in process_lifecycle\n super(PluginStep, self).process_lifecycle()\n File \"/usr/lib/python2.7/site-packages/pulp/plugins/util/publish_step.py\", line 163, in process_lifecycle\n step.process()\n File \"/usr/lib/python2.7/site-packages/pulp/plugins/util/publish_step.py\", line 256, in process\n self._process_block()\n File \"/usr/lib/python2.7/site-packages/pulp/plugins/util/publish_step.py\", line 303, in _process_block\n self.process_main()\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/importers/sync.py\", line 237, in process_main\n self._process_manifest_list(manifest, digest, available_blobs, tag)\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/importers/sync.py\", line 283, in _process_manifest_list\n self._process_manifest(manifest, digest, available_blobs, tag=tag)\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/importers/sync.py\", line 313, in _process_manifest\n manifest = models.Manifest.from_json(manifest, digest)\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/models.py\", line 219, in from_json\n fs_layers = [FSLayer(blob_sum=layer['blobSum']) for layer in manifest['fsLayers']]\nKeyError: 'fsLayers'\n",
"spawned_tasks": [],
"progress_report": {
"docker_importer": [
{
"num_success": 5,
"description": "Downloading manifests",
"step_type": "sync_step_metadata",
"items_total": 1,
"state": "FAILED",
"error_details": [
{
"traceback": " File \"/usr/lib/python2.7/site-packages/pulp/plugins/util/publish_step.py\", line 256, in process\n self._process_block()\n\n File \"/usr/lib/python2.7/site-packages/pulp/plugins/util/publish_step.py\", line 303, in _process_block\n self.process_main()\n\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/importers/sync.py\", line 237, in process_main\n self._process_manifest_list(manifest, digest, available_blobs, tag)\n\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/importers/sync.py\", line 283, in _process_manifest_list\n self._process_manifest(manifest, digest, available_blobs, tag=tag)\n\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/importers/sync.py\", line 313, in _process_manifest\n manifest = models.Manifest.from_json(manifest, digest)\n\n File \"/usr/lib/python2.7/site-packages/pulp_docker/plugins/models.py\", line 219, in from_json\n fs_layers = [FSLayer(blob_sum=layer['blobSum']) for layer in manifest['fsLayers']]\n",
"error": "'fsLayers'"
}
],
"details": "",
"num_failures": 1,
"step_id": "77747e24-bc58-46ed-b5a2-60c21ba5c5ad",
"num_processed": 6
},
{
"num_success": 0,
"description": "Copying units already in pulp",
"step_type": "get_local",
"items_total": 1,
"state": "NOT_STARTED",
"error_details": [],
"details": "",
"num_failures": 0,
"step_id": "695588b1-9004-4bce-ac6a-4f20bb1209c8",
"num_processed": 0
},
{
"num_success": 0,
"description": "Copying units already in pulp",
"step_type": "get_local",
"items_total": 1,
"state": "NOT_STARTED",
"error_details": [],
"details": "",
"num_failures": 0,
"step_id": "d211ca5e-bcf5-49df-a390-0e0016b4246f",
"num_processed": 0
},
{
"num_success": 0,
"description": "Downloading remote files",
"step_type": "sync_step_download",
"items_total": 1,
"state": "NOT_STARTED",
"error_details": [],
"details": "",
"num_failures": 0,
"step_id": "d627e410-d608-4a89-bec1-9709a1172821",
"num_processed": 0
},
{
"num_success": 0,
"description": "Saving Manifests and Blobs",
"step_type": "sync_step_save",
"items_total": 1,
"state": "NOT_STARTED",
"error_details": [],
"details": "",
"num_failures": 0,
"step_id": "23d120bd-01d3-40b8-ac6c-2cd434aed12f",
"num_processed": 0
},
{
"num_success": 0,
"description": "Saving Tags",
"step_type": "sync_step_save",
"items_total": 1,
"state": "NOT_STARTED",
"error_details": [],
"details": "",
"num_failures": 0,
"step_id": "97e64823-ef75-4406-ba71-fe7b8a081e61",
"num_processed": 0
}
]
},
Changing the source repository to quay.io/etcd works though.
I tried deleting the repo in pulp and re-create it or whitelisting a single tag, no luck.
Here are the repository details:
Importers:
Config:
Feed: https://gcr.io
Tags: 3.2.24
Upstream Name: google-containers/etcd
Id: docker_importer
Importer Type Id: docker_importer
Last Override Config:
Last Sync: 2019-01-15T20:54:12Z
Last Updated: 2019-01-15T20:53:58Z
Repo Id: etcd-gcr2
Scratchpad: None
Distributors:
Auto Publish: True
Config:
Repo-registry-id: google-containers/etcd2
Distributor Type Id: docker_distributor_web
Id: docker_web_distributor_name_cli
Last Override Config:
Last Publish: None
Last Updated: 2019-01-15T20:53:58Z
Repo Id: etcd-gcr2
Scratchpad:
Auto Publish: False
Config:
Repo-registry-id: google-containers/etcd2
Distributor Type Id: docker_distributor_export
Id: docker_export_distributor_name_cli
Last Override Config:
Last Publish: None
Last Updated: 2019-01-15T20:53:58Z
Repo Id: etcd-gcr2
Actions
Check for returned mediatype from the registry
closes #4328 https://pulp.plan.io/issues/4328