- add makefile for all builds - add .gitignore - add terragrunt dockerfile/nfpm
36 lines
1.1 KiB
Docker
36 lines
1.1 KiB
Docker
# Start with the AlmaLinux 8.10 base image
|
|
FROM git.query.consul/unkin/almalinux8:latest
|
|
|
|
# Create output directory for RPMs
|
|
RUN mkdir -p /app/dist
|
|
|
|
# Set working directory
|
|
WORKDIR /app
|
|
|
|
ARG PACKAGE_RELEASE
|
|
ENV PACKAGE_RELEASE=${PACKAGE_RELEASE}
|
|
ARG PACKAGE_VERSION
|
|
ENV PACKAGE_VERSION=${PACKAGE_VERSION}
|
|
ARG NFPM_VERSION
|
|
ENV NFPM_VERSION=${NFPM_VERSION}
|
|
|
|
# Clean and update the repository cache
|
|
RUN dnf clean all && \
|
|
dnf makecache
|
|
|
|
# Install build tools and dependencies for building RPMs
|
|
RUN dnf groupinstall -y 'Development Tools' && \
|
|
dnf install -y make cmake gcc gcc-c++ rpm rpmdevtools wget tar gzip
|
|
|
|
# Install nfpm using the RPM package
|
|
RUN dnf install -y https://github.com/goreleaser/nfpm/releases/download/v${NFPM_VERSION}/nfpm-${NFPM_VERSION}-1.x86_64.rpm
|
|
|
|
# Copy nfpm.yaml from the context into the container
|
|
COPY nfpm.yaml /app/nfpm.yaml
|
|
|
|
# Download the required files
|
|
RUN wget -O /app/terragrunt https://github.com/gruntwork-io/terragrunt/releases/download/v${PACKAGE_VERSION}/terragrunt_linux_amd64
|
|
|
|
# Default command to build RPMs
|
|
CMD nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|