ketall

package module
v1.1.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 24, 2024 License: Apache-2.0 Imports: 8 Imported by: 1

README

ketall

Build Status Go Report Card LICENSE Releases

Kubectl plugin to show really all kubernetes resources

Ketall fork removing all the cli utilities and print options; Just maintaining the single function with all the options;

Intro

For a complete overview of all resources in a kubernetes cluster, kubectl get all --all-namespaces is not enough, because it simply does not show everything. This helper lists really all resources the cluster has to offer.

Demo

ketall demo

Examples

Get all resources...

  • ... excluding events (this is hardly ever useful)

    ketall
    
  • ... including events

    ketall --exclude=
    
  • ... created in the last minute

    ketall --since 1m
    

    This flag understands typical human-readable durations such as 1m or 1y1d1h1m1s.

  • ... in the default namespace

    ketall --namespace=default
    
  • ... at cluster level

    ketall --only-scope=cluster
    
  • ... using list of cached server resources

    ketall --use-cache
    

    Note that this may fail to show really everything, if the http cache is stale.

  • ... and combine with common kubectl options

    KUBECONFIG=otherconfig ketall -o name --context some --namespace kube-system --selector run=skaffold
    

Also see Usage.

Installation

There are several ways to install ketall. The recommended installation method is via krew.

Via krew

Krew is a kubectl plugin manager. If you have not yet installed krew, get it at https://github.com/kubernetes-sigs/krew. Then installation is as simple as

kubectl krew install get-all

The plugin will be available as kubectl get-all, see doc/USAGE for further details.

Binaries

When using the binaries for installation, also have a look at doc/USAGE.

Linux
curl -Lo ketall.gz https://github.com/flanksource/ketall/releases/download/v1.3.8/ketall-amd64-linux.tar.gz && \
  gunzip ketall.gz && chmod +x ketall && mv ketall $GOPATH/bin/
OSX
curl -Lo ketall.gz https://github.com/flanksource/ketall/releases/download/v1.3.8/ketall-amd64-darwin.tar.gz && \
  gunzip ketall.gz && chmod +x ketall && mv ketall $GOPATH/bin/
Windows

https://github.com/flanksource/ketall/releases/download/v1.3.8/ketall-amd64-windows.zip

From source
Build on host

Requirements:

  • go 1.16 or newer
  • GNU make
  • git

Compiling:

export PLATFORMS=$(go env GOOS)
make all   # binaries will be placed in out/
Build in docker

Requirements:

  • docker

Compiling:

mkdir ketall && chdir ketall
curl -Lo Dockerfile https://raw.githubusercontent.com/corneliusweig/ketall/master/Dockerfile
docker build . -t ketall-builder
docker run --rm -v $PWD:/go/bin/ --env PLATFORMS=$(go env GOOS) ketall-builder
docker rmi ketall-builder

Binaries will be placed in the current directory.

Future

  • additional arguments could be used to filter the result set
Credits

Idea by @ahmetb https://twitter.com/ahmetb/status/1095374856156196864

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func KetAll

func KetAll(ctx context.Context, ketallOptions *options.KetallOptions) ([]*unstructured.Unstructured, error)

func KetOne added in v1.1.2

func KetOne(ctx context.Context, name, namespace, kind string, ketallOptions *options.KetallOptions) (*unstructured.Unstructured, error)

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL