Task #7021
Updated by daviddavis over 4 years ago
The [artifacts property on RepositoryVersion](https://github.com/pulp/pulpcore/blob/203f9d20f617cffd58afaf469b37c552a7f5ba9c/pulpcore/app/models/repository.py#L499) assumes that artifacts are directly attached to RepositoryVersion Content:
```
RepositoryVersion
|
Content
|
Artifacts
```
But with DistributionTrees, this is not the case:
```
RepositoryVersion
|
DistributionTree
|
Repository/RepositoryVersion
|
Content
|
Artifacts
```
This means that not all artifacts will get exported when the DistributionTree is exported.
## Solution
Have the artifacts property method call a Repository method to determine what artifacts it has. This is needed since RepositoryVersion is not typed. Then pulp_rpm (and other plugins) can override this method to add in artifacts from DistributionTrees.
### Possible Alternative(s)
Add some sort of hook to the [artifact export code](https://github.com/pulp/pulpcore/blob/203f9d20f617cffd58afaf469b37c552a7f5ba9c/pulpcore/app/tasks/export.py#L221-L233) that will allow plugins to add extra artifacts that they need exported.