Bug 1002395 - use createrepo_c instead of createrepo
use createrepo_c instead of createrepo
Status: CLOSED CURRENTRELEASE
Product: Beaker
Classification: Community
Component: scheduler (Show other bugs)
0.14
Unspecified Unspecified
unspecified Severity unspecified (vote)
: 0.15
: ---
Assigned To: Raymond Mancy
tools-bugs
: FutureFeature
Depends On: 965915
Blocks:
  Show dependency treegraph
 
Reported: 2013-08-29 02:10 EDT by Dan Callaghan
Modified: 2014-12-07 20:16 EST (History)
9 users (show)

See Also:
Fixed In Version:
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-10-02 22:29:14 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Dan Callaghan 2013-08-29 02:10:26 EDT
This is a mitigation for bug 968858.

createrepo_c is a more efficient implementation (in terms of memory, CPU time, and wall time) of createrepo. We've already established that it produces equivalent repometadata for our purposes, so we should start using it for building the task yum repo.

It might be worth making the createrepo implementation configurable, just in case we (or someone) needs to switch back to the original createrepo. For example in server.cfg:

# Command to run to build yum repos. 'createrepo' is the original implementation,
# 'createrepo_c' is a more efficient re-implementation.
beaker.createrepo_command = 'createrepo_c'
Comment 2 Dan Callaghan 2013-08-29 02:18:12 EDT
Steps to verify:
1. Ensure createrepo_c is being invoked (not createrepo) when a task is uploaded to the task library.
2. Ensure the generated task repo still works correctly (tasks can be installed) for recipes running RHEL3-7 and Fedora.
Comment 3 Raymond Mancy 2013-09-04 01:49:18 EDT
http://gerrit.beaker-project.org/#/c/2208
Comment 4 Nick Coghlan 2013-09-05 22:41:52 EDT
Patch review found that this really needs to be tested in two parts:

- task library unit tests to ensure the command invoked can be changed and that both createrepo and createrepo_c work
- integration tests to ensure the server picks up the configuration setting for which command to use

Hence adding a dependency on the BZ about adding unit tests for the task library in the first place :)
Comment 8 Nick Coghlan 2013-10-02 22:29:14 EDT
Beaker 0.15 has been released.

Note You need to log in before you can comment on or make changes to this bug.