Actions
Issue #1241
closedv1 images are getting published under the v2 location
Start date:
Due date:
Estimated time:
Severity:
3. High
Version - Docker:
master
Platform Release:
2.8.0
Target Release - Docker:
2.0.0
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Quarter:
Description
I haven't identified the cause for this bug yet, but it seems that Docker v1 Image objects are ending up inside the v2 publish location AND the v1 publish location. Here's an example of the busybox repository (with only v1 content types) published:
$ sudo tree /var/lib/pulp/published/docker/
/var/lib/pulp/published/docker/
├── v1
│ ├── app
│ │ └── busybox.json -> /var/lib/pulp/published/docker/v1/master/busybox/1441741595.79/busybox.json
│ ├── master
│ │ └── busybox
│ │ └── 1441741595.79
│ │ ├── busybox.json
│ │ └── web
│ │ ├── 31afc95cf92eb41a14857d064f52c710438f50c150f38f23080fc028100e7b2b
│ │ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/31afc95cf92eb41a14857d064f52c710438f50c150f38f23080fc028100e7b2b/ancestry
│ │ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/31afc95cf92eb41a14857d064f52c710438f50c150f38f23080fc028100e7b2b/json
│ │ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/31afc95cf92eb41a14857d064f52c710438f50c150f38f23080fc028100e7b2b/layer
│ │ ├── 32e97f5f5d6bd15b9cc293b38a5102a7ddac736852811110043992b20553177a
│ │ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/32e97f5f5d6bd15b9cc293b38a5102a7ddac736852811110043992b20553177a/ancestry
│ │ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/32e97f5f5d6bd15b9cc293b38a5102a7ddac736852811110043992b20553177a/json
│ │ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/32e97f5f5d6bd15b9cc293b38a5102a7ddac736852811110043992b20553177a/layer
│ │ ├── 3dba22db9896eb5f020691e1f8cda46735de533ca7b6b1b3b072272752935bad
│ │ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/3dba22db9896eb5f020691e1f8cda46735de533ca7b6b1b3b072272752935bad/ancestry
│ │ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/3dba22db9896eb5f020691e1f8cda46735de533ca7b6b1b3b072272752935bad/json
│ │ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/3dba22db9896eb5f020691e1f8cda46735de533ca7b6b1b3b072272752935bad/layer
│ │ ├── 47f0a47155d5917ed589420c7e528600fb322c4cb8ec5e89bc2ec84a3567ffce
│ │ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/47f0a47155d5917ed589420c7e528600fb322c4cb8ec5e89bc2ec84a3567ffce/ancestry
│ │ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/47f0a47155d5917ed589420c7e528600fb322c4cb8ec5e89bc2ec84a3567ffce/json
│ │ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/47f0a47155d5917ed589420c7e528600fb322c4cb8ec5e89bc2ec84a3567ffce/layer
│ │ ├── 6ce2e90b0bc7224de3db1f0d646fe8e2c4dd37f1793928287f6074bc451a57ea
│ │ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/6ce2e90b0bc7224de3db1f0d646fe8e2c4dd37f1793928287f6074bc451a57ea/ancestry
│ │ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/6ce2e90b0bc7224de3db1f0d646fe8e2c4dd37f1793928287f6074bc451a57ea/json
│ │ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/6ce2e90b0bc7224de3db1f0d646fe8e2c4dd37f1793928287f6074bc451a57ea/layer
│ │ ├── 7171b530b3c69f9cbc2b9893bbad8b726230515cb0c0886721ae7e5c1cee6df3
│ │ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/7171b530b3c69f9cbc2b9893bbad8b726230515cb0c0886721ae7e5c1cee6df3/ancestry
│ │ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/7171b530b3c69f9cbc2b9893bbad8b726230515cb0c0886721ae7e5c1cee6df3/json
│ │ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/7171b530b3c69f9cbc2b9893bbad8b726230515cb0c0886721ae7e5c1cee6df3/layer
│ │ ├── 8c2e06607696bd4afb3d03b687e361cc43cf8ec1a4a725bc96e39f05ba97dd55
│ │ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/8c2e06607696bd4afb3d03b687e361cc43cf8ec1a4a725bc96e39f05ba97dd55/ancestry
│ │ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/8c2e06607696bd4afb3d03b687e361cc43cf8ec1a4a725bc96e39f05ba97dd55/json
│ │ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/8c2e06607696bd4afb3d03b687e361cc43cf8ec1a4a725bc96e39f05ba97dd55/layer
│ │ ├── cf2616975b4a3cba083ca99bc3f0bf25f5f528c3c52be1596b30f60b0b1c37ff
│ │ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/cf2616975b4a3cba083ca99bc3f0bf25f5f528c3c52be1596b30f60b0b1c37ff/ancestry
│ │ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/cf2616975b4a3cba083ca99bc3f0bf25f5f528c3c52be1596b30f60b0b1c37ff/json
│ │ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/cf2616975b4a3cba083ca99bc3f0bf25f5f528c3c52be1596b30f60b0b1c37ff/layer
│ │ └── faf804f0e07b2936e84c9fe4ca7c60a6246cc669cf2ff70969f14a9eab6efb48
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/faf804f0e07b2936e84c9fe4ca7c60a6246cc669cf2ff70969f14a9eab6efb48/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/faf804f0e07b2936e84c9fe4ca7c60a6246cc669cf2ff70969f14a9eab6efb48/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/faf804f0e07b2936e84c9fe4ca7c60a6246cc669cf2ff70969f14a9eab6efb48/layer
│ └── web
│ └── busybox -> /var/lib/pulp/published/docker/v1/master/busybox/1441741595.79/web
└── v2
├── app
│ └── busybox.json -> /var/lib/pulp/published/docker/v2/master/busybox/1441741595.79/busybox.json
├── master
│ └── busybox
│ └── 1441741595.79
│ ├── busybox.json
│ ├── tags
│ │ └── list
│ └── web
│ ├── 31afc95cf92eb41a14857d064f52c710438f50c150f38f23080fc028100e7b2b
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/31afc95cf92eb41a14857d064f52c710438f50c150f38f23080fc028100e7b2b/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/31afc95cf92eb41a14857d064f52c710438f50c150f38f23080fc028100e7b2b/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/31afc95cf92eb41a14857d064f52c710438f50c150f38f23080fc028100e7b2b/layer
│ ├── 32e97f5f5d6bd15b9cc293b38a5102a7ddac736852811110043992b20553177a
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/32e97f5f5d6bd15b9cc293b38a5102a7ddac736852811110043992b20553177a/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/32e97f5f5d6bd15b9cc293b38a5102a7ddac736852811110043992b20553177a/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/32e97f5f5d6bd15b9cc293b38a5102a7ddac736852811110043992b20553177a/layer
│ ├── 3dba22db9896eb5f020691e1f8cda46735de533ca7b6b1b3b072272752935bad
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/3dba22db9896eb5f020691e1f8cda46735de533ca7b6b1b3b072272752935bad/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/3dba22db9896eb5f020691e1f8cda46735de533ca7b6b1b3b072272752935bad/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/3dba22db9896eb5f020691e1f8cda46735de533ca7b6b1b3b072272752935bad/layer
│ ├── 47f0a47155d5917ed589420c7e528600fb322c4cb8ec5e89bc2ec84a3567ffce
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/47f0a47155d5917ed589420c7e528600fb322c4cb8ec5e89bc2ec84a3567ffce/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/47f0a47155d5917ed589420c7e528600fb322c4cb8ec5e89bc2ec84a3567ffce/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/47f0a47155d5917ed589420c7e528600fb322c4cb8ec5e89bc2ec84a3567ffce/layer
│ ├── 6ce2e90b0bc7224de3db1f0d646fe8e2c4dd37f1793928287f6074bc451a57ea
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/6ce2e90b0bc7224de3db1f0d646fe8e2c4dd37f1793928287f6074bc451a57ea/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/6ce2e90b0bc7224de3db1f0d646fe8e2c4dd37f1793928287f6074bc451a57ea/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/6ce2e90b0bc7224de3db1f0d646fe8e2c4dd37f1793928287f6074bc451a57ea/layer
│ ├── 7171b530b3c69f9cbc2b9893bbad8b726230515cb0c0886721ae7e5c1cee6df3
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/7171b530b3c69f9cbc2b9893bbad8b726230515cb0c0886721ae7e5c1cee6df3/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/7171b530b3c69f9cbc2b9893bbad8b726230515cb0c0886721ae7e5c1cee6df3/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/7171b530b3c69f9cbc2b9893bbad8b726230515cb0c0886721ae7e5c1cee6df3/layer
│ ├── 8c2e06607696bd4afb3d03b687e361cc43cf8ec1a4a725bc96e39f05ba97dd55
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/8c2e06607696bd4afb3d03b687e361cc43cf8ec1a4a725bc96e39f05ba97dd55/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/8c2e06607696bd4afb3d03b687e361cc43cf8ec1a4a725bc96e39f05ba97dd55/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/8c2e06607696bd4afb3d03b687e361cc43cf8ec1a4a725bc96e39f05ba97dd55/layer
│ ├── cf2616975b4a3cba083ca99bc3f0bf25f5f528c3c52be1596b30f60b0b1c37ff
│ │ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/cf2616975b4a3cba083ca99bc3f0bf25f5f528c3c52be1596b30f60b0b1c37ff/ancestry
│ │ ├── json -> /var/lib/pulp/content/docker_image/docker_image/cf2616975b4a3cba083ca99bc3f0bf25f5f528c3c52be1596b30f60b0b1c37ff/json
│ │ └── layer -> /var/lib/pulp/content/docker_image/docker_image/cf2616975b4a3cba083ca99bc3f0bf25f5f528c3c52be1596b30f60b0b1c37ff/layer
│ └── faf804f0e07b2936e84c9fe4ca7c60a6246cc669cf2ff70969f14a9eab6efb48
│ ├── ancestry -> /var/lib/pulp/content/docker_image/docker_image/faf804f0e07b2936e84c9fe4ca7c60a6246cc669cf2ff70969f14a9eab6efb48/ancestry
│ ├── json -> /var/lib/pulp/content/docker_image/docker_image/faf804f0e07b2936e84c9fe4ca7c60a6246cc669cf2ff70969f14a9eab6efb48/json
│ └── layer -> /var/lib/pulp/content/docker_image/docker_image/faf804f0e07b2936e84c9fe4ca7c60a6246cc669cf2ff70969f14a9eab6efb48/layer
└── web
└── busybox -> /var/lib/pulp/published/docker/v2/master/busybox/1441741595.79
35 directories, 59 files
Actions
Have each step use its own space inside the working_dir.
This commit makes each of the top level (v1 and v2) steps have their own separate working space, so that they do not share files during the atomic publish.
https://pulp.plan.io/issues/1241
fixes #1241