Merge pull request 'feat: add terraform' (#4) from neoloc/terraform into master
All checks were successful
Deploy / build (push) Successful in 2m1s
All checks were successful
Deploy / build (push) Successful in 2m1s
Reviewed-on: https://git.query.consul/unkin/rpmbuilder/pulls/4
This commit is contained in:
commit
dc84453e92
1
rpms/terraform/1.10.0/release
Normal file
1
rpms/terraform/1.10.0/release
Normal file
@ -0,0 +1 @@
|
|||||||
|
1
|
||||||
1
rpms/terraform/1.5.0/release
Normal file
1
rpms/terraform/1.5.0/release
Normal file
@ -0,0 +1 @@
|
|||||||
|
1
|
||||||
24
rpms/terraform/Dockerfile
Normal file
24
rpms/terraform/Dockerfile
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
# Start with the AlmaLinux 8.10 base image
|
||||||
|
FROM git.query.consul/unkin/almalinux8-buildagent: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}
|
||||||
|
|
||||||
|
# Copy nfpm.yaml from the context into the container
|
||||||
|
COPY nfpm.yaml /app/nfpm.yaml
|
||||||
|
|
||||||
|
# Download the required files
|
||||||
|
RUN dnf install -y unzip && \
|
||||||
|
wget -O /app/terraform.zip https://releases.hashicorp.com/terraform/${PACKAGE_VERSION}/terraform_${PACKAGE_VERSION}_linux_amd64.zip && \
|
||||||
|
unzip terraform.zip
|
||||||
|
|
||||||
|
# Default command to build RPMs
|
||||||
|
CMD nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||||
38
rpms/terraform/nfpm.yaml
Normal file
38
rpms/terraform/nfpm.yaml
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
# nfpm.yaml
|
||||||
|
|
||||||
|
name: terraform
|
||||||
|
version: ${PACKAGE_VERSION}
|
||||||
|
release: ${PACKAGE_RELEASE}
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
section: default
|
||||||
|
priority: extra
|
||||||
|
description: "Terraform enables you to safely and predictably create, change, and improve infrastructure. It is a tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned."
|
||||||
|
|
||||||
|
maintainer: HashiCorp
|
||||||
|
homepage: https://terraform.io/
|
||||||
|
license: BUSL-1.1
|
||||||
|
|
||||||
|
disable_globbing: false
|
||||||
|
|
||||||
|
replaces:
|
||||||
|
- terraform
|
||||||
|
|
||||||
|
provides:
|
||||||
|
- terraform
|
||||||
|
|
||||||
|
# Files to include in the package
|
||||||
|
contents:
|
||||||
|
- src: /app/terraform
|
||||||
|
dst: /usr/bin/terraform
|
||||||
|
file_info:
|
||||||
|
mode: 0755
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
|
||||||
|
# Scripts to run during installation/removal (optional)
|
||||||
|
# scripts:
|
||||||
|
# preinstall: ./scripts/preinstall.sh
|
||||||
|
# postinstall: ./scripts/postinstall.sh
|
||||||
|
# preremove: ./scripts/preremove.sh
|
||||||
|
# postremove: ./scripts/postremove.sh
|
||||||
Loading…
Reference in New Issue
Block a user