Distribution tree uniqueness constraint is not enough for a suboptimal .treeinfo
Currently Pulp requires the combination of the following fields to be unique:
unique_together = ( "header_version", "release_name", "release_short", "release_version", "arch", "build_timestamp", )
In some cases, it doesn't seem enough. For some reason multiple repositories might have all those fields exactly the same and they differ in variants definition only. Such are not proper distribution trees, the majority do not have any images associated.
Examples brought by always helpful @gdve from https://pulp.plan.io/issues/8566#note-33:
CentOS/8-stream/AppStream/x86_64/os/.treeinfo:build_timestamp = 1625615144 CentOS/8-stream/BaseOS/x86_64/os/.treeinfo:build_timestamp = 1625615155 CentOS/8-stream/HighAvailability/x86_64/os/.treeinfo:build_timestamp = 1625026406 CentOS/8-stream/PowerTools/x86_64/os/.treeinfo:build_timestamp = 1625026406 CentOS/8-stream/RT/x86_64/os/.treeinfo:build_timestamp = 1625026406
AlmaLinux/8.4/AppStream/x86_64/kickstart/.treeinfo:build_timestamp = 1622014553 AlmaLinux/8.4/AppStream/x86_64/os/.treeinfo:build_timestamp = 1622014553 AlmaLinux/8.4/BaseOS/x86_64/kickstart/.treeinfo:build_timestamp = 1622014553 AlmaLinux/8.4/BaseOS/x86_64/os/.treeinfo:build_timestamp = 1622014553 AlmaLinux/8.4/HighAvailability/x86_64/kickstart/.treeinfo:build_timestamp = 1622014558 AlmaLinux/8.4/HighAvailability/x86_64/os/.treeinfo:build_timestamp = 1622014558 AlmaLinux/8.4/PowerTools/x86_64/kickstart/.treeinfo:build_timestamp = 1622014558 AlmaLinux/8.4/PowerTools/x86_64/os/.treeinfo:build_timestamp = 1622014558 AlmaLinux/8.4/extras/x86_64/kickstart/.treeinfo:build_timestamp = 1622014558 AlmaLinux/8.4/extras/x86_64/os/.treeinfo:build_timestamp = 1622014558
Pulp 2to3 migration fails with
No declared artifact with relative path ".treeinfo" for content "<DistributionTree: pk=64f44866-0207-4005-9c06-0f45e52cbdd1>".
I would expect sync to behave the similarly, needs testing though.
We have a test system where 2to3 migration fails with:
No declared artifact with relative path \"images/boot.iso\" for content \"<DistributionTree: pk=f4651a50-5f7a-49a9-8fe5-3247a82362f1>\"
Is it meaningful that this fails on
images/boot.iso and not on
.treeinfo? (I know nothing about distribution trees...)
Please register to edit this issue