feat: enhance GitHub release tracking with pattern support and version extraction
- Add github_release_pattern field to support multi-product repositories - Implement get_github_releases_by_pattern() for filtered release matching - Add parse_github_version_release() to extract version-release components - Update openbao plugin packages with release patterns and correct versions - Configure openbao-plugins meta package for manual versioning - Fix HashiCorp package GitHub repository references - Support complex tag formats like "secrets-consul-v0.1.0" and "v7.1.3-1" This enables automatic updates for packages sharing GitHub repos while maintaining proper RPM version/release semantics and backward compatibility.
This commit is contained in:
parent
1e7b06aa84
commit
5cdbe3a6b5
@ -1,18 +1,20 @@
|
|||||||
---
|
name: boilerplate
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.6.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.6.1
|
|
||||||
description: Boilerplate is a tool for generating files and folders (boilerplate) from a set of templates.
|
|
||||||
github: gruntwork-io/boilerplate
|
github: gruntwork-io/boilerplate
|
||||||
|
description: Boilerplate is a tool for generating files and folders (boilerplate)
|
||||||
|
from a set of templates.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Gruntwork
|
||||||
homepage: https://github.com/gruntwork-io/boilerplate
|
homepage: https://github.com/gruntwork-io/boilerplate
|
||||||
license: MIT
|
license: MIT
|
||||||
maintainer: Gruntwork
|
builds:
|
||||||
name: boilerplate
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.10.1
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.10.1
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: cni-plugins
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.7.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.7.1
|
|
||||||
description: Some reference and example networking plugins, maintained by the CNI team.
|
|
||||||
github: containernetworking/plugins
|
github: containernetworking/plugins
|
||||||
|
description: Some reference and example networking plugins, maintained by the CNI
|
||||||
|
team.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: ContainerNetworking
|
||||||
homepage: https://github.com/containernetworking/plugins
|
homepage: https://github.com/containernetworking/plugins
|
||||||
license: Apache-2.0
|
license: Apache-2.0
|
||||||
maintainer: ContainerNetworking
|
builds:
|
||||||
name: cni-plugins
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.9.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.9.0
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: consul
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.21.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.21.1
|
|
||||||
description: Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
|
|
||||||
github: hashicorp/consul
|
github: hashicorp/consul
|
||||||
|
description: Consul is a distributed, highly available, and data center aware solution
|
||||||
|
to connect and configure applications across dynamic, distributed infrastructure.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: HashiCorp
|
||||||
homepage: https://github.com/hashicorp/consul
|
homepage: https://github.com/hashicorp/consul
|
||||||
license: BUSL-1.1
|
license: BUSL-1.1
|
||||||
maintainer: HashiCorp
|
builds:
|
||||||
name: consul
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.22.2
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.22.2
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: etcd
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '2'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 3.5.18
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '2'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 3.5.18
|
|
||||||
description: A distributed, reliable key-value store for the most critical data of a distributed system.
|
|
||||||
github: etcd-io/etcd
|
github: etcd-io/etcd
|
||||||
|
description: A distributed, reliable key-value store for the most critical data of
|
||||||
|
a distributed system.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: https://etcd.io/
|
||||||
homepage: https://etcd.io/
|
homepage: https://etcd.io/
|
||||||
license: Apache-2.0
|
license: Apache-2.0
|
||||||
maintainer: https://etcd.io/
|
builds:
|
||||||
name: etcd
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 3.6.7
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 3.6.7
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: exportarr
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 2.2.0
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 2.2.0
|
|
||||||
description: AIO Prometheus Exporter for Sabnzbd, Bazarr, Prowlarr, Lidarr, Readarr, Radarr, and Sonarr
|
|
||||||
github: onedr0p/exportarr
|
github: onedr0p/exportarr
|
||||||
|
description: AIO Prometheus Exporter for Sabnzbd, Bazarr, Prowlarr, Lidarr, Readarr,
|
||||||
|
Radarr, and Sonarr
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: onedr0p
|
||||||
homepage: https://github.com/onedr0p/exportarr
|
homepage: https://github.com/onedr0p/exportarr
|
||||||
license: MIT license
|
license: MIT license
|
||||||
maintainer: onedr0p
|
builds:
|
||||||
name: exportarr
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 2.3.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 2.3.0
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: frr_exporter
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.8.0
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.8.0
|
|
||||||
description: Prometheus exporter for Free Range Routing
|
|
||||||
github: tynany/frr_exporter
|
github: tynany/frr_exporter
|
||||||
|
description: Prometheus exporter for Free Range Routing
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Prometheus
|
||||||
homepage: https://github.com/tynany/frr_exporter
|
homepage: https://github.com/tynany/frr_exporter
|
||||||
license: MIT
|
license: MIT
|
||||||
maintainer: Prometheus
|
builds:
|
||||||
name: frr_exporter
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.9.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.9.0
|
||||||
|
|||||||
@ -1,18 +1,21 @@
|
|||||||
---
|
name: helmfile
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.1.7
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.1.7
|
|
||||||
description: A declarative spec for deploying Helm charts. It lets you keep a directory of chart value files and maintain changes in version control; apply CI/CD to configuration changes; and periodically sync to avoid skew in environments.
|
|
||||||
github: helmfile/helmfile
|
github: helmfile/helmfile
|
||||||
|
description: A declarative spec for deploying Helm charts. It lets you keep a directory
|
||||||
|
of chart value files and maintain changes in version control; apply CI/CD to configuration
|
||||||
|
changes; and periodically sync to avoid skew in environments.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Helmfile Contributors
|
||||||
homepage: https://github.com/helmfile/helmfile
|
homepage: https://github.com/helmfile/helmfile
|
||||||
license: MIT
|
license: MIT
|
||||||
maintainer: Helmfile Contributors
|
builds:
|
||||||
name: helmfile
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.2.3
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.2.3
|
||||||
|
|||||||
@ -1,13 +1,14 @@
|
|||||||
---
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 6.10.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 6.10.1
|
|
||||||
description: incus package
|
|
||||||
github: lxc/incus
|
|
||||||
name: incus
|
name: incus
|
||||||
|
github: lxc/incus
|
||||||
|
description: incus package
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: ''
|
||||||
|
homepage: ''
|
||||||
|
license: ''
|
||||||
|
builds:
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 6.20.0
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
set -e
|
set -e
|
||||||
|
|
||||||
# Install build dependencies
|
# Install build dependencies
|
||||||
dnf install -y \
|
dnf makecache && dnf install -y \
|
||||||
unzip \
|
unzip \
|
||||||
libtool \
|
libtool \
|
||||||
autoconf \
|
autoconf \
|
||||||
|
|||||||
@ -1,13 +1,19 @@
|
|||||||
---
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '3'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 7.1.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '3'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 7.1.1
|
|
||||||
description: jellyfin-ffmpeg-bin package
|
|
||||||
github: unknown/jellyfin-ffmpeg-bin
|
|
||||||
name: jellyfin-ffmpeg-bin
|
name: jellyfin-ffmpeg-bin
|
||||||
|
github: jellyfin/jellyfin-ffmpeg
|
||||||
|
description: jellyfin-ffmpeg-bin package
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: ''
|
||||||
|
homepage: ''
|
||||||
|
license: ''
|
||||||
|
builds:
|
||||||
|
- repository:
|
||||||
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1.1
|
||||||
|
version: 7.1.3
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1.1
|
||||||
|
version: 7.1.3
|
||||||
|
|||||||
@ -3,12 +3,15 @@
|
|||||||
# Setup rpmbuild directory structure
|
# Setup rpmbuild directory structure
|
||||||
mkdir -p /root/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
|
mkdir -p /root/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
|
||||||
|
|
||||||
|
# Process the spec file template with environment variables
|
||||||
|
envsubst < /app/resources/jellyfin-ffmpeg-bin.spec.template > /root/rpmbuild/SPECS/jellyfin-ffmpeg-bin.spec
|
||||||
|
|
||||||
# Download source files using spectool
|
# Download source files using spectool
|
||||||
spectool -g -R /app/resources/jellyfin-ffmpeg-bin_${PACKAGE_VERSION}.spec
|
spectool -g -R /root/rpmbuild/SPECS/jellyfin-ffmpeg-bin.spec
|
||||||
|
|
||||||
# Build the RPM
|
# Build the RPM
|
||||||
rpmbuild -ba /app/resources/jellyfin-ffmpeg-bin_${PACKAGE_VERSION}.spec
|
rpmbuild -ba /root/rpmbuild/SPECS/jellyfin-ffmpeg-bin.spec
|
||||||
|
|
||||||
# Copy the built RPMs to output directory
|
# Copy the built RPMs to output directory
|
||||||
cp /root/rpmbuild/RPMS/x86_64/jellyfin-ffmpeg-bin-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.*.rpm /app/dist/
|
cp /root/rpmbuild/RPMS/x86_64/jellyfin-ffmpeg-bin-*.rpm /app/dist/
|
||||||
cp /root/rpmbuild/SRPMS/jellyfin-ffmpeg-bin-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.*.rpm /app/dist
|
cp /root/rpmbuild/SRPMS/jellyfin-ffmpeg-bin-*.rpm /app/dist
|
||||||
@ -1,20 +1,20 @@
|
|||||||
%global debug_package %{nil}
|
%global debug_package %{nil}
|
||||||
%define _missing_build_ids_terminate_build 0
|
%define _missing_build_ids_terminate_build 0
|
||||||
%global jellyfin_release 3
|
%global jellyfin_release 1
|
||||||
|
|
||||||
|
|
||||||
Name: jellyfin-ffmpeg-bin
|
Name: ${PACKAGE_NAME}
|
||||||
Version: 7.1.1
|
Version: ${PACKAGE_VERSION}
|
||||||
Release: %{jellyfin_release}
|
Release: ${PACKAGE_RELEASE}
|
||||||
Summary: FFmpeg for Jellyfin with custom extensions and enhancements
|
Summary: FFmpeg for Jellyfin with custom extensions and enhancements
|
||||||
|
|
||||||
|
|
||||||
License: GPL-3.0-only
|
License: GPL-3.0-only
|
||||||
URL: https://github.com/jellyfin/jellyfin-ffmpeg
|
URL: https://github.com/jellyfin/jellyfin-ffmpeg
|
||||||
Source0: https://github.com/jellyfin/jellyfin-ffmpeg/releases/download/v%{version}-%{jellyfin_release}/jellyfin-ffmpeg_%{version}-%{jellyfin_release}_portable_linux64-gpl.tar.xz
|
Source0: https://github.com/jellyfin/jellyfin-ffmpeg/releases/download/v${PACKAGE_VERSION}-1/jellyfin-ffmpeg_${PACKAGE_VERSION}-1_portable_linux64-gpl.tar.xz
|
||||||
Source1: https://github.com/jellyfin/jellyfin-ffmpeg/releases/download/v%{version}-%{jellyfin_release}/jellyfin-ffmpeg_%{version}-%{jellyfin_release}_portable_linuxarm64-gpl.tar.xz
|
Source1: https://github.com/jellyfin/jellyfin-ffmpeg/releases/download/v${PACKAGE_VERSION}-1/jellyfin-ffmpeg_${PACKAGE_VERSION}-1_portable_linuxarm64-gpl.tar.xz
|
||||||
Source2: https://raw.githubusercontent.com/jellyfin/jellyfin-ffmpeg/v%{version}-%{jellyfin_release}/LICENSE.md
|
Source2: https://raw.githubusercontent.com/jellyfin/jellyfin-ffmpeg/v${PACKAGE_VERSION}-1/LICENSE.md
|
||||||
Source3: https://raw.githubusercontent.com/jellyfin/jellyfin-ffmpeg/v%{version}-%{jellyfin_release}/README.md
|
Source3: https://raw.githubusercontent.com/jellyfin/jellyfin-ffmpeg/v${PACKAGE_VERSION}-1/README.md
|
||||||
|
|
||||||
|
|
||||||
ExclusiveArch: x86_64 aarch64
|
ExclusiveArch: x86_64 aarch64
|
||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: nfpm
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 2.41.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 2.41.1
|
|
||||||
description: A zero dependencies, simple deb, rpm, apk, ipk, and arch linux packager written in Go.
|
|
||||||
github: goreleaser/nfpm
|
github: goreleaser/nfpm
|
||||||
|
description: A zero dependencies, simple deb, rpm, apk, ipk, and arch linux packager
|
||||||
|
written in Go.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: GoReleaser
|
||||||
homepage: https://nfpm.goreleaser.com/
|
homepage: https://nfpm.goreleaser.com/
|
||||||
license: MIT
|
license: MIT
|
||||||
maintainer: GoReleaser
|
builds:
|
||||||
name: nfpm
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 2.44.1
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 2.44.1
|
||||||
|
|||||||
@ -1,6 +1,9 @@
|
|||||||
#!/usr/bin/bash
|
#!/usr/bin/bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
# Set Go toolchain to support newer nfpm versions
|
||||||
|
export GOTOOLCHAIN=go1.25.0
|
||||||
|
|
||||||
# Compile nfpm binary using Go
|
# Compile nfpm binary using Go
|
||||||
GOBIN=/app go install github.com/goreleaser/nfpm/v2/cmd/nfpm@v${PACKAGE_VERSION}
|
GOBIN=/app go install github.com/goreleaser/nfpm/v2/cmd/nfpm@v${PACKAGE_VERSION}
|
||||||
|
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: node_exporter
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.9.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.9.1
|
|
||||||
description: exporter for machine metrics
|
|
||||||
github: prometheus/node_exporter
|
github: prometheus/node_exporter
|
||||||
|
description: exporter for machine metrics
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Prometheus
|
||||||
homepage: https://github.com/prometheus/node_exporter
|
homepage: https://github.com/prometheus/node_exporter
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: Prometheus
|
builds:
|
||||||
name: node_exporter
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.10.2
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.10.2
|
||||||
|
|||||||
@ -1,18 +1,21 @@
|
|||||||
---
|
name: nomad-autoscaler
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.4.6
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.4.6
|
|
||||||
description: The Nomad Autoscaler is an autoscaling daemon for Nomad, architectured around plug-ins to allow for easy extensibility in terms of supported metrics sources, scaling targets and scaling algorithms.
|
|
||||||
github: hashicorp/nomad-autoscaler
|
github: hashicorp/nomad-autoscaler
|
||||||
|
description: The Nomad Autoscaler is an autoscaling daemon for Nomad, architectured
|
||||||
|
around plug-ins to allow for easy extensibility in terms of supported metrics sources,
|
||||||
|
scaling targets and scaling algorithms.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Hashicorp
|
||||||
homepage: https://github.com/hashicorp/nomad-autoscaler
|
homepage: https://github.com/hashicorp/nomad-autoscaler
|
||||||
license: Mozilla Public License, version 2.0
|
license: Mozilla Public License, version 2.0
|
||||||
maintainer: Hashicorp
|
builds:
|
||||||
name: nomad-autoscaler
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.4.8
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.4.8
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: nzbget
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: '25.0'
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: '25.0'
|
|
||||||
description: NZBGet is a binary downloader, which downloads files from Usenet based-on information given in nzb files.
|
|
||||||
github: nzbgetcom/nzbget
|
github: nzbgetcom/nzbget
|
||||||
|
description: NZBGet is a binary downloader, which downloads files from Usenet based-on
|
||||||
|
information given in nzb files.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: nzbgetcom
|
||||||
homepage: https://github.com/nzbgetcom/nzbget
|
homepage: https://github.com/nzbgetcom/nzbget
|
||||||
license: GPL-2.0
|
license: GPL-2.0
|
||||||
maintainer: nzbgetcom
|
builds:
|
||||||
name: nzbget
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: '25.4'
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: '25.4'
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: openbao-plugin-secret-consul
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.1.0
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.1.0
|
|
||||||
description: OpenBao secrets engine plugin for HashiCorp Consul
|
|
||||||
github: openbao/openbao-plugins
|
github: openbao/openbao-plugins
|
||||||
|
github_release_pattern: "^secrets-consul-v.*"
|
||||||
|
description: OpenBao secrets engine plugin for HashiCorp Consul
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: OpenBao Community
|
||||||
homepage: https://github.com/openbao/openbao-plugins
|
homepage: https://github.com/openbao/openbao-plugins
|
||||||
license: MPL-2.0
|
license: MPL-2.0
|
||||||
maintainer: OpenBao Community
|
builds:
|
||||||
name: openbao-plugin-secret-consul
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.1.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.1.0
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: openbao-plugin-secret-nomad
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.1.4
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.1.4
|
|
||||||
description: OpenBao secrets engine plugin for HashiCorp Nomad
|
|
||||||
github: openbao/openbao-plugins
|
github: openbao/openbao-plugins
|
||||||
|
github_release_pattern: "^secrets-nomad-v.*"
|
||||||
|
description: OpenBao secrets engine plugin for HashiCorp Nomad
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: OpenBao Community
|
||||||
homepage: https://github.com/openbao/openbao-plugins
|
homepage: https://github.com/openbao/openbao-plugins
|
||||||
license: MPL-2.0
|
license: MPL-2.0
|
||||||
maintainer: OpenBao Community
|
builds:
|
||||||
name: openbao-plugin-secret-nomad
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.1.5
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.1.5
|
||||||
|
|||||||
@ -1,18 +1,18 @@
|
|||||||
---
|
name: openbao-plugins
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.0.0
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.0.0
|
|
||||||
description: Meta package that installs all OpenBao plugins
|
description: Meta package that installs all OpenBao plugins
|
||||||
github: openbao/openbao-plugins
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: OpenBao Community
|
||||||
homepage: https://github.com/openbao/openbao-plugins
|
homepage: https://github.com/openbao/openbao-plugins
|
||||||
license: MPL-2.0
|
license: MPL-2.0
|
||||||
maintainer: OpenBao Community
|
builds:
|
||||||
name: openbao-plugins
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.0.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.0.0
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: packer
|
||||||
arch: amd64
|
github: hashicorp/packer
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.13.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.13.1
|
|
||||||
description: Create identical images for multiple platforms from a single source configuration.
|
description: Create identical images for multiple platforms from a single source configuration.
|
||||||
github: unknown/packer
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: HashiCorp
|
||||||
homepage: https://www.packer.io/
|
homepage: https://www.packer.io/
|
||||||
license: BUSL-1.1
|
license: BUSL-1.1
|
||||||
maintainer: HashiCorp
|
builds:
|
||||||
name: packer
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.14.3
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.14.3
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: postgres_exporter
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.17.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.17.1
|
|
||||||
description: A PostgreSQL metric exporter for Prometheus
|
|
||||||
github: prometheus-community/postgres_exporter
|
github: prometheus-community/postgres_exporter
|
||||||
|
description: A PostgreSQL metric exporter for Prometheus
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Prometheus
|
||||||
homepage: https://github.com/prometheus-community/postgres_exporter
|
homepage: https://github.com/prometheus-community/postgres_exporter
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: Prometheus
|
builds:
|
||||||
name: postgres_exporter
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.18.1
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.18.1
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: ruff
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '6'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.8.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '6'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.8.1
|
|
||||||
description: An extremely fast Python linter and code formatter, written in Rust.
|
|
||||||
github: astral-sh/ruff
|
github: astral-sh/ruff
|
||||||
|
description: An extremely fast Python linter and code formatter, written in Rust.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Astral.sh
|
||||||
homepage: https://docs.astral.sh/ruff/
|
homepage: https://docs.astral.sh/ruff/
|
||||||
license: Apache-2.0
|
license: Apache-2.0
|
||||||
maintainer: Astral.sh
|
builds:
|
||||||
name: ruff
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.14.10
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.14.10
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: stalwart-cli
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.13.4
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.13.4
|
|
||||||
description: Stalwart CLI - Command line interface for Stalwart Mail Server
|
|
||||||
github: stalwartlabs/stalwart
|
github: stalwartlabs/stalwart
|
||||||
|
description: Stalwart CLI - Command line interface for Stalwart Mail Server
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Stalwart Labs
|
||||||
homepage: https://stalw.art
|
homepage: https://stalw.art
|
||||||
license: AGPL-3.0
|
license: AGPL-3.0
|
||||||
maintainer: Stalwart Labs
|
builds:
|
||||||
name: stalwart-cli
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.15.3
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.15.3
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: stalwart-foundationdb
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.13.4
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.13.4
|
|
||||||
description: Stalwart Mail Server with FoundationDB support - A modern, secure JMAP, IMAP and SMTP mail server
|
|
||||||
github: stalwartlabs/stalwart
|
github: stalwartlabs/stalwart
|
||||||
|
description: Stalwart Mail Server with FoundationDB support - A modern, secure JMAP,
|
||||||
|
IMAP and SMTP mail server
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Stalwart Labs
|
||||||
homepage: https://stalw.art
|
homepage: https://stalw.art
|
||||||
license: AGPL-3.0
|
license: AGPL-3.0
|
||||||
maintainer: Stalwart Labs
|
builds:
|
||||||
name: stalwart-foundationdb
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.15.3
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.15.3
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: stalwart
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.13.4
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.13.4
|
|
||||||
description: Stalwart Mail Server - A modern, secure JMAP, IMAP and SMTP mail server
|
|
||||||
github: stalwartlabs/stalwart
|
github: stalwartlabs/stalwart
|
||||||
|
description: Stalwart Mail Server - A modern, secure JMAP, IMAP and SMTP mail server
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Stalwart Labs
|
||||||
homepage: https://stalw.art
|
homepage: https://stalw.art
|
||||||
license: AGPL-3.0
|
license: AGPL-3.0
|
||||||
maintainer: Stalwart Labs
|
builds:
|
||||||
name: stalwart
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.15.3
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.15.3
|
||||||
|
|||||||
@ -1,18 +1,22 @@
|
|||||||
---
|
name: terraform
|
||||||
|
github: hashicorp/terraform
|
||||||
|
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.
|
||||||
arch: amd64
|
arch: amd64
|
||||||
builds:
|
platform: linux
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
maintainer: HashiCorp
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.5.0
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.5.0
|
|
||||||
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.
|
|
||||||
github: unknown/terraform
|
|
||||||
homepage: https://terraform.io/
|
homepage: https://terraform.io/
|
||||||
license: BUSL-1.1
|
license: BUSL-1.1
|
||||||
maintainer: HashiCorp
|
builds:
|
||||||
name: terraform
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.14.3
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.14.3
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: terragrunt
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.90.0
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.90.0
|
|
||||||
description: Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu/Terraform to scale.
|
|
||||||
github: gruntwork-io/terragrunt
|
github: gruntwork-io/terragrunt
|
||||||
|
description: Terragrunt is a flexible orchestration tool that allows Infrastructure
|
||||||
|
as Code written in OpenTofu/Terraform to scale.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Gruntwork
|
||||||
homepage: https://github.com/gruntwork-io/terragrunt
|
homepage: https://github.com/gruntwork-io/terragrunt
|
||||||
license: MIT
|
license: MIT
|
||||||
maintainer: Gruntwork
|
builds:
|
||||||
name: terragrunt
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.96.1
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.96.1
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: tflint
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.59.1
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.59.1
|
|
||||||
description: A Pluggable Terraform Linter that finds potential errors in Terraform configurations and enforces best practices.
|
|
||||||
github: terraform-linters/tflint
|
github: terraform-linters/tflint
|
||||||
|
description: A Pluggable Terraform Linter that finds potential errors in Terraform
|
||||||
|
configurations and enforces best practices.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Terraform Linters
|
||||||
homepage: https://github.com/terraform-linters/tflint
|
homepage: https://github.com/terraform-linters/tflint
|
||||||
license: MPL-2.0
|
license: MPL-2.0
|
||||||
maintainer: Terraform Linters
|
builds:
|
||||||
name: tflint
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.60.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.60.0
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: uv
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.6.5
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.6.5
|
|
||||||
description: An extremely fast Python package and project manager, written in Rust.
|
|
||||||
github: astral-sh/uv
|
github: astral-sh/uv
|
||||||
|
description: An extremely fast Python package and project manager, written in Rust.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Astral.sh
|
||||||
homepage: https://docs.astral.sh/uv/
|
homepage: https://docs.astral.sh/uv/
|
||||||
license: Apache-2.0
|
license: Apache-2.0
|
||||||
maintainer: Astral.sh
|
builds:
|
||||||
name: uv
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.9.20
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.9.20
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: vals
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 0.42.2
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 0.42.2
|
|
||||||
description: vals is a Helm-like configuration 'Values' loader with support for various sources and merge strategies
|
|
||||||
github: helmfile/vals
|
github: helmfile/vals
|
||||||
|
description: vals is a Helm-like configuration 'Values' loader with support for various
|
||||||
|
sources and merge strategies
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: Helmfile Contributors
|
||||||
homepage: https://github.com/helmfile/vals
|
homepage: https://github.com/helmfile/vals
|
||||||
license: Apache-2.0
|
license: Apache-2.0
|
||||||
maintainer: Helmfile Contributors
|
builds:
|
||||||
name: vals
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 0.43.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 0.43.0
|
||||||
|
|||||||
@ -1,18 +1,22 @@
|
|||||||
---
|
name: vault
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.19.5
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.19.5
|
|
||||||
description: Vault is a tool for securely accessing secrets. A secret is anything that you want to tightly control access to, such as API keys, passwords, certificates, and more. Vault provides a unified interface to any secret, while providing tight access control and recording a detailed audit log.
|
|
||||||
github: hashicorp/vault
|
github: hashicorp/vault
|
||||||
|
description: Vault is a tool for securely accessing secrets. A secret is anything
|
||||||
|
that you want to tightly control access to, such as API keys, passwords, certificates,
|
||||||
|
and more. Vault provides a unified interface to any secret, while providing tight
|
||||||
|
access control and recording a detailed audit log.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: HashiCorp
|
||||||
homepage: https://github.com/hashicorp/vault
|
homepage: https://github.com/hashicorp/vault
|
||||||
license: BUSL-1.1
|
license: BUSL-1.1
|
||||||
maintainer: HashiCorp
|
builds:
|
||||||
name: vault
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.21.1
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.21.1
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: victoria-logs
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.26.0
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.26.0
|
|
||||||
description: 'VictoriaLogs: Fast and easy to use database for logs, which can efficiently handle terabytes of logs'
|
|
||||||
github: VictoriaMetrics/VictoriaLogs
|
github: VictoriaMetrics/VictoriaLogs
|
||||||
|
description: 'VictoriaLogs: Fast and easy to use database for logs, which can efficiently
|
||||||
|
handle terabytes of logs'
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: VictoriaMetrics
|
||||||
homepage: https://github.com/VictoriaMetrics/VictoriaLogs
|
homepage: https://github.com/VictoriaMetrics/VictoriaLogs
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: VictoriaMetrics
|
builds:
|
||||||
name: victoria-logs
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.43.1
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.43.1
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: vlutils
|
||||||
arch: amd64
|
|
||||||
builds:
|
|
||||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el8]
|
|
||||||
version: 1.26.0
|
|
||||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
|
||||||
release: '1'
|
|
||||||
repository: [almalinux/el9]
|
|
||||||
version: 1.26.0
|
|
||||||
description: 'VictoriaLogs utilities: Fast and easy to use database for logs, which can efficiently handle terabytes of logs'
|
|
||||||
github: VictoriaMetrics/VictoriaLogs
|
github: VictoriaMetrics/VictoriaLogs
|
||||||
|
description: 'VictoriaLogs utilities: Fast and easy to use database for logs, which
|
||||||
|
can efficiently handle terabytes of logs'
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: VictoriaMetrics
|
||||||
homepage: https://github.com/VictoriaMetrics/VictoriaLogs
|
homepage: https://github.com/VictoriaMetrics/VictoriaLogs
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: VictoriaMetrics
|
builds:
|
||||||
name: vlutils
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.43.1
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.43.1
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: vmagent
|
||||||
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: vmagent collects metrics data via popular data ingestion protocols and routes it to VictoriaMetrics.
|
|
||||||
github: VictoriaMetrics/VictoriaMetrics
|
github: VictoriaMetrics/VictoriaMetrics
|
||||||
|
description: vmagent collects metrics data via popular data ingestion protocols and
|
||||||
|
routes it to VictoriaMetrics.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: VictoriaMetrics
|
||||||
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: VictoriaMetrics
|
builds:
|
||||||
name: vmagent
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.132.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.132.0
|
||||||
|
|||||||
@ -1,18 +1,19 @@
|
|||||||
---
|
name: vmalert
|
||||||
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: vmalert processes alerts and recording rules from VictoriaMetrics.
|
|
||||||
github: VictoriaMetrics/VictoriaMetrics
|
github: VictoriaMetrics/VictoriaMetrics
|
||||||
|
description: vmalert processes alerts and recording rules from VictoriaMetrics.
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: VictoriaMetrics
|
||||||
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: VictoriaMetrics
|
builds:
|
||||||
name: vmalert
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.132.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.132.0
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: vminsert
|
||||||
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
|
github: VictoriaMetrics/VictoriaMetrics
|
||||||
|
description: vminsert accepts data via popular data ingestion protocols and routes
|
||||||
|
it to vmstorage nodes
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: VictoriaMetrics
|
||||||
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: VictoriaMetrics
|
builds:
|
||||||
name: vminsert
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.132.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.132.0
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: vmselect
|
||||||
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: vmselect processes incoming queries by fetching the requested data from vmstorage nodes
|
|
||||||
github: VictoriaMetrics/VictoriaMetrics
|
github: VictoriaMetrics/VictoriaMetrics
|
||||||
|
description: vmselect processes incoming queries by fetching the requested data from
|
||||||
|
vmstorage nodes
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: VictoriaMetrics
|
||||||
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: VictoriaMetrics
|
builds:
|
||||||
name: vmselect
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.132.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.132.0
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: vmstorage
|
||||||
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: vmstorage stores time series data obtained from vminsert and returns the requested data to vmselect
|
|
||||||
github: VictoriaMetrics/VictoriaMetrics
|
github: VictoriaMetrics/VictoriaMetrics
|
||||||
|
description: vmstorage stores time series data obtained from vminsert and returns
|
||||||
|
the requested data to vmselect
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: VictoriaMetrics
|
||||||
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: VictoriaMetrics
|
builds:
|
||||||
name: vmstorage
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.132.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.132.0
|
||||||
|
|||||||
@ -1,18 +1,20 @@
|
|||||||
---
|
name: vmutils
|
||||||
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: 'VictoriaMetrics utilities: fast, cost-effective monitoring solution and time series database.'
|
|
||||||
github: VictoriaMetrics/VictoriaMetrics
|
github: VictoriaMetrics/VictoriaMetrics
|
||||||
|
description: 'VictoriaMetrics utilities: fast, cost-effective monitoring solution
|
||||||
|
and time series database.'
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
maintainer: VictoriaMetrics
|
||||||
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
homepage: https://github.com/VictoriaMetrics/VictoriaMetrics
|
||||||
license: Apache-2.0 license
|
license: Apache-2.0 license
|
||||||
maintainer: VictoriaMetrics
|
builds:
|
||||||
name: vmutils
|
- repository:
|
||||||
platform: linux
|
- almalinux/el8
|
||||||
|
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||||
|
release: 1-el8
|
||||||
|
version: 1.132.0
|
||||||
|
- repository:
|
||||||
|
- almalinux/el9
|
||||||
|
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||||
|
release: 1-el9
|
||||||
|
version: 1.132.0
|
||||||
|
|||||||
132
tools/build
132
tools/build
@ -285,6 +285,32 @@ def normalize_github_version(version: str) -> str:
|
|||||||
return version
|
return version
|
||||||
|
|
||||||
|
|
||||||
|
def parse_github_version_release(version: str) -> tuple[str, str]:
|
||||||
|
"""
|
||||||
|
Parse GitHub version string and extract version and release components.
|
||||||
|
|
||||||
|
Args:
|
||||||
|
version: Version string (e.g., "v7.1.3-1" or "v1.2.3")
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
Tuple of (version, release_suffix) where release_suffix is empty if no trailing number
|
||||||
|
"""
|
||||||
|
import re
|
||||||
|
|
||||||
|
# Remove 'v' prefix if present
|
||||||
|
if version.startswith('v'):
|
||||||
|
version = version[1:]
|
||||||
|
|
||||||
|
# Check if version ends with -<number>
|
||||||
|
match = re.match(r'^(.+)-(\d+)$', version)
|
||||||
|
if match:
|
||||||
|
version_part = match.group(1)
|
||||||
|
release_suffix = match.group(2)
|
||||||
|
return version_part, release_suffix
|
||||||
|
else:
|
||||||
|
return version, ""
|
||||||
|
|
||||||
|
|
||||||
def compare_versions(current: str, latest: str) -> bool:
|
def compare_versions(current: str, latest: str) -> bool:
|
||||||
"""
|
"""
|
||||||
Compare version strings to determine if latest is newer.
|
Compare version strings to determine if latest is newer.
|
||||||
@ -311,6 +337,69 @@ def compare_versions(current: str, latest: str) -> bool:
|
|||||||
return latest != current
|
return latest != current
|
||||||
|
|
||||||
|
|
||||||
|
def get_github_releases_by_pattern(repo: str, pattern: str) -> Optional[dict]:
|
||||||
|
"""
|
||||||
|
Get the latest release from GitHub API that matches a specific pattern.
|
||||||
|
|
||||||
|
Args:
|
||||||
|
repo: GitHub repository in format "owner/repo"
|
||||||
|
pattern: Regex pattern to match release tag names
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
Latest matching release info or None if not found
|
||||||
|
"""
|
||||||
|
import re
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
try:
|
||||||
|
github_token = get_github_token()
|
||||||
|
|
||||||
|
url = f"https://api.github.com/repos/{repo}/releases"
|
||||||
|
headers = {
|
||||||
|
'Authorization': f'token {github_token}',
|
||||||
|
'Accept': 'application/vnd.github.v3+json'
|
||||||
|
}
|
||||||
|
|
||||||
|
logger.debug(f"Checking GitHub releases with pattern '{pattern}': {url}")
|
||||||
|
response = requests.get(url, headers=headers, timeout=30)
|
||||||
|
|
||||||
|
if response.status_code == 200:
|
||||||
|
releases = response.json()
|
||||||
|
|
||||||
|
# Filter releases by pattern and find the latest
|
||||||
|
matching_releases = []
|
||||||
|
for release in releases:
|
||||||
|
tag_name = release.get('tag_name', '')
|
||||||
|
if re.match(pattern, tag_name):
|
||||||
|
matching_releases.append(release)
|
||||||
|
|
||||||
|
if matching_releases:
|
||||||
|
# Return the first (most recent) matching release
|
||||||
|
latest_release = matching_releases[0]
|
||||||
|
logger.debug(f"Latest matching release for {repo} with pattern '{pattern}': {latest_release.get('tag_name', 'unknown')}")
|
||||||
|
return latest_release
|
||||||
|
else:
|
||||||
|
logger.warning(f"No releases matching pattern '{pattern}' found for {repo}")
|
||||||
|
return None
|
||||||
|
|
||||||
|
elif response.status_code == 404:
|
||||||
|
logger.warning(f"No releases found for {repo}")
|
||||||
|
return None
|
||||||
|
elif response.status_code == 401:
|
||||||
|
logger.error("GitHub authentication failed. Check GitHub token.")
|
||||||
|
return None
|
||||||
|
else:
|
||||||
|
logger.warning(
|
||||||
|
f"Unexpected response from GitHub API for {repo}: "
|
||||||
|
f"{response.status_code} - {response.text}"
|
||||||
|
)
|
||||||
|
return None
|
||||||
|
|
||||||
|
except requests.RequestException as e:
|
||||||
|
logger.error(f"Failed to check GitHub releases for {repo}: {e}")
|
||||||
|
return None
|
||||||
|
|
||||||
|
|
||||||
def get_github_token() -> str:
|
def get_github_token() -> str:
|
||||||
"""
|
"""
|
||||||
Retrieve GitHub API token from Vault.
|
Retrieve GitHub API token from Vault.
|
||||||
@ -1048,6 +1137,7 @@ class Builder:
|
|||||||
license=metadata_data.get('license', ''),
|
license=metadata_data.get('license', ''),
|
||||||
builds=builds
|
builds=builds
|
||||||
)
|
)
|
||||||
|
github_release_pattern = metadata_data.get('github_release_pattern', '')
|
||||||
|
|
||||||
if not package_metadata.github:
|
if not package_metadata.github:
|
||||||
self.logger.debug(f"Package {package_name} has no GitHub repo configured")
|
self.logger.debug(f"Package {package_name} has no GitHub repo configured")
|
||||||
@ -1055,12 +1145,35 @@ class Builder:
|
|||||||
|
|
||||||
self.logger.info(f"Checking {package_name} from {package_metadata.github}")
|
self.logger.info(f"Checking {package_name} from {package_metadata.github}")
|
||||||
|
|
||||||
# Get latest release from GitHub
|
# Get latest release from GitHub, with pattern filtering if specified
|
||||||
latest_release = get_github_latest_release(package_metadata.github)
|
if github_release_pattern:
|
||||||
|
self.logger.debug(f"Using release pattern: {github_release_pattern}")
|
||||||
|
latest_release = get_github_releases_by_pattern(package_metadata.github, github_release_pattern)
|
||||||
|
else:
|
||||||
|
latest_release = get_github_latest_release(package_metadata.github)
|
||||||
|
|
||||||
if not latest_release:
|
if not latest_release:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
latest_version = normalize_github_version(latest_release.get('tag_name', ''))
|
# Parse version and release from GitHub tag
|
||||||
|
latest_tag = latest_release.get('tag_name', '')
|
||||||
|
|
||||||
|
# For pattern-matched releases, we need to extract the version part
|
||||||
|
# Example: "secrets-consul-v0.1.0" should become "0.1.0"
|
||||||
|
if github_release_pattern and latest_tag:
|
||||||
|
# Try to extract version from pattern like "secrets-consul-v0.1.0"
|
||||||
|
import re
|
||||||
|
# Look for version pattern after the prefix (v followed by semantic version)
|
||||||
|
version_match = re.search(r'v(\d+\.\d+\.\d+(?:-\d+)?)', latest_tag)
|
||||||
|
if version_match:
|
||||||
|
extracted_version = version_match.group(1)
|
||||||
|
latest_version, release_suffix = parse_github_version_release(extracted_version)
|
||||||
|
else:
|
||||||
|
# Fallback to full tag processing
|
||||||
|
latest_version, release_suffix = parse_github_version_release(latest_tag)
|
||||||
|
else:
|
||||||
|
latest_version, release_suffix = parse_github_version_release(latest_tag)
|
||||||
|
|
||||||
if not latest_version:
|
if not latest_version:
|
||||||
self.logger.warning(f"Could not determine latest version for {package_name}")
|
self.logger.warning(f"Could not determine latest version for {package_name}")
|
||||||
return False
|
return False
|
||||||
@ -1071,7 +1184,14 @@ class Builder:
|
|||||||
if compare_versions(build.version, latest_version):
|
if compare_versions(build.version, latest_version):
|
||||||
# Determine distro suffix based on repository configuration
|
# Determine distro suffix based on repository configuration
|
||||||
distro_suffix = self._get_distro_suffix(build.repository)
|
distro_suffix = self._get_distro_suffix(build.repository)
|
||||||
new_release = f"1-{distro_suffix}" if distro_suffix else "1"
|
|
||||||
|
# Build the new release number
|
||||||
|
if release_suffix:
|
||||||
|
# Use extracted release suffix (e.g., "1" from "7.1.3-1")
|
||||||
|
new_release = f"{release_suffix}-{distro_suffix}" if distro_suffix else release_suffix
|
||||||
|
else:
|
||||||
|
# Default release numbering
|
||||||
|
new_release = f"1-{distro_suffix}" if distro_suffix else "1"
|
||||||
|
|
||||||
self.logger.info(f"New version available for {package_name}: {build.version} -> {latest_version}")
|
self.logger.info(f"New version available for {package_name}: {build.version} -> {latest_version}")
|
||||||
if not dry_run:
|
if not dry_run:
|
||||||
@ -1104,6 +1224,10 @@ class Builder:
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Add github_release_pattern if it exists
|
||||||
|
if github_release_pattern:
|
||||||
|
updated_data['github_release_pattern'] = github_release_pattern
|
||||||
|
|
||||||
with open(metadata_file, 'w') as f:
|
with open(metadata_file, 'w') as f:
|
||||||
yaml.dump(updated_data, f, default_flow_style=False, sort_keys=False)
|
yaml.dump(updated_data, f, default_flow_style=False, sort_keys=False)
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user