개요
k8s로 관리하는 pod이 100여개가 넘어감에 따라 fzf와 연동이 절실해져 찾아보니 kubectl-fzf라는 프로젝트가 존재 하여 설치해보았다.
할수있는것
백문이 불여일견이다.
전재사항
아래 패키지는 설치되어 있어야 한다.
- go
- fzf
- mac의 경우 bash-completion
cache builder 설치
클러스터의 인스턴스 변화를 watch한다.
# Mac
FILE="kubectl-fzf_darwin_amd64.tar.gz"
# Linux
FILE="kubectl-fzf_linux_amd64.tar.gz"
cd /tmp
wget "https://github.com/bonnefoa/kubectl-fzf/releases/latest/download/$FILE"
tar -xf $FILE
install cache_builder ~/local/bin/cache_builder
쉘 설치
wget https://raw.githubusercontent.com/bonnefoa/kubectl-fzf/master/kubectl_fzf.sh -O ~/.kubectl_fzf.sh
kubectl completion bash >> ~/.kube_bash.sh
echo "source ~/.kube_bash.sh" >> ~/.bashrc
echo "source ~/.kubectl_fzf.sh" >> ~/.bashrc
kubectl_fzf.sh 수정
위와 같이했을때 동작하지 않아서 코드를 살펴본 뒤 아래와 같이 수정하였다. 완전일치 대신 fuzzy search를 하기 위해 옵션을 바꾸며 더불어 현재 동작을 하지 않아서 코드 를 아래와 같이 수정하였다.
KUBECTL_FZF_OPTIONS=(-1 --header-lines=2 --layout reverse)
_fzf_file_mtime_older_than()
{
return 1
}