From 2930e2ea92679e93d8f29163db559b03248c31b2 Mon Sep 17 00:00:00 2001
From: Patrick Spek
Date: Tue, 22 Feb 2022 14:34:34 +0100
Subject: Add kubectl-shell
---
.local/bin/kubectl-shell | 52 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
create mode 100755 .local/bin/kubectl-shell
(limited to '.local')
diff --git a/.local/bin/kubectl-shell b/.local/bin/kubectl-shell
new file mode 100755
index 0000000..2e1c2c8
--- /dev/null
+++ b/.local/bin/kubectl-shell
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# This program is free software: you can redistribute it and/or modify it under
+# the terms of the GNU Affero General Public License as published by the Free
+# Software Foundation, either version 3 of the License, or (at your option) any
+# later version.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+# FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
+# details.
+
+main()
+{
+ # Handle opts
+ while getopts ":h" opt
+ do
+ case "$opt" in
+ h) usage && exit 0 ;;
+ *)
+ printf "Invalid option passed: %s\n" "$OPTARG" >&2
+ ;;
+ esac
+ done
+
+ shift $(( OPTIND - 1 ))
+
+ kubectl run "shell-$(uuidgen)" \
+ --image alpine:latest \
+ --restart=Never \
+ --rm \
+ --stdin \
+ --tty \
+ "$@" \
+ -- /bin/sh
+}
+
+usage()
+{
+ cat <