refactor: modernise RPM builder with Python tooling v2
- Migrate from legacy shell-based build system to modern Python tooling - Update all metadata.yaml files to new schema with per-distro builds - Standardise build scripts with curl -L, envsubst, and error handling - Convert nfpm.yaml templates to use environment variable substitution - Update Dockerfile to accept all package metadata as build arguments - Modernise Makefile to use new Python build tool commands - Update CI workflow to use tools/build instead of make
This commit is contained in:
@@ -1,9 +1,18 @@
|
||||
name: vminsert
|
||||
release: 1
|
||||
version: 1.119.0
|
||||
---
|
||||
arch: amd64
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository: [almalinux/el8]
|
||||
version: 1.119.0
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository: [almalinux/el9]
|
||||
version: 1.119.0
|
||||
description: vminsert accepts data via popular data ingestion protocols and routes it to vmstorage nodes
|
||||
github: VictoriaMetrics/VictoriaMetrics
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
||||
license: Apache-2.0 license
|
||||
maintainer: VictoriaMetrics
|
||||
name: vminsert
|
||||
platform: linux
|
||||
|
||||
@@ -1,7 +1,12 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Download the required files
|
||||
curl -o /app/victoria-metrics-linux-amd64-v${PACKAGE_VERSION}-cluster.tar.gz https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${PACKAGE_VERSION}/victoria-metrics-linux-amd64-v${PACKAGE_VERSION}-cluster.tar.gz
|
||||
curl -L -o /app/victoria-metrics-linux-amd64-v${PACKAGE_VERSION}-cluster.tar.gz https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v${PACKAGE_VERSION}/victoria-metrics-linux-amd64-v${PACKAGE_VERSION}-cluster.tar.gz
|
||||
tar xf victoria-metrics-linux-amd64-v${PACKAGE_VERSION}-cluster.tar.gz
|
||||
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
# Process the nfpm.yaml template with environment variables
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: vminsert
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "vminsert accepts data via popular data ingestion protocols and routes it to vmstorage nodes"
|
||||
maintainer: VictoriaMetrics
|
||||
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
||||
license: Apache-2.0 license
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
Reference in New Issue
Block a user