diff --git a/CHANGES/9296.bugfix b/CHANGES/9296.bugfix new file mode 100644 index 00000000..20bbfb44 --- /dev/null +++ b/CHANGES/9296.bugfix @@ -0,0 +1,2 @@ +Fixed remigration of publications after an unsuccessful or interrupted run. +(backported from #9295) diff --git a/pulp_2to3_migration/app/plugin/deb/repository.py b/pulp_2to3_migration/app/plugin/deb/repository.py index f13432ec..ab552720 100644 --- a/pulp_2to3_migration/app/plugin/deb/repository.py +++ b/pulp_2to3_migration/app/plugin/deb/repository.py @@ -69,11 +69,11 @@ def migrate_to_pulp3(cls, pulp2distributor, repo_version): if not repo_version: repo = pulp2distributor.pulp2_repos.filter(not_in_plan=False, is_migrated=True) repo_version = repo[0].pulp3_repository_version - publication = repo_version.publication_set.first() + publication = repo_version.publication_set.filter(complete=True).first() if not publication: # create publication publish(repo_version.pk, simple=True, structured=True) - publication = repo_version.publication_set.first() + publication = repo_version.publication_set.filter(complete=True).first() # create distribution pulp2_config = pulp2distributor.pulp2_config diff --git a/pulp_2to3_migration/app/plugin/iso/repository.py b/pulp_2to3_migration/app/plugin/iso/repository.py index d6675033..283df90c 100644 --- a/pulp_2to3_migration/app/plugin/iso/repository.py +++ b/pulp_2to3_migration/app/plugin/iso/repository.py @@ -63,11 +63,11 @@ def migrate_to_pulp3(cls, pulp2distributor, repo_version): if not repo_version: repo = pulp2distributor.pulp2_repos.filter(not_in_plan=False, is_migrated=True) repo_version = repo[0].pulp3_repository_version - publication = repo_version.publication_set.first() + publication = repo_version.publication_set.filter(complete=True).first() if not publication: # create publication publish('PULP_MANIFEST', repo_version.pk) - publication = repo_version.publication_set.first() + publication = repo_version.publication_set.filter(complete=True).first() # create distribution pulp2_config = pulp2distributor.pulp2_config base_config = cls.parse_base_config(pulp2distributor, pulp2_config) diff --git a/pulp_2to3_migration/app/plugin/rpm/repository.py b/pulp_2to3_migration/app/plugin/rpm/repository.py index b24efcfd..72fc0d9a 100644 --- a/pulp_2to3_migration/app/plugin/rpm/repository.py +++ b/pulp_2to3_migration/app/plugin/rpm/repository.py @@ -66,7 +66,7 @@ def migrate_to_pulp3(cls, pulp2distributor, repo_version): if not repo_version: repo = pulp2distributor.pulp2_repos.filter(not_in_plan=False, is_migrated=True) repo_version = repo[0].pulp3_repository_version - publication = repo_version.publication_set.first() + publication = repo_version.publication_set.filter(complete=True).first() if not publication: pulp2_checksum_type = pulp2_config.get('checksum_type') checksum_types = None @@ -92,7 +92,7 @@ def migrate_to_pulp3(cls, pulp2distributor, repo_version): except TypeError: # hack, pulp_rpm <3.9 doesn't support sqlite_metadata kwarg publish(repo_version.pk, checksum_types=checksum_types) - publication = repo_version.publication_set.first() + publication = repo_version.publication_set.filter(complete=True).first() # create distribution distribution_data = cls.parse_base_config(pulp2distributor, pulp2_config)