Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The following is an overview of how the directories in the DVD and yum repos would be laid out to allow for different OS versions. It will also split the simp repository into several repositories to match the layout in the simp-project site.

Update simp-gpgkeys

  • Previously: all the keys were under one directory

    • GPGKEY/RPM*

  • New Configuration: Split them according to repo:

    • GPGKEY/simp/All the simp keys

    • GPGKEY/puppet/All the puppet keys

    • GPGKEY/postgresql/All the puppet key

    • GPGKEY/epel/All the CentOS and RHEL Keys

This will allow us to link them to specific repo when creating repos in puppet module and

allow us, when downloading the from packages.yaml, to determine which repo the downloaded package should belong to.


Update rubygem-simp-rake-helpers:

Restructure the DVD Overlay file:

(Note: There are other files in these directories, if not shown, they will not be moved or reconfigured)

  • Previously: the DVD_overlay had:

    • ks

    • packagelist

    • SIMP

      • GPGKEYS

      • noarch

        • All the noarch simp RPMS

      • arch (ussually absent because no arch spec RPMS)

        • All the arch specific RPMS

    • Development Key (if development)

  • New configuration:

    • ks

    • packagelist

    • SIMP

      • simp (indicating the simp repo)

        • All the simp RPMs generated during tar build, noarch and arch

        • GPGKEYS

          • Dev key or nothing if not a dev build

Restructure the directory on the OS DVD:

Previously: it downloaded the RPMs in packages.yaml and put them in yum_data/packages and added any one off RPMs from the aux_packages directory. It then copied them over to the SIMP directory and created links from noarch to arch.

  • yum_data

    • packages.yaml

    • packages

      • RPMs downloaded from the internet

    • aux_packages

      • any one off RPMs the user puts here.

  • SIMP

    • noarch

      • simp noarch RPMs (either built earlier or extracted from tar file)

      • depenedency noarch RPMs (both one off and packages.yaml)

    • arch

      • simp arch RPMs (either built earlier or extracted from tar file)

      • dependency arch RPMs (both one off and packages.yaml)

      • links to any RPM in the noarch directory


New configuration: The RPMs from packages.yaml will be downloaded in the same manner. After they are downloaded the signature of the RPM will be checked against in each of the directories in simp-gpgkeys. The RPM will be placed in appropriate repo. Any RPMs not signed by a key from the known repos will be placed in an UNKNOWN repository. If any RPMs are in the UNKNOWN repository, the build will fail.

One off aux_packages will be checked in the same manner.

Problem: If using tarball how do I get GPGKEYS? Maybe extract from the simp-gpgkey RPM in the tarball? Or is just getting it from simp-core/src/assets ok?

The New directory structure will look like:

  • yum_data

    • packages.yaml

    • packages

      • RPMs downloaded from the internet

    • aux_packages

      • any one off RPMs the user puts here.

  • SIMP

    • simp

      • GPGKEYS

        • gpg keys from simp-gpgkeys/simp and the dev key if there was one.

      • simp RPMs (arch and no arch)

      • any RPM downloaded from packages.yaml or copied from aux_packages and signed by keys in GPGKEYS/simp

    • puppet

      • GPGKEYS

        • gpg keys from simp-gpgkeys/puppet

      • any RPM downloaded from packages.yaml or copied from aux_packages and signed by GPGKEYS/puppet

    • epel

      • GPGKEYS

        • gpg keys from simp-gpgkeys/epel

      • any RPM downloaded from packages.yaml or copied from aux_packages and signed by keys in GPGKEYS/epel

    • postgresql

      • GPGKEYS

        • gpg keys from simp-gpgkeys/postgresql

      • any RPM downloaded from packages.yaml or copied from aux_packages and signed by keys in GPGKEYS/postgresql

PROBLEM: aux_packages: what if they have a different key? Should add a feature to allow users to a key?

Other things that need to be updated:

  • need to createrepo on all repositories

  • update repoclosure to include all repos

Update unpack dvd:

Update unpack DVD to copy the contents of the SIMP to /var/www/yum/SIMP/<os major version>/<arch>/ instead of just plopping it in /var/www/yum/SIMP.

The OS and the arch could be determined from the file on the DVD.

(Question… should we put el or CentOS or Redhat in there.? Probably)


Update pupmod-simp-simp

Update the creation of the simp repos to create the 4 repos and enable them where necessary.

Update simp-core DVD files

The kickstart files in simp-core will have to be updated to point to repos in the correct locations.

The DVD/auto.cfg files need to be updated.