diff --git a/rpms/kubectx/metadata.yaml b/rpms/kubectx/metadata.yaml new file mode 100644 index 0000000..2fa95b6 --- /dev/null +++ b/rpms/kubectx/metadata.yaml @@ -0,0 +1,20 @@ +--- +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 +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 diff --git a/rpms/kubectx/resources/build.sh b/rpms/kubectx/resources/build.sh new file mode 100755 index 0000000..2592cd6 --- /dev/null +++ b/rpms/kubectx/resources/build.sh @@ -0,0 +1,13 @@ +#!/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 diff --git a/rpms/kubectx/resources/nfpm.yaml b/rpms/kubectx/resources/nfpm.yaml new file mode 100644 index 0000000..e5dc0bd --- /dev/null +++ b/rpms/kubectx/resources/nfpm.yaml @@ -0,0 +1,38 @@ +# 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