Project

Profile

Help

Issue #3100

Updated by daviddavis over 6 years ago

This is similar to #3047 and #2773. We added code to remove duplicate ISOs however, this code doesn't work after one iteration. Looks like a generator type was being used instead of a list: 

 https://github.com/pulp/pulp_rpm/blob/23492381f285f2799aa894f8834e3fbc40b3ac72/plugins/pulp_rpm/plugins/importers/iso/sync.py#L333 

 Steps to reproduce: 

 <pre> 
 export REPO1='iso-1' 
 export REPO2='iso-2' 
 mkdir /tmp/iso 
 cd /tmp/iso 

 echo "test1" > 1.iso 
 echo "test2" > 2.iso 
 echo 1.iso,`sha256sum 1.iso | awk '{ print $1 }'`,`stat -L -c '%s' 1.iso` > PULP_MANIFEST 
 echo 2.iso,`sha256sum 2.iso | awk '{ print $1 }'`,`stat -L -c '%s' 2.iso` >> PULP_MANIFEST 

 pulp-admin iso repo create --repo-id $REPO1 --feed file:///tmp/iso 
 pulp-admin iso repo sync run --repo-id $REPO1 
 pulp-admin iso repo create --repo-id $REPO2 --feed file:///tmp/iso 
 pulp-admin iso repo sync run --repo-id $REPO2 

 echo "blah1" > 1.iso 
 echo "blah2" > 2.iso 
 echo 1.iso,`sha256sum 1.iso | awk '{ print $1 }'`,`stat -L -c '%s' 1.iso` > PULP_MANIFEST 
 echo 2.iso,`sha256sum 2.iso | awk '{ print $1 }'`,`stat -L -c '%s' 2.iso` >> PULP_MANIFEST 

 pulp-admin iso repo sync run --repo-id $REPO1 
 pulp-admin iso repo sync run --repo-id $REPO2 

 pulp-admin iso repo list 
 </pre> 

 You'll see that the repos have 3 units instead of 2. One of the existing dupe units is removed but the other is not.

Back