Skip to content

Streamline RPM generation process #209

@nacl

Description

@nacl

@aiuto in the review for #179 pointed out that there were several confusing parts in the consolidated RPM generator.

Instead, the process could be streamlined to something that looks like this (see my comment to that same review):

  1. The template spec file is expanded to a more fully-qualified spec file that can be invoked by rpmbuild with minimal additional magic. Also, preferably with a single template expansion scheme.
  2. The rpmbuild directory structure is created, and, if necessary (see below), the already-built artifacts are put in the right place.
  3. rpmbuild is invoked with the necessary arguments to build the RPM (This would be make_rpm.py)

This could help us dramatically reduce the complexity of make_rpm.py.

We might be able to somewhat reduce the number of file copies this process entails by having the %install phase simply copy (or hardlink) the files from the bazel build tree to where they are supposed to be relative to RPM builds the package. Haven't yet tried this out either.

This should result in much more readable and efficient code overall.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3An issue that we are not working on but will review quarterlyfeature-request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions