diff --git a/rpms/puppetdb_exporter/1.1.0/release b/rpms/puppetdb_exporter/1.1.0/release new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/rpms/puppetdb_exporter/1.1.0/release @@ -0,0 +1 @@ +1 diff --git a/rpms/puppetdb_exporter/Dockerfile b/rpms/puppetdb_exporter/Dockerfile new file mode 100644 index 0000000..f8cf216 --- /dev/null +++ b/rpms/puppetdb_exporter/Dockerfile @@ -0,0 +1,18 @@ +FROM git.unkin.net/unkin/almalinux9-rpmbuilder: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 resources /app/resources + +# Default command to build RPMs +CMD /app/resources/build.sh diff --git a/rpms/puppetdb_exporter/resources/build.sh b/rpms/puppetdb_exporter/resources/build.sh new file mode 100755 index 0000000..a76c6d8 --- /dev/null +++ b/rpms/puppetdb_exporter/resources/build.sh @@ -0,0 +1,3 @@ +#!/usr/bin/bash +curl --output - -L https://github.com/camptocamp/prometheus-puppetdb-exporter/releases/download/${PACKAGE_VERSION}/prometheus-puppetdb-exporter-${PACKAGE_VERSION}.linux-amd64.tar.gz | tar --strip-components=1 -xzf - +nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm diff --git a/rpms/puppetdb_exporter/resources/nfpm.yaml b/rpms/puppetdb_exporter/resources/nfpm.yaml new file mode 100644 index 0000000..22155d6 --- /dev/null +++ b/rpms/puppetdb_exporter/resources/nfpm.yaml @@ -0,0 +1,37 @@ +# nfpm.yaml + +name: puppetdb_exporter +version: ${PACKAGE_VERSION} +release: ${PACKAGE_RELEASE} +arch: amd64 +platform: linux +section: default +priority: extra +description: "Prometheus exporter for PuppetDB" +maintainer: Comptocamp +homepage: https://github.com/camptocamp/prometheus-puppetdb-exporter +license: Apache 2.0 License + +disable_globbing: false + +replaces: + - puppetdb_exporter + +provides: + - puppetdb_exporter + +# Files to include in the package +contents: + - src: /app/prometheus-puppetdb-exporter + dst: /usr/bin/puppetdb_exporter + 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