Skip to content

Commit de786a1

Browse files
author
Ian Laird
committed
Added find deploy and taildeploy
1 parent 754f595 commit de786a1

File tree

4 files changed

+90
-0
lines changed

4 files changed

+90
-0
lines changed

findeploy

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
#!/usr/bin/env bash
2+
3+
set -e
4+
set -o pipefail
5+
6+
[[ -z "${KUBE_FZF_PATH}" ]] && source kube-fzf.sh || source $KUBE_FZF_PATH
7+
8+
findeploy() {
9+
local namespace_query deploy_query result namespace deploy_name
10+
11+
_kube_fzf_handler "findeploy" "$@"
12+
namespace_query=$(echo $args | awk -F '|' '{ print $1 }')
13+
deploy_query=$(echo $args | awk -F '|' '{ print $2 }')
14+
15+
result=$(_kube_fzf_search_deploy "$namespace_query" "$deploy_query")
16+
IFS=$'|' read -r namespace deploy_name <<< "$result"
17+
18+
_kube_fzf_echo "kubectl get deployment --namespace='$namespace' --output=wide $deploy_name"
19+
kubectl get deployment --namespace=$namespace $deploy_name
20+
}
21+
22+
findeploy "$@"

install

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/bin/bash
2+
3+
4+
for i in findpod execpod tailpod describepod pfpod findeploy taildeploy kube-fzf.sh
5+
do
6+
ln -s $PWD/$i $HOME/.local/bin/$i
7+
#unlink $HOME/.local/bin/$i
8+
done

kube-fzf.sh

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,42 @@ _kube_fzf_search_pod() {
174174
echo "$namespace|$pod_name"
175175
}
176176

177+
_kube_fzf_search_deploy() {
178+
local namespace deploy_name
179+
local namespace_query=$1
180+
local deploy_query=$2
181+
local deploy_fzf_args=$(_kube_fzf_fzf_args "$deploy_query")
182+
183+
if [ -z "$namespace_query" ]; then
184+
context=$(kubectl config current-context)
185+
namespace=$(kubectl config get-contexts --no-headers $context \
186+
| awk '{ print $5 }')
187+
188+
namespace=${namespace:=default}
189+
deploy_name=$(kubectl get deployment --namespace=$namespace --no-headers \
190+
| fzf $(echo $deploy_fzf_args) \
191+
| awk '{ print $1 }')
192+
elif [ "$namespace_query" = "--all-namespaces" ]; then
193+
read namespace deploy_name <<< $(kubectl get deployment --all-namespaces --no-headers \
194+
| fzf $(echo $deploy_fzf_args) \
195+
| awk '{ print $1, $2 }')
196+
else
197+
local namespace_fzf_args=$(_kube_fzf_fzf_args "$namespace_query" "--select-1")
198+
namespace=$(kubectl get namespaces --no-headers \
199+
| fzf $(echo $namespace_fzf_args) \
200+
| awk '{ print $1 }')
201+
202+
namespace=${namespace:=default}
203+
deploy_name=$(kubectl get deployment --namespace=$namespace --no-headers \
204+
| fzf $(echo $deploy_fzf_args) \
205+
| awk '{ print $1 }')
206+
fi
207+
208+
[ -z "$deploy_name" ] && return 1
209+
210+
echo "$namespace|$deploy_name"
211+
}
212+
177213
_kube_fzf_echo() {
178214
local reset_color="\033[0m"
179215
local bold_green="\033[1;32m"

taildeploy

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#!/usr/bin/env bash
2+
3+
set -e
4+
set -o pipefail
5+
6+
[[ -z "${KUBE_FZF_PATH}" ]] && source kube-fzf.sh || source $KUBE_FZF_PATH
7+
8+
taildeploy() {
9+
local namespace_query deploy_query result namespace deploy_name
10+
11+
_kube_fzf_handler "taildeploy" "$@"
12+
namespace_query=$(echo $args | awk -F '|' '{ print $1 }')
13+
deploy_query=$(echo $args | awk -F '|' '{ print $2 }')
14+
15+
result=$(_kube_fzf_search_deploy "$namespace_query" "$deploy_query")
16+
IFS=$'|' read -r namespace deploy_name <<< "$result"
17+
18+
local fzf_args=$(_kube_fzf_fzf_args "" "--select-1")
19+
20+
_kube_fzf_echo "kubectl logs --namespace='$namespace' --follow deployment/$deploy_name"
21+
kubectl logs --namespace=$namespace --follow deployment/$deploy_name
22+
}
23+
24+
taildeploy "$@"

0 commit comments

Comments
 (0)