diff --git a/rpms/kubectl-tree/metadata.yaml b/rpms/kubectl-tree/metadata.yaml new file mode 100644 index 0000000..0c0eaaf --- /dev/null +++ b/rpms/kubectl-tree/metadata.yaml @@ -0,0 +1,22 @@ +name: kubectl-tree +github: ahmetb/kubectl-tree +description: kubectl plugin to browse Kubernetes object hierarchies as a tree. +arch: amd64 +platform: linux +maintainer: Ahmet Alp Balkan +homepage: https://github.com/ahmetb/kubectl-tree +license: Apache-2.0 +dist_tag: true +builds: +- repository: + - almalinux/el9 + image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest + release: 1 + version: 0.6.0 +- repository: + - fedora/42 + - fedora/43 + - fedora/44 + image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest + release: 1 + version: 0.6.0 diff --git a/rpms/kubectl-tree/resources/build.sh b/rpms/kubectl-tree/resources/build.sh new file mode 100755 index 0000000..ef21075 --- /dev/null +++ b/rpms/kubectl-tree/resources/build.sh @@ -0,0 +1,17 @@ +#!/usr/bin/bash + +set -e + +BASE_URL="https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/ahmetb/kubectl-tree/releases/download/v${PACKAGE_VERSION}" +TARBALL="kubectl-tree_v${PACKAGE_VERSION}_linux_amd64.tar.gz" + +wget -O "/app/${TARBALL}" "${BASE_URL}/${TARBALL}" +wget -O /app/checksums.txt "${BASE_URL}/kubectl-tree_${PACKAGE_VERSION}_checksums.txt" + +cd /app +grep " ${TARBALL}$" checksums.txt | sha256sum --check --strict - +tar xf "/app/${TARBALL}" -C /app/ kubectl-tree + +envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml + +nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm diff --git a/rpms/kubectl-tree/resources/kubectl_complete-tree b/rpms/kubectl-tree/resources/kubectl_complete-tree new file mode 100755 index 0000000..7ed8460 --- /dev/null +++ b/rpms/kubectl-tree/resources/kubectl_complete-tree @@ -0,0 +1,7 @@ +#!/usr/bin/env sh +# kubectl-tree only completes flags; its KIND NAME args match kubectl get +for arg in "$@"; do last=$arg; done +case "$last" in + -*) exec kubectl tree __complete "$@" ;; + *) exec kubectl __complete get "$@" ;; +esac diff --git a/rpms/kubectl-tree/resources/nfpm.yaml b/rpms/kubectl-tree/resources/nfpm.yaml new file mode 100644 index 0000000..76e7d60 --- /dev/null +++ b/rpms/kubectl-tree/resources/nfpm.yaml @@ -0,0 +1,36 @@ +# 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: + - kubectl-tree + +provides: + - kubectl-tree + +contents: + - src: /app/kubectl-tree + dst: /usr/bin/kubectl-tree + file_info: + mode: 0755 + owner: root + group: root + - src: /app/resources/kubectl_complete-tree + dst: /usr/bin/kubectl_complete-tree + file_info: + mode: 0755 + owner: root + group: root