From f24eff740739bc33279a2d6ff3fb9cefeaefce19 Mon Sep 17 00:00:00 2001 From: Zachary Loeber Date: Thu, 28 Nov 2019 02:09:21 -0600 Subject: [PATCH] feature: kubectl plugin manager (krew) app (#286) --- .github/auto-label.yml | 1 + README.md | 1 + docs/targets.md | 1 + vendor/krew/DESCRIPTION | 1 + vendor/krew/LICENSE | 1 + vendor/krew/Makefile | 33 +++++++++++++++++++++++++++++++++ vendor/krew/RELEASE | 1 + vendor/krew/VERSION | 1 + 8 files changed, 40 insertions(+) create mode 100644 vendor/krew/DESCRIPTION create mode 100644 vendor/krew/LICENSE create mode 100644 vendor/krew/Makefile create mode 100644 vendor/krew/RELEASE create mode 100644 vendor/krew/VERSION diff --git a/.github/auto-label.yml b/.github/auto-label.yml index 084861afdf..4af17e3542 100644 --- a/.github/auto-label.yml +++ b/.github/auto-label.yml @@ -54,6 +54,7 @@ vendor/kfctl: vendor/kfctl/** vendor/kind: vendor/kind/** vendor/kops-1.12: vendor/kops-1.12/** vendor/kops: vendor/kops/** +vendor/krew: vendor/krew/** vendor/kubecron: vendor/kubecron/** vendor/kubectl-1.13: vendor/kubectl-1.13/** vendor/kubectl-1.14: vendor/kubectl-1.14/** diff --git a/README.md b/README.md index fa46df083b..ca87bd1a2f 100644 --- a/README.md +++ b/README.md @@ -274,6 +274,7 @@ kfctl 0.7.0 Machine Learning Toolkit for Kubernetes kind 0.6.0 A tool for running local Kubernetes clusters using Docker kops 1.15.0 Kubernetes Operations (kops) - Production Grade K8s Installation, Upgrades, and Management kops-1.12 1.12.3 Kubernetes Operations (kops) - Production Grade K8s Installation, Upgrades, and Management +krew 0.3.2 Kubectl plugin manager kubecron 1.0.2 Utilities to manage kubernetes cronjobs. Run a CronJob manually for test purposes. Suspend/unsuspend a CronJob kubectl 1.14.9 Production-Grade Container Scheduling and Management kubectl-1.13 1.13.11 Production-Grade Container Scheduling and Management diff --git a/docs/targets.md b/docs/targets.md index 170e1f845a..c186f125c7 100644 --- a/docs/targets.md +++ b/docs/targets.md @@ -38,6 +38,7 @@ kfctl 0.7.0 Machine Learning Toolkit for Kubernetes kind 0.6.0 A tool for running local Kubernetes clusters using Docker kops 1.15.0 Kubernetes Operations (kops) - Production Grade K8s Installation, Upgrades, and Management kops-1.12 1.12.3 Kubernetes Operations (kops) - Production Grade K8s Installation, Upgrades, and Management +krew 0.3.2 Kubectl plugin manager kubecron 1.0.2 Utilities to manage kubernetes cronjobs. Run a CronJob manually for test purposes. Suspend/unsuspend a CronJob kubectl 1.14.9 Production-Grade Container Scheduling and Management kubectl-1.13 1.13.11 Production-Grade Container Scheduling and Management diff --git a/vendor/krew/DESCRIPTION b/vendor/krew/DESCRIPTION new file mode 100644 index 0000000000..1d3425b93c --- /dev/null +++ b/vendor/krew/DESCRIPTION @@ -0,0 +1 @@ +Kubectl plugin manager diff --git a/vendor/krew/LICENSE b/vendor/krew/LICENSE new file mode 100644 index 0000000000..7a85ddd4e2 --- /dev/null +++ b/vendor/krew/LICENSE @@ -0,0 +1 @@ +APACHE-2.0 diff --git a/vendor/krew/Makefile b/vendor/krew/Makefile new file mode 100644 index 0000000000..3bf57374fd --- /dev/null +++ b/vendor/krew/Makefile @@ -0,0 +1,33 @@ +## Package template for non-github tarball + +## Package details +export VENDOR = kubernetes-sigs +export PACKAGE_NAME = krew +export PACKAGE_REPO_NAME = krew +export DOWNLOAD_URL = $(PACKAGE_REPO_URL)/releases/download/v$(PACKAGE_VERSION)/krew.tar.gz + +## APK build specific requirements +export APK_BUILD_TEMPLATE = APKBUILD.github-binary +## Uncomment only if you need additional libraries +#export APKBUILD_DEPENDS += libc6-compat musl + +include ../../tasks/Makefile.package +include ../../tasks/Makefile.apk + +## Package specific install code +install: + set -x; mkdir -p $(TMP)/krew && cd $(TMP)/krew && \ + export KREW_ROOT=$(INSTALL_PATH) && \ + curl -fsSLO "https://github.com/kubernetes-sigs/krew/releases/download/v$(PACKAGE_VERSION)/krew.{tar.gz,yaml}" && \ + tar zxvf krew.tar.gz && \ + ./krew-$(OS)_$(ARCH) install --manifest=krew.yaml --archive=krew.tar.gz && \ + mv ./krew-$(OS)_$(ARCH) $(INSTALL_PATH)/krew + +## Always include a test, this is custom per deployment and typically is just a version check +test: + krew version + +# Custom post-package processing (Note the double colon to append to current inherited package/prepare task) +## This may be required for apk building +package/prepare:: + mv src/krew-$(OS)_$(ARCH) src/krew diff --git a/vendor/krew/RELEASE b/vendor/krew/RELEASE new file mode 100644 index 0000000000..573541ac97 --- /dev/null +++ b/vendor/krew/RELEASE @@ -0,0 +1 @@ +0 diff --git a/vendor/krew/VERSION b/vendor/krew/VERSION new file mode 100644 index 0000000000..9fc80f937f --- /dev/null +++ b/vendor/krew/VERSION @@ -0,0 +1 @@ +0.3.2 \ No newline at end of file