- Migrate from legacy shell-based build system to modern Python tooling - Update all metadata.yaml files to new schema with per-distro builds - Standardise build scripts with curl -L, envsubst, and error handling - Convert nfpm.yaml templates to use environment variable substitution - Update Dockerfile to accept all package metadata as build arguments - Modernise Makefile to use new Python build tool commands - Update CI workflow to use tools/build instead of make
138 lines
2.7 KiB
YAML
138 lines
2.7 KiB
YAML
# 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:
|
|
- cni-plugins
|
|
|
|
# Files to include in the package
|
|
contents:
|
|
- src: /app/bandwidth
|
|
dst: /opt/cni/bin/bandwidth
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/bridge
|
|
dst: /opt/cni/bin/bridge
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/dhcp
|
|
dst: /opt/cni/bin/dhcp
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/dummy
|
|
dst: /opt/cni/bin/dummy
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/firewall
|
|
dst: /opt/cni/bin/firewall
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/host-device
|
|
dst: /opt/cni/bin/host-device
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/host-local
|
|
dst: /opt/cni/bin/host-local
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/ipvlan
|
|
dst: /opt/cni/bin/ipvlan
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/loopback
|
|
dst: /opt/cni/bin/loopback
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/macvlan
|
|
dst: /opt/cni/bin/macvlan
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/portmap
|
|
dst: /opt/cni/bin/portmap
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/ptp
|
|
dst: /opt/cni/bin/ptp
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/sbr
|
|
dst: /opt/cni/bin/sbr
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/static
|
|
dst: /opt/cni/bin/static
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/tap
|
|
dst: /opt/cni/bin/tap
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/tuning
|
|
dst: /opt/cni/bin/tuning
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/vlan
|
|
dst: /opt/cni/bin/vlan
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
- src: /app/vrf
|
|
dst: /opt/cni/bin/vrf
|
|
file_info:
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
|
|
# Scripts to run during installation/removal (optional)
|
|
scripts:
|
|
preinstall: /app/resources/scripts/preinstall.sh
|
|
# postinstall: ./scripts/postinstall.sh
|
|
# preremove: ./scripts/preremove.sh
|
|
# postremove: ./scripts/postremove.sh
|