All Projects → abrochard → Kubel

abrochard / Kubel

Licence: gpl-3.0
Emacs extension for controlling Kubernetes with limited permissions

Projects that are alternatives of or similar to Kubel

Linum Relative
display relative line number in the left margin in emacs
Stars: ✭ 152 (-8.43%)
Mutual labels:  emacs
Evil Goggles
Display visual hint on evil edit operations
Stars: ✭ 159 (-4.22%)
Mutual labels:  emacs
Shx For Emacs
An Emacs shell-mode (and comint-mode) extension that enables displaying small plots and graphics and lets users write shell commands in Emacs Lisp.
Stars: ✭ 162 (-2.41%)
Mutual labels:  emacs
Org Msg
OrgMsg is a GNU/Emacs global minor mode mixing up Org mode and Message mode to compose and reply to emails in a Outlook HTML friendly style.
Stars: ✭ 153 (-7.83%)
Mutual labels:  emacs
String Inflection
underscore -> UPCASE -> CamelCase conversion of names
Stars: ✭ 157 (-5.42%)
Mutual labels:  emacs
Org Mode
This is a MIRROR only, do not send PR.
Stars: ✭ 158 (-4.82%)
Mutual labels:  emacs
Emacs4cl
A 40 line ~/.emacs to quickly set up vanilla Emacs for Common Lisp programming
Stars: ✭ 151 (-9.04%)
Mutual labels:  emacs
Emacs Vdiff
Like vimdiff for Emacs
Stars: ✭ 165 (-0.6%)
Mutual labels:  emacs
Explain Pause Mode
top, but for Emacs.
Stars: ✭ 158 (-4.82%)
Mutual labels:  emacs
Lpy
Minimal Python IDE for GNU Emacs
Stars: ✭ 161 (-3.01%)
Mutual labels:  emacs
Consult
consult.el - Consulting completing-read
Stars: ✭ 153 (-7.83%)
Mutual labels:  emacs
Ac Php
emacs auto-complete & company-mode for php
Stars: ✭ 157 (-5.42%)
Mutual labels:  emacs
Typescript.el
TypeScript-support for Emacs
Stars: ✭ 160 (-3.61%)
Mutual labels:  emacs
Discover.el
Discover more of emacs with context menus!
Stars: ✭ 153 (-7.83%)
Mutual labels:  emacs
Emacs Flymake
Continuous syntax checking for Emacs. Fork to add max parallel invocations and other bug fixes.
Stars: ✭ 162 (-2.41%)
Mutual labels:  emacs
Lunarymacs
Moon-based Emacs configuration.
Stars: ✭ 151 (-9.04%)
Mutual labels:  emacs
Modern Cpp Font Lock
C++ font-lock for Emacs
Stars: ✭ 159 (-4.22%)
Mutual labels:  emacs
Org Pdftools
A custom org link type for pdf-tools
Stars: ✭ 165 (-0.6%)
Mutual labels:  emacs
Nodejs Repl.el
Run Node.js REPL and communicate with the process
Stars: ✭ 163 (-1.81%)
Mutual labels:  emacs
Evil
The extensible vi layer for Emacs.
Stars: ✭ 2,265 (+1264.46%)
Mutual labels:  emacs

MELPA abrochard

kubel

Emacs extension for controlling Kubernetes with limited permissions.

screenshot

You can watch how kubel started or read about it.

Features

We now support managing pretty much any resource!

  • switch context and namespace
  • show any resource (pods/services/deployments/etc)
  • highlight a resource by name
  • copy resource name to clipboard
  • show and edit resource details
  • show rollout history for a resource
  • delete a resource
  • tail container logs (possibly with -f follow flag)
  • copy container log command to clipboard
  • port forward a pod to your localhost
  • exec into a pod using tramp

Installation

Get it from Melpa, or copy and load the kubel.el file.

If you want to have the evil compatibility package, get it from Melpa as well or load the kubel-evil.el file.

Usage

To list the pods in your current context and namespace, call

M-x kubel

To set said namespace and context, respectively call

M-x kubel-set-namespace
M-x kubel-set-context

Note that context will autocomplete but not necessarily namespaces depending on your permissions and cluster setup. See the customize section on how to tune kubel-use-namespace-list.

To switch to showing a different resource, use the R command or

M-x kubel-set-resource

This will let you select a resource and re-display the kubel buffer.

Shortcuts

On the kubel screen, place your cursor on a resource

enter => get resource details
h => help popup
? => help popup
E => quick edit any resource
g => refresh
k => delete popup
r => see the rollout history for resource
p => port forward pod
l => log popup
e => exec popup
j => jab deployment to force rolling update
C => set context
n => set namespace
R => set resource
K => set kubectl config file
F => set output format
f => set a substring filter for resource name
M-n => jump to the next highlighted resource
M-p => jump to previous highlighted resource
m => mark item
u => unmark item
M => mark all items
U => unmark all items
c => copy popup
$ => show process buffer
s => show only resources with specified label value

Editing a resource

After describing a resource in YAML format, you can edit the buffer and hit C-c C-c to apply your changes.

For example, if you want to edit a deployment, you can switch the resource with R and select "Deployments", then press return with the cursor on the row you wish to edit, edit the buffer, and hit C-c C-c to apply.

Alternatively, you can hit E to then select the resource type and the resource name of what you want to edit.

Customize

  • By default, kubel log tails from the last 100 lines, you can change the kubel-log-tail-n variable to set another line number.
  • If you need to switch or set your kubectl config file by setting your KUBECONFIG environment variable, you can use the wrapper function kubel-set-kubectl-config-file or the K shortcut.
  • Namespace listing for auto-completion is controlled by kubel-use-namespace-list:
    • auto - default, use kubectl auth can-i list namespace to determine if we can list namespaces
    • on - always assume we can list namespaces
    • off - always assume we cannot list namespaces

Releases

See the CHANGELOG.md for the list of changes and maybe upcoming features.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].