Project

Profile

Help

Issue #7924

Sync doesn't create RemoteArtifacts

Added by bmbouter 3 months ago. Updated 3 months ago.

Status:
NEW
Priority:
Normal
Assignee:
-
Sprint/Milestone:
-
Start date:
Due date:
Estimated time:
Severity:
2. Medium
Platform Release:
OS:
Triaged:
No
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Quarter:

Description

It's expected that content even sync'd with immediate will have a RemoteArtifact created for it. It seems pulp_ansible (tested at commit dba80be7048c946dc9a4d631410c85e7b3e315bc) does not.

To Reproduce

  1. Use pulp_ansible at commit dba80be7048c946dc9a4d631410c85e7b3e315bc
  2. Sync basic content using a functional test: pytest -v -r sx --color=yes --pyargs pulp_ansible.tests.functional.api.collection.v2.test_sync::SyncTestCase::test_sync_simple_collections_file.
  3. Go into pulpcore-manager shell_plus.
  4. Observe that there are RemoteArtifact objects created with:
In [1]: RemoteArtifact.objects.count()
Out[1]: 0
  1. Observe that the Artifact and ContentArtifact are created successful, but no corresponding RemoteArtifact.
In [3]: Artifact.objects.count()
Out[3]: 1

In [4]: a = Artifact.objects.first()

In [5]: a.content_memberships.count()
Out[5]: 1

In [6]: ca = a.content_memberships.first()

In [7]: ca.remoteartifact_set.count()
Out[7]: 0

Why does this matter?

If content becomes corrupted for example, the repair command or the handle-content-checksums command won't be able to automatically re-download content.

History

#1 Updated by bmbouter 3 months ago

  • Description updated (diff)

#2 Updated by bmbouter 3 months ago

  • Description updated (diff)

#3 Updated by fao89 3 months ago

I tested it locally, if you put a pdb at the end of the test you will see the RemoteArtifacts

In [1]: Artifact.objects.count()                                                                                                                                                              
Out[1]: 1                                                                                                                                                                                     
                                                                                                                                                                                              
In [2]: RemoteArtifact.objects.count()                                                                                                                                                        
Out[2]: 1      

Please register to edit this issue

Also available in: Atom PDF