Actions
Issue #2237
closedPublished repositories are copied instead of linked
Start date:
Due date:
Estimated time:
Severity:
3. High
Version - OSTree:
1.1.0
Platform Release:
2.10.1
Target Release - OSTree:
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Sprint 8
Quarter:
Description
The pulp ostree publisher uses libostree pull-local which by nature will hard link files instead of copying them. However, the AtomicDirectoryPublishStep.process_main() in pulp uses shutil.copytree() instead of at least attempting to move the working-directory to the master/<timestamp> location. The result is, the ostree plugin pull-local creates an ostree repository using hard links but the copy operation creates a copy. Given the size of ostree repositories, this uses a ton of disk.
THIS NEEDS TO BE FIXED IN PLATFORM.
Should be doing something like this:
try:
rename()
except OSError as e:
if e.errno == errno.EXDEV:
copytree()
else:
raise
Actions
Move working-directory to master location when permitted. closes #2237