Tool for managing kubernetes cluster resources. Inspired by lf and ranger file managers
Go to file
Digital Studium 8251b99614 Add batcat installation step 2024-12-03 10:48:01 +03:00
images Change image 2024-04-19 09:15:13 +03:00
.gitignore Add unit tests 2024-05-04 13:15:37 +03:00
LICENSE Add license 2024-04-07 22:56:19 +03:00
README.md Add batcat installation step 2024-12-03 10:48:01 +03:00
kls Disable mouse by default 2024-10-30 14:32:23 +03:00
tests.py Beautify code a bit 2024-05-10 19:34:02 +03:00

README.md

KLS

Description

kls is a cli tool based on kubectl for managing kubernetes cluster resources. Inspired by lf and ranger file managers, written in python.

It is lightweight (~250 lines of code) and easy to customize. Supports mouse navigation as well as keyboard navigation.

Key bindings

For kubectl

You can customize these bindings or add extra bindings in KEY_BINDINGS variable of kls in a row #5:

  • 1 or Enter - get yaml of resource
  • 2 - describe resource
  • 3 - edit resource
  • 4 - logs of pod
  • 5 - exec to pod
  • 6 - network debug of pod (with nicolaka/netshoot container attached)
  • delete - delete resource

Other:

  • letters - enter filter mode and apply filter
  • Escape - exit filter mode or kls itself
  • Backspace - remove letter from filter
  • TAB, arrow keys, PgUp, PgDn, Home, End - navigation

kls in action

Dependencies

  • python3
  • kubectl
  • bat

Installation

Install batcat:

sudo apt install bat -y

Download and install the latest kls:

curl -O "https://git.digitalstudium.com/digitalstudium/kls/raw/branch/main/kls" && sudo install ./kls /usr/local/bin/ && rm -f ./kls