Compare commits
1 Commits
master
..
ba6d499cb3
| Author | SHA1 | Date | |
|---|---|---|---|
| ba6d499cb3 |
@@ -0,0 +1,59 @@
|
||||
name: Build
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build-8:
|
||||
runs-on: almalinux-8
|
||||
container:
|
||||
image: git.unkin.net/unkin/almalinux8-actionsdind:latest
|
||||
options: "--privileged --volume /etc/pki/tls/vault:/etc/pki/tls/vault:ro"
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Build Packages
|
||||
env:
|
||||
VAULT_ROLE_ID: ${{ secrets.RPMBUILDER_VAULT_ROLEID }}
|
||||
run: |
|
||||
make all DISTRO=el/8
|
||||
|
||||
- name: Show RPMs
|
||||
run: |
|
||||
find /workspace -type f -name "*.rpm"
|
||||
|
||||
- name: Upload Artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: rpms-8
|
||||
path: /workspace/unkin/rpmbuilder/dist/*/*.rpm
|
||||
|
||||
build-9:
|
||||
runs-on: almalinux-8
|
||||
container:
|
||||
image: git.unkin.net/unkin/almalinux9-actionsdind:latest
|
||||
options: "--privileged --volume /etc/pki/tls/vault:/etc/pki/tls/vault:ro"
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Build Packages
|
||||
env:
|
||||
VAULT_ROLE_ID: ${{ secrets.RPMBUILDER_VAULT_ROLEID }}
|
||||
run: |
|
||||
make all DISTRO=el/9
|
||||
|
||||
- name: Show RPMs
|
||||
run: |
|
||||
find /workspace -type f -name "*.rpm"
|
||||
|
||||
- name: Upload Artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: rpms-9
|
||||
path: /workspace/unkin/rpmbuilder/dist/*/*.rpm
|
||||
@@ -0,0 +1,66 @@
|
||||
name: Deploy
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
deploy-8:
|
||||
runs-on: almalinux-8
|
||||
container:
|
||||
image: git.unkin.net/unkin/almalinux8-actionsdind:latest
|
||||
options: --privileged
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Download Artifacts
|
||||
run: |
|
||||
mkdir -p /workspace/unkin/rpmbuilder/dist/8
|
||||
export PREVIOUS_RUN_ID=$((GITHUB_RUN_NUMBER - 1))
|
||||
curl -L -o /workspace/rpms.zip "https://git.unkin.net/${GITHUB_REPOSITORY}/actions/runs/${PREVIOUS_RUN_ID}/artifacts/rpms-8"
|
||||
unzip /workspace/rpms.zip -d /workspace/unkin/rpmbuilder/dist/8
|
||||
|
||||
- name: Show RPMs
|
||||
run: |
|
||||
find /workspace -type f -name "*.rpm"
|
||||
|
||||
- name: Upload RPMs to Gitea
|
||||
env:
|
||||
DRONECI_PASSWORD: ${{ secrets.DRONECI_PASSWORD }}
|
||||
run: |
|
||||
for rpm in $(find /workspace/unkin/rpmbuilder/dist/8 -type f -name "*.rpm"); do
|
||||
curl --user droneci:${{ secrets.DRONECI_PASSWORD }} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/almalinux/el8/upload
|
||||
done
|
||||
|
||||
deploy-9:
|
||||
runs-on: almalinux-8
|
||||
container:
|
||||
image: git.unkin.net/unkin/almalinux9-actionsdind:latest
|
||||
options: --privileged
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Download Artifacts
|
||||
run: |
|
||||
mkdir -p /workspace/unkin/rpmbuilder/dist/9
|
||||
export PREVIOUS_RUN_ID=$((GITHUB_RUN_NUMBER - 1))
|
||||
curl -L -o /workspace/rpms.zip "https://git.unkin.net/${GITHUB_REPOSITORY}/actions/runs/${PREVIOUS_RUN_ID}/artifacts/rpms-9"
|
||||
unzip /workspace/rpms.zip -d /workspace/unkin/rpmbuilder/dist/9
|
||||
|
||||
- name: Show RPMs
|
||||
run: |
|
||||
find /workspace -type f -name "*.rpm"
|
||||
|
||||
- name: Upload RPMs to Gitea
|
||||
env:
|
||||
DRONECI_PASSWORD: ${{ secrets.DRONECI_PASSWORD }}
|
||||
run: |
|
||||
for rpm in $(find /workspace/unkin/rpmbuilder/dist/9 -type f -name "*.rpm"); do
|
||||
curl --user droneci:${{ secrets.DRONECI_PASSWORD }} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/almalinux/el9/upload
|
||||
done
|
||||
@@ -1,4 +1,3 @@
|
||||
dist
|
||||
env
|
||||
.claude
|
||||
.ruff_cache
|
||||
|
||||
@@ -1,59 +0,0 @@
|
||||
---
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v4.5.0
|
||||
hooks:
|
||||
- id: check-executables-have-shebangs
|
||||
- id: check-json
|
||||
- id: check-added-large-files
|
||||
args: ['--maxkb=500']
|
||||
- id: check-merge-conflict
|
||||
- id: check-shebang-scripts-are-executable
|
||||
- id: check-symlinks
|
||||
- id: check-toml
|
||||
- id: check-yaml
|
||||
args: [--allow-multiple-documents]
|
||||
- id: detect-aws-credentials
|
||||
args: [--allow-missing-credentials]
|
||||
- id: detect-private-key
|
||||
- id: end-of-file-fixer
|
||||
- id: forbid-new-submodules
|
||||
- id: pretty-format-json
|
||||
- id: trailing-whitespace
|
||||
|
||||
- repo: https://github.com/adrienverge/yamllint.git
|
||||
rev: v1.37.1
|
||||
hooks:
|
||||
- id: yamllint
|
||||
args:
|
||||
[
|
||||
"-d {extends: relaxed, rules: {line-length: disable}}",
|
||||
"-s",
|
||||
]
|
||||
|
||||
- repo: local
|
||||
hooks:
|
||||
- id: pytest
|
||||
name: Run unit tests
|
||||
entry: make test
|
||||
language: system
|
||||
types: [python]
|
||||
pass_filenames: false
|
||||
|
||||
- repo: https://github.com/python-jsonschema/check-jsonschema
|
||||
rev: 0.37.2
|
||||
hooks:
|
||||
- id: check-jsonschema
|
||||
name: Validate RPM package metadata
|
||||
files: ^rpms/[^/]+/metadata\.yaml$
|
||||
args: [--schemafile, schema/metadata.json]
|
||||
language_version: python3.11
|
||||
|
||||
- repo: https://github.com/astral-sh/ruff-pre-commit
|
||||
rev: v0.14.7
|
||||
hooks:
|
||||
# Run the linter.
|
||||
- id: ruff-check
|
||||
args: [--fix]
|
||||
# Run the formatter.
|
||||
- id: ruff-format
|
||||
@@ -1,26 +0,0 @@
|
||||
when:
|
||||
- event: pull_request
|
||||
|
||||
steps:
|
||||
- name: build rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro almalinux/el8 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show rpms
|
||||
image: git.unkin.net/unkin/almalinux8-base:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
@@ -1,26 +0,0 @@
|
||||
when:
|
||||
- event: pull_request
|
||||
|
||||
steps:
|
||||
- name: build rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro almalinux/el9 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show rpms
|
||||
image: git.unkin.net/unkin/almalinux9-base:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
@@ -1,26 +0,0 @@
|
||||
when:
|
||||
- event: pull_request
|
||||
|
||||
steps:
|
||||
- name: build rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro fedora/42 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show rpms
|
||||
image: git.unkin.net/unkin/fedora42-base:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
@@ -1,26 +0,0 @@
|
||||
when:
|
||||
- event: pull_request
|
||||
|
||||
steps:
|
||||
- name: build rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro fedora/43 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show rpms
|
||||
image: git.unkin.net/unkin/fedora43-base:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
@@ -1,26 +0,0 @@
|
||||
when:
|
||||
- event: pull_request
|
||||
|
||||
steps:
|
||||
- name: build rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro fedora/44 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show rpms
|
||||
image: git.unkin.net/unkin/fedora44-base:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
@@ -1,50 +0,0 @@
|
||||
when:
|
||||
- event: push
|
||||
branch: master
|
||||
|
||||
steps:
|
||||
- name: build-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro almalinux/el8 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-base:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
depends_on: [build-rpms]
|
||||
|
||||
- name: deploy-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- |
|
||||
for rpm in $(find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"); do
|
||||
curl --user droneci:$${DRONECI_PASSWORD} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/almalinux/el8/upload
|
||||
done
|
||||
environment:
|
||||
DRONECI_PASSWORD:
|
||||
from_secret: DRONECI_PASSWORD
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 100m
|
||||
limits:
|
||||
memory: 512Mi
|
||||
cpu: 500m
|
||||
depends_on: [build-rpms, show-rpms]
|
||||
@@ -1,50 +0,0 @@
|
||||
when:
|
||||
- event: push
|
||||
branch: master
|
||||
|
||||
steps:
|
||||
- name: build-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro almalinux/el9 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-base:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
depends_on: [build-rpms]
|
||||
|
||||
- name: deploy-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- |
|
||||
for rpm in $(find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"); do
|
||||
curl --user droneci:$${DRONECI_PASSWORD} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/almalinux/el9/upload
|
||||
done
|
||||
environment:
|
||||
DRONECI_PASSWORD:
|
||||
from_secret: DRONECI_PASSWORD
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 100m
|
||||
limits:
|
||||
memory: 512Mi
|
||||
cpu: 500m
|
||||
depends_on: [build-rpms, show-rpms]
|
||||
@@ -1,50 +0,0 @@
|
||||
when:
|
||||
- event: push
|
||||
branch: master
|
||||
|
||||
steps:
|
||||
- name: build-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro fedora/42 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show-rpms
|
||||
image: git.unkin.net/unkin/fedora42-rpmbuilder:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
depends_on: [build-rpms]
|
||||
|
||||
- name: deploy-rpms
|
||||
image: git.unkin.net/unkin/fedora42-rpmbuilder:latest
|
||||
commands:
|
||||
- |
|
||||
for rpm in $(find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"); do
|
||||
curl --user droneci:$${DRONECI_PASSWORD} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/fedora/42/upload
|
||||
done
|
||||
environment:
|
||||
DRONECI_PASSWORD:
|
||||
from_secret: DRONECI_PASSWORD
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 100m
|
||||
limits:
|
||||
memory: 512Mi
|
||||
cpu: 500m
|
||||
depends_on: [build-rpms, show-rpms]
|
||||
@@ -1,50 +0,0 @@
|
||||
when:
|
||||
- event: push
|
||||
branch: master
|
||||
|
||||
steps:
|
||||
- name: build-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro fedora/43 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show-rpms
|
||||
image: git.unkin.net/unkin/fedora43-rpmbuilder:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
depends_on: [build-rpms]
|
||||
|
||||
- name: deploy-rpms
|
||||
image: git.unkin.net/unkin/fedora43-rpmbuilder:latest
|
||||
commands:
|
||||
- |
|
||||
for rpm in $(find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"); do
|
||||
curl --user droneci:$${DRONECI_PASSWORD} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/fedora/43/upload
|
||||
done
|
||||
environment:
|
||||
DRONECI_PASSWORD:
|
||||
from_secret: DRONECI_PASSWORD
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 100m
|
||||
limits:
|
||||
memory: 512Mi
|
||||
cpu: 500m
|
||||
depends_on: [build-rpms, show-rpms]
|
||||
@@ -1,50 +0,0 @@
|
||||
when:
|
||||
- event: push
|
||||
branch: master
|
||||
|
||||
steps:
|
||||
- name: build-rpms
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
commands:
|
||||
- mkdir -p /woodpecker/rpms
|
||||
- ln -s /woodpecker/rpms /workspace
|
||||
- ./tools/build build-all --distro fedora/44 --buildah
|
||||
privileged: true
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 512Mi
|
||||
cpu: 1
|
||||
limits:
|
||||
memory: 2Gi
|
||||
cpu: 2
|
||||
|
||||
- name: show-rpms
|
||||
image: git.unkin.net/unkin/fedora44-rpmbuilder:latest
|
||||
commands:
|
||||
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
|
||||
depends_on: [build-rpms]
|
||||
|
||||
- name: deploy-rpms
|
||||
image: git.unkin.net/unkin/fedora44-rpmbuilder:latest
|
||||
commands:
|
||||
- |
|
||||
for rpm in $(find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"); do
|
||||
curl --user droneci:$${DRONECI_PASSWORD} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/fedora/44/upload
|
||||
done
|
||||
environment:
|
||||
DRONECI_PASSWORD:
|
||||
from_secret: DRONECI_PASSWORD
|
||||
backend_options:
|
||||
kubernetes:
|
||||
serviceAccountName: default
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 100m
|
||||
limits:
|
||||
memory: 512Mi
|
||||
cpu: 500m
|
||||
depends_on: [build-rpms, show-rpms]
|
||||
@@ -1,9 +0,0 @@
|
||||
when:
|
||||
- event: pull_request
|
||||
|
||||
steps:
|
||||
- name: pre-commit
|
||||
image: git.unkin.net/unkin/almalinux9-base:latest
|
||||
commands:
|
||||
- dnf install uv make -y
|
||||
- uvx pre-commit run --all-files
|
||||
+3
-18
@@ -7,28 +7,13 @@ RUN mkdir -p /app/dist
|
||||
# Set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# Accept all package metadata as build arguments and set as environment variables
|
||||
ARG PACKAGE_NAME
|
||||
ENV PACKAGE_NAME=${PACKAGE_NAME}
|
||||
ARG PACKAGE_VERSION
|
||||
ENV PACKAGE_VERSION=${PACKAGE_VERSION}
|
||||
ARG PACKAGE_RELEASE
|
||||
ENV PACKAGE_RELEASE=${PACKAGE_RELEASE}
|
||||
ARG PACKAGE_DESCRIPTION
|
||||
ENV PACKAGE_DESCRIPTION=${PACKAGE_DESCRIPTION}
|
||||
ARG PACKAGE_MAINTAINER
|
||||
ENV PACKAGE_MAINTAINER=${PACKAGE_MAINTAINER}
|
||||
ARG PACKAGE_HOMEPAGE
|
||||
ENV PACKAGE_HOMEPAGE=${PACKAGE_HOMEPAGE}
|
||||
ARG PACKAGE_LICENSE
|
||||
ENV PACKAGE_LICENSE=${PACKAGE_LICENSE}
|
||||
ARG PACKAGE_ARCH
|
||||
ENV PACKAGE_ARCH=${PACKAGE_ARCH}
|
||||
ARG PACKAGE_PLATFORM
|
||||
ENV PACKAGE_PLATFORM=${PACKAGE_PLATFORM}
|
||||
ARG PACKAGE_VERSION
|
||||
ENV PACKAGE_VERSION=${PACKAGE_VERSION}
|
||||
|
||||
# Copy resources from the context into the container
|
||||
COPY resources /app/resources
|
||||
|
||||
# Default command to build RPMs
|
||||
CMD /app/resources/build.sh
|
||||
CMD /app/resources/build.sh
|
||||
@@ -1,17 +1,13 @@
|
||||
# Variables
|
||||
ROOT_DIR := $(PWD)
|
||||
BUILD_TOOL := $(ROOT_DIR)/tools/build
|
||||
DISTRO ?= almalinux/el9
|
||||
|
||||
# Authentication variables (optional)
|
||||
# VAULT_ROLE_ID - Use AppRole authentication if set
|
||||
# VAULT_ROLE - Kubernetes role for service account authentication (default: rpmbuilder)
|
||||
DISTRO ?= el/9 # Default to el/9 if not specified
|
||||
|
||||
# Automatically find all packages with metadata.yaml
|
||||
PACKAGES := $(shell find $(ROOT_DIR)/rpms -mindepth 1 -maxdepth 1 -type d -exec test -f {}/metadata.yaml \; -print | xargs -n1 basename | sort)
|
||||
|
||||
# Default target to build all packages
|
||||
.PHONY: all list build clean test
|
||||
.PHONY: all list build clean
|
||||
all: build-all
|
||||
|
||||
# List all available packages
|
||||
@@ -24,32 +20,33 @@ list:
|
||||
# Build all packages using Python tool
|
||||
build-all:
|
||||
@echo "Building all packages using Python tooling for distro $(DISTRO)..."
|
||||
$(BUILD_TOOL) build-all --distro $(DISTRO)
|
||||
|
||||
# Build all packages using native build (no Docker)
|
||||
build-all-native:
|
||||
@echo "Building all packages natively (no Docker) for distro $(DISTRO)..."
|
||||
$(BUILD_TOOL) build-all --distro $(DISTRO) --native
|
||||
|
||||
# Build all packages using Buildah
|
||||
build-all-buildah:
|
||||
@echo "Building all packages using Buildah for distro $(DISTRO)..."
|
||||
$(BUILD_TOOL) build-all --distro $(DISTRO) --buildah
|
||||
$(BUILD_TOOL) --all --distro $(DISTRO)
|
||||
|
||||
# Build specific package using Python tool
|
||||
.PHONY: $(PACKAGES)
|
||||
$(PACKAGES):
|
||||
@echo "Building package: $@ for distro $(DISTRO)"
|
||||
$(BUILD_TOOL) build --distro $(DISTRO) $@
|
||||
$(BUILD_TOOL) --package $@ --distro $(DISTRO)
|
||||
|
||||
# Build specific package with version/release override
|
||||
build:
|
||||
@if [ -z "$(PACKAGE_NAME)" ]; then \
|
||||
echo "Error: PACKAGE_NAME not specified"; \
|
||||
echo "Usage: make build PACKAGE_NAME=package [PACKAGE_VERSION=version] [PACKAGE_RELEASE=release]"; \
|
||||
exit 1; \
|
||||
fi
|
||||
@if [ -n "$(PACKAGE_VERSION)" ] && [ -n "$(PACKAGE_RELEASE)" ]; then \
|
||||
echo "Building $(PACKAGE_NAME) with explicit version $(PACKAGE_VERSION)-$(PACKAGE_RELEASE) for distro $(DISTRO)"; \
|
||||
$(BUILD_TOOL) --package $(PACKAGE_NAME) --version $(PACKAGE_VERSION) --release $(PACKAGE_RELEASE) --distro $(DISTRO); \
|
||||
else \
|
||||
echo "Building $(PACKAGE_NAME) using metadata.yaml for distro $(DISTRO)"; \
|
||||
$(BUILD_TOOL) --package $(PACKAGE_NAME) --distro $(DISTRO); \
|
||||
fi
|
||||
|
||||
# Dry run - show what would be built without building
|
||||
dry-run:
|
||||
@echo "Dry run - showing what would be built for distro $(DISTRO):"
|
||||
$(BUILD_TOOL) build-all --distro $(DISTRO) --dry-run
|
||||
|
||||
# Run unit tests
|
||||
test:
|
||||
@uv run --group dev pytest tests/ -q; rc=$$?; [ $$rc -eq 5 ] && exit 0 || exit $$rc
|
||||
$(BUILD_TOOL) --all --distro $(DISTRO) --dry-run
|
||||
|
||||
# Clean target
|
||||
clean:
|
||||
@@ -65,3 +62,24 @@ update:
|
||||
update-%:
|
||||
@echo "Checking for updates for package: $*"
|
||||
$(ROOT_DIR)/tools/update-gh --package $*
|
||||
|
||||
# Help target
|
||||
help:
|
||||
@echo "Available targets:"
|
||||
@echo " all - Build all packages (default)"
|
||||
@echo " list - List all available packages"
|
||||
@echo " build-all - Build all packages using Python tooling"
|
||||
@echo " <package> - Build specific package (e.g., 'make consul')"
|
||||
@echo " build - Build with explicit PACKAGE_NAME, PACKAGE_VERSION, PACKAGE_RELEASE"
|
||||
@echo " dry-run - Show what would be built without building"
|
||||
@echo " clean - Remove build artifacts"
|
||||
@echo " update - Check all packages for GitHub release updates"
|
||||
@echo " update-<pkg> - Check specific package for GitHub release updates"
|
||||
@echo " help - Show this help message"
|
||||
@echo ""
|
||||
@echo "Examples:"
|
||||
@echo " make consul # Build consul using metadata.yaml"
|
||||
@echo " make build PACKAGE_NAME=consul # Build consul using metadata.yaml"
|
||||
@echo " make build PACKAGE_NAME=consul PACKAGE_VERSION=1.21.1 PACKAGE_RELEASE=1"
|
||||
@echo " make update-consul # Check consul for GitHub updates"
|
||||
@echo " make dry-run # Show what would be built"
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
[project]
|
||||
name = "rpmbuilder"
|
||||
version = "0.1.0"
|
||||
requires-python = ">=3.11"
|
||||
|
||||
[dependency-groups]
|
||||
dev = [
|
||||
"pytest>=8",
|
||||
"jsonschema>=4",
|
||||
"pyyaml>=6",
|
||||
]
|
||||
@@ -1,20 +1,8 @@
|
||||
name: act_runner
|
||||
github: unknown/act_runner
|
||||
description: A runner for Gitea based on act.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Gitea
|
||||
homepage: https://gitea.com/gitea/act_runner
|
||||
license: MIT
|
||||
dist_tag: true
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 0.2.12
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 0.2.12
|
||||
release: 1
|
||||
version: 0.2.12
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
|
||||
@@ -1,10 +1,3 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
curl -L --output act_runner-linux-amd64 https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/gitea-dl/act_runner/${PACKAGE_VERSION}/act_runner-${PACKAGE_VERSION}-linux-amd64
|
||||
|
||||
# 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
|
||||
curl --output act_runner-linux-amd64 https://dl.gitea.com/act_runner/${PACKAGE_VERSION}/act_runner-${PACKAGE_VERSION}-linux-amd64
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: act_runner
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
description: "A runner for Gitea based on act."
|
||||
maintainer: Gitea
|
||||
homepage: https://gitea.com/gitea/act_runner
|
||||
license: MIT
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
@@ -1,20 +1,8 @@
|
||||
name: bind_exporter
|
||||
github: prometheus-community/bind_exporter
|
||||
description: Prometheus exporter for BIND
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Prometheus
|
||||
homepage: https://github.com/prometheus-community/bind_exporter
|
||||
license: Apache-2.0 license
|
||||
dist_tag: true
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 0.8.0
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 0.8.0
|
||||
release: 1
|
||||
version: 0.8.0
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Download the required files
|
||||
curl --output - -L https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/prometheus-community/bind_exporter/releases/download/v${PACKAGE_VERSION}/bind_exporter-${PACKAGE_VERSION}.linux-amd64.tar.gz | tar --strip-components=1 -xzf -
|
||||
curl --output - -L https://github.com/prometheus-community/bind_exporter/releases/download/v${PACKAGE_VERSION}/bind_exporter-${PACKAGE_VERSION}.linux-amd64.tar.gz | tar --strip-components=1 -xzf -
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: bind_exporter
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
description: "Prometheus exporter for BIND"
|
||||
maintainer: Prometheus
|
||||
homepage: https://github.com/prometheus-community/bind_exporter
|
||||
license: Apache-2.0 license
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
@@ -1,21 +1,9 @@
|
||||
name: 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
|
||||
license: MIT
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
release: 1
|
||||
version: 0.6.1
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.15.0
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.15.0
|
||||
github: gruntwork-io/boilerplate
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Download the required files
|
||||
wget -O /app/boilerplate https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/gruntwork-io/boilerplate/releases/download/v${PACKAGE_VERSION}/boilerplate_linux_amd64
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
wget -O /app/boilerplate https://github.com/gruntwork-io/boilerplate/releases/download/v${PACKAGE_VERSION}/boilerplate_linux_amd64
|
||||
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,17 +1,17 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: boilerplate
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
description: "Boilerplate is a tool for generating files and folders (boilerplate) from a set of templates."
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
maintainer: Gruntwork
|
||||
homepage: https://github.com/gruntwork-io/boilerplate
|
||||
license: MIT
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
name: claude-code
|
||||
description: Claude Code - Anthropic's agentic AI coding tool
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Anthropic
|
||||
homepage: https://claude.ai/code
|
||||
license: Proprietary
|
||||
dist_tag: true
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 2.1.156
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 2.1.156
|
||||
@@ -1,13 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Download claude-code binary
|
||||
wget -O /app/claude https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/claude-ai/claude-code-releases/${PACKAGE_VERSION}/linux-x64/claude
|
||||
chmod +x /app/claude
|
||||
|
||||
# Process the nfpm.yaml template with environment variables
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,33 +0,0 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
replaces:
|
||||
- claude-code
|
||||
- claude
|
||||
|
||||
provides:
|
||||
- claude-code
|
||||
- claude
|
||||
|
||||
# Files to include in the package
|
||||
contents:
|
||||
- src: /app/claude
|
||||
dst: /usr/bin/claude
|
||||
file_info:
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
@@ -1,21 +1,9 @@
|
||||
name: cni-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
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
release: 1
|
||||
version: 1.7.1
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.9.1
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.9.1
|
||||
github: containernetworking/plugins
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Download and extract cni-plugins
|
||||
wget -O /app/cni-plugins-linux-amd64.tgz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/containernetworking/plugins/releases/download/v${PACKAGE_VERSION}/cni-plugins-linux-amd64-v${PACKAGE_VERSION}.tgz
|
||||
wget -O /app/cni-plugins-linux-amd64.tgz https://github.com/containernetworking/plugins/releases/download/v${PACKAGE_VERSION}/cni-plugins-linux-amd64-v${PACKAGE_VERSION}.tgz
|
||||
tar xf cni-plugins-linux-amd64.tgz
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,17 +1,17 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: cni-plugins
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
description: "Some reference and example networking plugins, maintained by the CNI team."
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
maintainer: ContainerNetworking
|
||||
homepage: https://github.com/containernetworking/plugins
|
||||
license: Apache-2.0
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
name: code-server
|
||||
github: coder/code-server
|
||||
description: VS Code in the browser.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Coder
|
||||
homepage: https://github.com/coder/code-server
|
||||
license: MIT
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 4.117.0
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 4.117.0
|
||||
@@ -1,6 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
curl -L -o /app/dist/code-server-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.x86_64.rpm \
|
||||
https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/coder/code-server/releases/download/v${PACKAGE_VERSION}/code-server-${PACKAGE_VERSION}-amd64.rpm
|
||||
@@ -1,14 +0,0 @@
|
||||
# nfpm.yaml - unused, RPM is downloaded directly in build.sh
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
@@ -1,21 +1,8 @@
|
||||
name: consul-cni
|
||||
github: unknown/consul-cni
|
||||
description: Plugin for Consul on Kubernetes to allow configuring traffic redirection
|
||||
rules without escalated container privileges.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Hashicorp
|
||||
homepage: https://hashicorp.com
|
||||
license: Mozilla Public License, version 2.0
|
||||
dist_tag: true
|
||||
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
|
||||
release: 1
|
||||
version: 1.7.1
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
|
||||
@@ -1,15 +1,11 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Install dependencies
|
||||
dnf install -y unzip
|
||||
|
||||
# Download and extract consul-cni
|
||||
curl -L -o /app/consul-cni.zip https://releases.hashicorp.com/consul-cni/${PACKAGE_VERSION}/consul-cni_${PACKAGE_VERSION}_linux_amd64.zip
|
||||
curl -o /app/consul-cni.zip https://releases.hashicorp.com/consul-cni/${PACKAGE_VERSION}/consul-cni_${PACKAGE_VERSION}_linux_amd64.zip
|
||||
unzip consul-cni.zip
|
||||
|
||||
# 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
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,16 +1,16 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: consul-cni
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
description: "Plugin for Consul on Kubernetes to allow configuring traffic redirection rules without escalated container privileges."
|
||||
maintainer: Hashicorp
|
||||
homepage: https://hashicorp.com
|
||||
license: Mozilla Public License, version 2.0
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
@@ -1,28 +1,8 @@
|
||||
name: 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
|
||||
license: BUSL-1.1
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
release: 1
|
||||
version: 1.21.1
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.22.7
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.22.7
|
||||
- repository:
|
||||
- fedora/42
|
||||
- fedora/43
|
||||
- fedora/44
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.22.7
|
||||
|
||||
@@ -1,16 +1,11 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Install dependencies
|
||||
dnf install -y unzip
|
||||
|
||||
# Download and extract consul
|
||||
curl -L -o /app/consul.zip https://releases.hashicorp.com/consul/${PACKAGE_VERSION}/consul_${PACKAGE_VERSION}_linux_amd64.zip
|
||||
curl -o /app/consul.zip https://releases.hashicorp.com/consul/${PACKAGE_VERSION}/consul_${PACKAGE_VERSION}_linux_amd64.zip
|
||||
unzip consul.zip
|
||||
|
||||
# Process the nfpm.yaml template with environment variables
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,17 +1,17 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: consul
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
description: "Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure."
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
maintainer: HashiCorp
|
||||
homepage: https://github.com/hashicorp/consul
|
||||
license: BUSL-1.1
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
+6
-18
@@ -1,21 +1,9 @@
|
||||
name: 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/
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
release: 2
|
||||
version: 3.5.18
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 3.6.7
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 3.6.7
|
||||
github: etcd-io/etcd
|
||||
|
||||
@@ -1,13 +1,9 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Download and extract etcd
|
||||
wget -O /app/etcd-v${PACKAGE_VERSION}-linux-amd64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/etcd-io/etcd/releases/download/v${PACKAGE_VERSION}/etcd-v${PACKAGE_VERSION}-linux-amd64.tar.gz
|
||||
wget -O /app/etcd-v${PACKAGE_VERSION}-linux-amd64.tar.gz https://github.com/etcd-io/etcd/releases/download/v${PACKAGE_VERSION}/etcd-v${PACKAGE_VERSION}-linux-amd64.tar.gz
|
||||
tar xf /app/etcd-v${PACKAGE_VERSION}-linux-amd64.tar.gz
|
||||
mv /app/etcd-v${PACKAGE_VERSION}-linux-amd64/* /app/
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,17 +1,17 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: etcd
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
description: "A distributed, reliable key-value store for the most critical data of a distributed system."
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
maintainer: https://etcd.io/
|
||||
homepage: https://etcd.io/
|
||||
license: Apache-2.0
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
@@ -1,21 +1,8 @@
|
||||
name: 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
|
||||
license: MIT license
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
release: 1
|
||||
version: 2.2.0
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 2.3.0
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 2.3.0
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Download the required files
|
||||
curl --output - -L https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/onedr0p/exportarr/releases/download/v${PACKAGE_VERSION}/exportarr_${PACKAGE_VERSION}_linux_amd64.tar.gz | tar --strip-components=1 -xzf -
|
||||
curl --output - -L https://github.com/onedr0p/exportarr/releases/download/v${PACKAGE_VERSION}/exportarr_${PACKAGE_VERSION}_linux_amd64.tar.gz | tar --strip-components=1 -xzf -
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: exportarr
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
description: "AIO Prometheus Exporter for Sabnzbd, Bazarr, Prowlarr, Lidarr, Readarr, Radarr, and Sonarr"
|
||||
maintainer: onedr0p
|
||||
homepage: https://github.com/onedr0p/exportarr
|
||||
license: MIT license
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
@@ -1,20 +1,9 @@
|
||||
name: 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
|
||||
license: MIT
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
release: 1
|
||||
version: 1.8.0
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.11.0
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.11.0
|
||||
github: tynany/frr_exporter
|
||||
|
||||
@@ -1,9 +1,3 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
curl --output - -L https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/tynany/frr_exporter/releases/download/v${PACKAGE_VERSION}/frr_exporter-${PACKAGE_VERSION}.linux-amd64.tar.gz | tar --strip-components=1 -xzf -
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
curl --output - -L https://github.com/tynany/frr_exporter/releases/download/v${PACKAGE_VERSION}/frr_exporter-${PACKAGE_VERSION}.linux-amd64.tar.gz | tar --strip-components=1 -xzf -
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: frr_exporter
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
description: "Prometheus exporter for Free Range Routing"
|
||||
maintainer: Prometheus
|
||||
homepage: https://github.com/tynany/frr_exporter
|
||||
license: MIT
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
+7
-18
@@ -1,20 +1,9 @@
|
||||
name: g10k
|
||||
release: 1
|
||||
version: 0.9.10
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
github: xorpaul/g10k
|
||||
description: An r10k fork written in Go, designed to work somwhat similar like puppetlabs/r10k.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: xorpaul
|
||||
homepage: https://github.com/xorpaul/g10k
|
||||
license: Apache2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 0.9.10
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 0.9.10
|
||||
|
||||
@@ -1,14 +1,10 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Download and extract g10k
|
||||
wget -O /app/g10k.zip https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/xorpaul/g10k/releases/download/v${PACKAGE_VERSION}/g10k-v${PACKAGE_VERSION}-linux-amd64.zip
|
||||
wget -O /app/g10k.zip https://github.com/xorpaul/g10k/releases/download/v${PACKAGE_VERSION}/g10k-v${PACKAGE_VERSION}-linux-amd64.zip
|
||||
pushd /app
|
||||
unzip /app/g10k.zip
|
||||
popd
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,17 +1,17 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: g10k
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
description: "An r10k fork written in Go, designed to work somwhat similar like puppetlabs/r10k."
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
maintainer: xorpaul
|
||||
homepage: https://github.com/xorpaul/g10k
|
||||
license: Apache2.0
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
name: git-delta
|
||||
github: dandavison/delta
|
||||
description: A syntax-highlighting pager for git, diff, grep, and blame output.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: dandavison
|
||||
homepage: https://github.com/dandavison/delta
|
||||
license: MIT
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.19.2
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.19.2
|
||||
@@ -1,12 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Note: delta releases use plain version tags (no v prefix)
|
||||
wget -O /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/dandavison/delta/releases/download/${PACKAGE_VERSION}/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz
|
||||
tar xf /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz
|
||||
mv /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl/delta /app/delta
|
||||
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,30 +0,0 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
replaces:
|
||||
- git-delta
|
||||
|
||||
provides:
|
||||
- git-delta
|
||||
|
||||
contents:
|
||||
- src: /app/delta
|
||||
dst: /usr/bin/delta
|
||||
file_info:
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
@@ -1,21 +0,0 @@
|
||||
name: hadolint
|
||||
github: hadolint/hadolint
|
||||
description: A smarter Dockerfile linter that helps you build best practice Docker
|
||||
images.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: hadolint
|
||||
homepage: https://github.com/hadolint/hadolint
|
||||
license: GPL-3.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 2.14.0
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 2.14.0
|
||||
@@ -1,10 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
wget -O /app/hadolint https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/hadolint/hadolint/releases/download/v${PACKAGE_VERSION}/hadolint-linux-x86_64
|
||||
chmod +x /app/hadolint
|
||||
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,30 +0,0 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
replaces:
|
||||
- hadolint
|
||||
|
||||
provides:
|
||||
- hadolint
|
||||
|
||||
contents:
|
||||
- src: /app/hadolint
|
||||
dst: /usr/bin/hadolint
|
||||
file_info:
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
@@ -1,20 +0,0 @@
|
||||
name: helm
|
||||
github: helm/helm
|
||||
description: The Kubernetes Package Manager
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Helm Contributors
|
||||
homepage: https://github.com/helm/helm
|
||||
license: Apache-2.0 license
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 4.1.4
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 4.1.4
|
||||
@@ -1,18 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Download the required files
|
||||
curl -L -o /app/helm.tar.gz https://get.helm.sh/helm-v${PACKAGE_VERSION}-linux-amd64.tar.gz
|
||||
|
||||
# Extract the binary
|
||||
cd /app
|
||||
tar -xzf helm.tar.gz
|
||||
|
||||
# Make the binary executable
|
||||
chmod +x /app/linux-amd64/helm
|
||||
|
||||
# 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,39 +0,0 @@
|
||||
---
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
replaces:
|
||||
- helm
|
||||
|
||||
provides:
|
||||
- helm
|
||||
|
||||
# Files to include in the package
|
||||
contents:
|
||||
- src: /app/linux-amd64/helm
|
||||
dst: /usr/bin/helm
|
||||
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
|
||||
@@ -1,22 +1,9 @@
|
||||
name: 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
|
||||
license: MIT
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
release: 1
|
||||
version: 1.1.7
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.4.4
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 1.4.4
|
||||
github: helmfile/helmfile
|
||||
@@ -1,9 +1,7 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Download the required files
|
||||
curl -L -o /app/helmfile.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/helmfile/helmfile/releases/download/v${PACKAGE_VERSION}/helmfile_${PACKAGE_VERSION}_linux_amd64.tar.gz
|
||||
curl -L -o /app/helmfile.tar.gz https://github.com/helmfile/helmfile/releases/download/v${PACKAGE_VERSION}/helmfile_${PACKAGE_VERSION}_linux_amd64.tar.gz
|
||||
|
||||
# Extract the binary
|
||||
cd /app
|
||||
@@ -12,7 +10,5 @@ tar -xzf helmfile.tar.gz
|
||||
# Make the binary executable
|
||||
chmod +x /app/helmfile
|
||||
|
||||
# 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
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,18 +1,17 @@
|
||||
---
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: helmfile
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
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."
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
maintainer: Helmfile Contributors
|
||||
homepage: https://github.com/helmfile/helmfile
|
||||
license: MIT
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
@@ -36,4 +35,4 @@ contents:
|
||||
# preinstall: ./scripts/preinstall.sh
|
||||
# postinstall: ./scripts/postinstall.sh
|
||||
# preremove: ./scripts/preremove.sh
|
||||
# postremove: ./scripts/postremove.sh
|
||||
# postremove: ./scripts/postremove.sh
|
||||
@@ -1,15 +1,9 @@
|
||||
name: incus
|
||||
github: lxc/incus
|
||||
description: Powerful system container and virtual machine manager
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: unkin
|
||||
homepage: https://linuxcontainers.org/incus/
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
release: 1
|
||||
version: 6.10.1
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 6.23.0
|
||||
github: lxc/incus
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Install build dependencies
|
||||
dnf makecache && dnf install -y \
|
||||
dnf install -y \
|
||||
unzip \
|
||||
libtool \
|
||||
autoconf \
|
||||
@@ -26,14 +24,14 @@ dnf makecache && dnf install -y \
|
||||
bash-completion \
|
||||
gettext \
|
||||
help2man \
|
||||
curl-minimal
|
||||
curl
|
||||
|
||||
# Download and extract incus source
|
||||
curl -L -o /app/incus.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/lxc/incus/archive/refs/tags/v${PACKAGE_VERSION}.tar.gz
|
||||
curl -o /app/incus.tar.gz https://github.com/lxc/incus/archive/refs/tags/v${PACKAGE_VERSION}.tar.gz
|
||||
tar -C /app -xf incus.tar.gz
|
||||
|
||||
# Install specific Go version
|
||||
curl -L -O https://go.dev/dl/go1.24.1.linux-amd64.tar.gz
|
||||
curl -O https://go.dev/dl/go1.24.1.linux-amd64.tar.gz
|
||||
rm -rf /usr/local/go
|
||||
tar -C /usr/local -xzf go1.24.1.linux-amd64.tar.gz
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ contents:
|
||||
|
||||
# Scripts to run during installation/removal (optional)
|
||||
scripts:
|
||||
postinstall: ./resources/scripts/postinstall.sh
|
||||
preremove: ./resources/scripts/preremove.sh
|
||||
postremove: ./resources/scripts/postremove.sh
|
||||
preinstall: ./resources/scripts/preinstall.sh
|
||||
postinstall: ./scripts/postinstall.sh
|
||||
preremove: ./scripts/preremove.sh
|
||||
postremove: ./scripts/postremove.sh
|
||||
preinstall: ./scripts/preinstall.sh
|
||||
|
||||
Executable → Regular
@@ -1,20 +1,8 @@
|
||||
name: jellyfin-ffmpeg-bin
|
||||
github: jellyfin/jellyfin-ffmpeg
|
||||
description: FFmpeg binary package optimized for Jellyfin media server
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: unkin
|
||||
homepage: https://github.com/jellyfin/jellyfin-ffmpeg
|
||||
license: GPL-3.0
|
||||
dist_tag: false
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
release: 3
|
||||
version: 7.1.1
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1.1
|
||||
version: 7.1.3
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1.1
|
||||
version: 7.1.3
|
||||
|
||||
@@ -3,15 +3,12 @@
|
||||
# Setup rpmbuild directory structure
|
||||
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
|
||||
spectool -g -R /root/rpmbuild/SPECS/jellyfin-ffmpeg-bin.spec
|
||||
spectool -g -R /app/resources/jellyfin-ffmpeg-bin_${PACKAGE_VERSION}.spec
|
||||
|
||||
# Build the RPM
|
||||
rpmbuild -ba /root/rpmbuild/SPECS/jellyfin-ffmpeg-bin.spec
|
||||
rpmbuild -ba /app/resources/jellyfin-ffmpeg-bin_${PACKAGE_VERSION}.spec
|
||||
|
||||
# Copy the built RPMs to output directory
|
||||
cp /root/rpmbuild/RPMS/x86_64/jellyfin-ffmpeg-bin-*.rpm /app/dist/
|
||||
cp /root/rpmbuild/SRPMS/jellyfin-ffmpeg-bin-*.rpm /app/dist
|
||||
cp /root/rpmbuild/RPMS/x86_64/jellyfin-ffmpeg-bin-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.*.rpm /app/dist/
|
||||
cp /root/rpmbuild/SRPMS/jellyfin-ffmpeg-bin-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.*.rpm /app/dist
|
||||
+8
-8
@@ -1,20 +1,20 @@
|
||||
%global debug_package %{nil}
|
||||
%define _missing_build_ids_terminate_build 0
|
||||
%global jellyfin_release 1
|
||||
%global jellyfin_release 3
|
||||
|
||||
|
||||
Name: ${PACKAGE_NAME}
|
||||
Version: ${PACKAGE_VERSION}
|
||||
Release: ${PACKAGE_RELEASE}
|
||||
Name: jellyfin-ffmpeg-bin
|
||||
Version: 7.1.1
|
||||
Release: %{jellyfin_release}
|
||||
Summary: FFmpeg for Jellyfin with custom extensions and enhancements
|
||||
|
||||
|
||||
License: GPL-3.0-only
|
||||
URL: https://github.com/jellyfin/jellyfin-ffmpeg
|
||||
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${PACKAGE_VERSION}-1/jellyfin-ffmpeg_${PACKAGE_VERSION}-1_portable_linuxarm64-gpl.tar.xz
|
||||
Source2: https://raw.githubusercontent.com/jellyfin/jellyfin-ffmpeg/v${PACKAGE_VERSION}-1/LICENSE.md
|
||||
Source3: https://raw.githubusercontent.com/jellyfin/jellyfin-ffmpeg/v${PACKAGE_VERSION}-1/README.md
|
||||
Source0: https://github.com/jellyfin/jellyfin-ffmpeg/releases/download/v%{version}-%{jellyfin_release}/jellyfin-ffmpeg_%{version}-%{jellyfin_release}_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
|
||||
Source2: https://raw.githubusercontent.com/jellyfin/jellyfin-ffmpeg/v%{version}-%{jellyfin_release}/LICENSE.md
|
||||
Source3: https://raw.githubusercontent.com/jellyfin/jellyfin-ffmpeg/v%{version}-%{jellyfin_release}/README.md
|
||||
|
||||
|
||||
ExclusiveArch: x86_64 aarch64
|
||||
@@ -1,15 +1,8 @@
|
||||
name: jellyfin-server
|
||||
github: unknown/jellyfin-server
|
||||
description: jellyfin-server package
|
||||
dist_tag: false
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 10.10.7
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 10.10.7
|
||||
release: 1
|
||||
version: 10.10.7
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
|
||||
@@ -18,4 +18,4 @@ rpmbuild -ba /app/resources/jellyfin-server_${PACKAGE_VERSION}.spec
|
||||
|
||||
# Copy the built RPMs to output directory
|
||||
cp /root/rpmbuild/RPMS/x86_64/jellyfin-server-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.x86_64.rpm /app/dist/
|
||||
cp /root/rpmbuild/SRPMS/jellyfin-server-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.src.rpm /app/dist/
|
||||
cp /root/rpmbuild/SRPMS/jellyfin-server-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.src.rpm /app/dist/
|
||||
@@ -1,15 +1,8 @@
|
||||
name: jellyfin-web
|
||||
github: unknown/jellyfin-web
|
||||
description: jellyfin-web package
|
||||
dist_tag: false
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 10.10.7
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: '1'
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 10.10.7
|
||||
release: 1
|
||||
version: 10.10.7
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
|
||||
@@ -15,4 +15,4 @@ rpmbuild -ba /app/resources/jellyfin-web_${PACKAGE_VERSION}.spec
|
||||
|
||||
# Copy the built RPMs to output directory
|
||||
cp /root/rpmbuild/RPMS/noarch/jellyfin-web-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.noarch.rpm /app/dist/
|
||||
cp /root/rpmbuild/SRPMS/jellyfin-web-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.src.rpm /app/dist/
|
||||
cp /root/rpmbuild/SRPMS/jellyfin-web-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.src.rpm /app/dist/
|
||||
@@ -1,21 +1,9 @@
|
||||
name: jsonnet-language-server
|
||||
github: grafana/jsonnet-language-server
|
||||
description: Jsonnet Language Server Protocol implementation for the Jsonnet templating
|
||||
language.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Grafana Labs
|
||||
homepage: https://github.com/grafana/jsonnet-language-server
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 0.17.0
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 0.17.0
|
||||
release: 1
|
||||
version: 0.16.0
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
github: grafana/jsonnet-language-server
|
||||
@@ -1,14 +1,10 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Download the required files
|
||||
curl -L -o /app/jsonnet-language-server https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/grafana/jsonnet-language-server/releases/download/v${PACKAGE_VERSION}/jsonnet-language-server_${PACKAGE_VERSION}_linux_amd64
|
||||
curl -L -o /app/jsonnet-language-server https://github.com/grafana/jsonnet-language-server/releases/download/v${PACKAGE_VERSION}/jsonnet-language-server_${PACKAGE_VERSION}_linux_amd64
|
||||
|
||||
# Make the binary executable
|
||||
chmod +x /app/jsonnet-language-server
|
||||
|
||||
# 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
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,18 +1,17 @@
|
||||
---
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: jsonnet-language-server
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
description: "Jsonnet Language Server Protocol implementation for the Jsonnet templating language."
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
maintainer: Grafana Labs
|
||||
homepage: https://github.com/grafana/jsonnet-language-server
|
||||
license: Apache-2.0
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
@@ -36,4 +35,4 @@ contents:
|
||||
# preinstall: ./scripts/preinstall.sh
|
||||
# postinstall: ./scripts/postinstall.sh
|
||||
# preremove: ./scripts/preremove.sh
|
||||
# postremove: ./scripts/postremove.sh
|
||||
# postremove: ./scripts/postremove.sh
|
||||
@@ -1,20 +1,9 @@
|
||||
name: jsonnet-lint
|
||||
github: google/go-jsonnet
|
||||
description: Linter for Jsonnet
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Google
|
||||
homepage: https://github.com/google/go-jsonnet
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 0.22.0
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 0.22.0
|
||||
release: 1
|
||||
version: 0.21.0
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
github: google/go-jsonnet
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Install dependencies and Go 1.24
|
||||
dnf install -y wget git make
|
||||
@@ -16,8 +15,5 @@ go version
|
||||
# Build jsonnet-lint binary
|
||||
GOBIN=/app go install github.com/google/go-jsonnet/cmd/jsonnet-lint@v${PACKAGE_VERSION}
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build RPM package
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,17 +1,16 @@
|
||||
---
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: jsonnet-lint
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
description: "Linter for Jsonnet"
|
||||
maintainer: Google
|
||||
homepage: https://github.com/google/go-jsonnet
|
||||
license: Apache-2.0
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
@@ -28,4 +27,4 @@ contents:
|
||||
file_info:
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
group: root
|
||||
@@ -1,20 +1,9 @@
|
||||
name: jsonnet
|
||||
github: google/go-jsonnet
|
||||
description: A data templating language
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Google
|
||||
homepage: https://github.com/google/go-jsonnet
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
repository:
|
||||
- almalinux/el8
|
||||
version: 0.22.0
|
||||
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
repository:
|
||||
- almalinux/el9
|
||||
version: 0.22.0
|
||||
release: 1
|
||||
version: 0.21.0
|
||||
build:
|
||||
- distro: el/8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
- distro: el/9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
github: google/go-jsonnet
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Install dependencies and Go 1.24
|
||||
dnf install -y wget git make
|
||||
@@ -17,8 +16,5 @@ go version
|
||||
GOBIN=/app go install github.com/google/go-jsonnet/cmd/jsonnet@v${PACKAGE_VERSION}
|
||||
GOBIN=/app go install github.com/google/go-jsonnet/cmd/jsonnetfmt@v${PACKAGE_VERSION}
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build RPM package
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
nfpm pkg --config /app/resources/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,17 +1,16 @@
|
||||
---
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
name: jsonnet
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
arch: amd64
|
||||
platform: linux
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
description: "A data templating language"
|
||||
maintainer: Google
|
||||
homepage: https://github.com/google/go-jsonnet
|
||||
license: Apache-2.0
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
@@ -34,4 +33,4 @@ contents:
|
||||
file_info:
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
group: root
|
||||
@@ -1,20 +0,0 @@
|
||||
name: kubecolor
|
||||
github: kubecolor/kubecolor
|
||||
description: Colorize your kubectl output
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: kubecolor
|
||||
homepage: https://github.com/kubecolor/kubecolor
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.6.0
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.6.0
|
||||
@@ -1,10 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
wget -O /app/kubecolor_${PACKAGE_VERSION}_linux_amd64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/kubecolor/kubecolor/releases/download/v${PACKAGE_VERSION}/kubecolor_${PACKAGE_VERSION}_linux_amd64.tar.gz
|
||||
tar xf /app/kubecolor_${PACKAGE_VERSION}_linux_amd64.tar.gz -C /app/ kubecolor
|
||||
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,30 +0,0 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
replaces:
|
||||
- kubecolor
|
||||
|
||||
provides:
|
||||
- kubecolor
|
||||
|
||||
contents:
|
||||
- src: /app/kubecolor
|
||||
dst: /usr/bin/kubecolor
|
||||
file_info:
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
@@ -1,20 +0,0 @@
|
||||
name: kubeconform
|
||||
github: yannh/kubeconform
|
||||
description: A FAST Kubernetes manifests validator, with support for Custom Resources!
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: Yann Hamon
|
||||
homepage: https://github.com/yannh/kubeconform
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.7.0
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.7.0
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Download kubeconform binary
|
||||
wget -O /app/kubeconform-linux-amd64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/yannh/kubeconform/releases/download/v${PACKAGE_VERSION}/kubeconform-linux-amd64.tar.gz
|
||||
|
||||
# Extract the binary
|
||||
tar -xzf /app/kubeconform-linux-amd64.tar.gz -C /app/
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,39 +0,0 @@
|
||||
---
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
replaces:
|
||||
- kubeconform
|
||||
|
||||
provides:
|
||||
- kubeconform
|
||||
|
||||
# Files to include in the package
|
||||
contents:
|
||||
- src: /app/kubeconform
|
||||
dst: /usr/bin/kubeconform
|
||||
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
|
||||
@@ -1,20 +0,0 @@
|
||||
name: kubectx
|
||||
github: ahmetb/kubectx
|
||||
description: Faster way to switch between clusters and namespaces in kubectl.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: ahmetb
|
||||
homepage: https://github.com/ahmetb/kubectx
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.11.0
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.11.0
|
||||
@@ -1,13 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
wget -O /app/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/ahmetb/kubectx/releases/download/v${PACKAGE_VERSION}/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz
|
||||
wget -O /app/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/ahmetb/kubectx/releases/download/v${PACKAGE_VERSION}/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz
|
||||
|
||||
tar xf /app/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz -C /app/ kubectx
|
||||
tar xf /app/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz -C /app/ kubens
|
||||
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,38 +0,0 @@
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
replaces:
|
||||
- kubectx
|
||||
- kubens
|
||||
|
||||
provides:
|
||||
- kubectx
|
||||
- kubens
|
||||
|
||||
contents:
|
||||
- src: /app/kubectx
|
||||
dst: /usr/bin/kubectx
|
||||
file_info:
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
- src: /app/kubens
|
||||
dst: /usr/bin/kubens
|
||||
file_info:
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
@@ -1,21 +0,0 @@
|
||||
name: kustomize
|
||||
github: kubernetes-sigs/kustomize
|
||||
description: Kubernetes native configuration management
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: kubernetes-sigs
|
||||
homepage: https://github.com/kubernetes-sigs/kustomize
|
||||
license: Apache-2.0
|
||||
dist_tag: true
|
||||
github_release_pattern: ^kustomize/v.*
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: '1'
|
||||
version: 5.8.1
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: '1'
|
||||
version: 5.8.1
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
|
||||
# Download kustomize binary
|
||||
wget -O /app/kustomize_v${PACKAGE_VERSION}_linux_amd64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/kubernetes-sigs/kustomize/releases/download/kustomize%2Fv${PACKAGE_VERSION}/kustomize_v${PACKAGE_VERSION}_linux_amd64.tar.gz
|
||||
|
||||
# Extract the binary
|
||||
tar -xzf /app/kustomize_v${PACKAGE_VERSION}_linux_amd64.tar.gz -C /app/
|
||||
|
||||
# Process nfpm.yaml with envsubst
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
# Build the RPM
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
@@ -1,39 +0,0 @@
|
||||
---
|
||||
# nfpm.yaml
|
||||
|
||||
name: ${PACKAGE_NAME}
|
||||
version: ${PACKAGE_VERSION}
|
||||
release: ${PACKAGE_RELEASE}
|
||||
arch: ${PACKAGE_ARCH}
|
||||
platform: ${PACKAGE_PLATFORM}
|
||||
section: default
|
||||
priority: extra
|
||||
description: "${PACKAGE_DESCRIPTION}"
|
||||
|
||||
maintainer: ${PACKAGE_MAINTAINER}
|
||||
homepage: ${PACKAGE_HOMEPAGE}
|
||||
license: ${PACKAGE_LICENSE}
|
||||
|
||||
disable_globbing: false
|
||||
|
||||
replaces:
|
||||
- kustomize
|
||||
|
||||
provides:
|
||||
- kustomize
|
||||
|
||||
# Files to include in the package
|
||||
contents:
|
||||
- src: /app/kustomize
|
||||
dst: /usr/bin/kustomize
|
||||
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
|
||||
@@ -1,20 +0,0 @@
|
||||
name: lazydocker
|
||||
github: jesseduffield/lazydocker
|
||||
description: The lazier way to manage everything docker.
|
||||
arch: amd64
|
||||
platform: linux
|
||||
maintainer: jesseduffield
|
||||
homepage: https://github.com/jesseduffield/lazydocker
|
||||
license: MIT
|
||||
dist_tag: true
|
||||
builds:
|
||||
- repository:
|
||||
- almalinux/el8
|
||||
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.25.2
|
||||
- repository:
|
||||
- almalinux/el9
|
||||
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
|
||||
release: 1
|
||||
version: 0.25.2
|
||||
@@ -1,10 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
wget -O /app/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/jesseduffield/lazydocker/releases/download/v${PACKAGE_VERSION}/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz
|
||||
tar xf /app/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz -C /app/ lazydocker
|
||||
|
||||
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
|
||||
|
||||
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user