robottelo
robottelo copied to clipboard
Add test case to verify artifacts repair at the Capsule side
Problem Statement
Satellite 6.16 implements ways to repair pulp artifacts if they are removed or damaged and we should test it works.
Solution
This PR adds a parametrized test case for that verification at the Capsule side and also a few other changes to make it possible.
The approach is a bit different for yum and file content types, where we are able to locate the artifact for particular published file, and for docker and ansible_collection content types, where files are not published directly.
In pulp there are two different code paths for repair of missing and corrupted artifacts.
progress_reports:
- message: Identify missing units
code: repair.missing
state: completed
done: 0
- message: Identify corrupted units
code: repair.corrupted
state: completed
done: 1
- message: Repair corrupted units
code: repair.repaired
state: completed
done: 1
So we need to check both, again through parametrization.
The last parametrization targets the repair task granularity - we are able to run it for particular repo, CV and LCE present at the Capsule side.
PRT test Cases example
Needs packit / PRT with specific Katello PRs (some bits are still missing)
trigger: test-robottelo pytest: tests/foreman/cli/test_capsulecontent.py -k artifacts