How do we handle the RPM downloads via Rake?

Status
DONE
Stakeholders
OutcomeRead the stuff
Due date
Owner

Background

Currently, the previous method that we used to handle RPMs into the core will not scale to the outside world (mainly due to the horrible aspects of putting binaries in Git).

How we will fetch things: Yumrepo files.

We have two options as far as I can see:

  1. Create a set of tiered directories containing the proper metadata under a raft of directories split on Operating Systems, etc...
    1. We all hate this
  2. Make a raft of YAML files that covers the needs of the various releases

How This Will Work

Three Rake tasks will need to be created:

  1. Create the YAML files listed below based on a bunch of RPMs in a local directory
  2. Download the RPMs from the YAML files, recording the sources of the RPMs if they do not exist
    1. Updating the sources based on a flag (update all or just install new/remove missing)
  3. Task for creating the scaffold of a release data directory

Build Directory

build/
yum_data/
README.md
myrepos/ # also up here
SIMP4.2_Centos6.6_x86_64/
myrepos/ # optional, not checked in, but if it exists repos will be used
repos/
packages/ # The download location for stuff in packages.yaml
packages.yaml
---
'exact-package-name-for-this-exact-release-1.0.1-1':
source: 'http://the.last.place/yum-downloader/sourced-me.from'
# Setting source to something without a URI will just ensure that the file is in place
# and will be used as the basis for the documentation. This is to account for things like the Red Hat private repos

Action items

  •