AlmaLinux / mirrors

The AlmaLinux project mirrors configuration and tools.
GNU General Public License v3.0
86 stars 411 forks source link

Pulp synchronisation issues #101

Closed ghost closed 3 years ago

ghost commented 3 years ago

Hi There, sorry if I'm in the wrong place with this ticket. If I am please direct me to the right direction.

I have the following issue: I have Pulp v3 (pulpcore https://github.com/pulp/pulpcore + pulp-rpm https://github.com/pulp/pulp_rpm). I use it to replicate various rpm repos, I also replicate repos from mirror.centos.org with no issues. Last week I added AlmaLinux repos:

and I cannot synchronise AppStream and Base (here's how I do it: https://pulp-rpm.readthedocs.io/en/latest/workflows/create_sync_publish.html#sync-repository-foo-using-remote-bar ).

For AppStream I get this error message:

"No declared artifact with relative path \"images/boot.iso\" for content \"<DistributionTree: pk=ec636140-6053-4bdc-93f2-9f3dc9413d02>\""

For Base this:

"Incoming and existing advisories have the same id but different timestamps and non-intersecting package lists. It is likely that they are from two different incompatible remote repositories. E.g. RHELX-repo and RH
ELY-debuginfo repo. Ensure that you are adding content for the compatible repositories. Advisory id: ALBA-2021:0566"

From previous experience I can tell that something's wrong with the repos.

andrewlukoshko commented 3 years ago

Hello.

We have a bug for katello sync issues but it looks that your issue is different https://bugs.almalinux.org/view.php?id=50. A was able to reproduce issue with \"images/boot.iso\" for AppStream and I believe it's issue with .treeinfo. BaseOS's .treeinfo says that both BaseOS and AppStream variants are available here (this was made for network installations I believe to make both repos available) and when you try to sync AppStream I think Katello expects images in AppStream repo.

Take a look at AlmaLinux .treeinfo: https://repo.almalinux.org/almalinux/8.3/BaseOS/x86_64/os/.treeinfo https://repo.almalinux.org/almalinux/8.3/AppStream/x86_64/os/.treeinfo

The same in CentOS: http://mirror.centos.org/centos-8/8.3.2011/BaseOS/x86_64/os/.treeinfo http://mirror.centos.org/centos-8/8.3.2011/AppStream/x86_64/os/.treeinfo

As you can see the only difference is names - AlmaLinux and CentOS Linux respectively. Actually I even tried to place CentOS's .treeinfo files to our internal repo and then sync works. Maybe there is some workaround in Katello/Pulp code for RHEL/CentOS only but I wasn't able to find it in code. So investigation continues.

andrewlukoshko commented 3 years ago

Errata was regenerated from the scratch for 8.3 Stable release. Have you used it before release?

maccelf commented 3 years ago

The problem was with build_timestamp variable in .treeinfo. build_timestamp must be unique value. We fix that in our repos and now sync was successfully without errors