jharshman / bldr

BlDr is a CLI utility that builds templated specfiles.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bldr

The Boulder

Summary

Bldr (Pronounced Boulder) performs RPM builds using a templated RPM specfile.

Given a specfile and value file, bldr will facilitate rendering the specfile and performing an RPM build. This utility is distributed as a container image jharshman/bldr.

While not required, it is reccomended to composing your own Dockerfile based on jharshman/bldr:latest. This Dockerfile will serve as the sterile environment in which you build your RPM. Here you can install whatever software is required for your build. In the past this was done by way of Chroot Jails, but I find it more user friendly to use Docker for this instead.

Here is the Dockerfile used for building the small Go project in the examples directory.

FROM --platform=arm64 jharshman/bldr:latest

RUN zypper in -y wget

RUN wget https://go.dev/dl/go1.22.1.linux-amd64.tar.gz && tar -C /usr/local -xzf go1.22.1.linux-amd64.tar.gz
RUN export PATH=$PATH:/usr/local/go/bin

Quick Start

You don't have to clone this repo or install a binary to start using bldr. The bldr.sh script will run the utility and can be used as follows.

$ curl https://raw.githubusercontent.com/jharshman/bldr/master/bldr.sh | bash -s -- --help

About

BlDr is a CLI utility that builds templated specfiles.


Languages

Language:Rust 55.2%Language:Shell 38.2%Language:Dockerfile 6.6%