https://github.com/corneliusweig/ketall
Like `kubectl get all`, but get really all resources
https://github.com/corneliusweig/ketall
get k8s kubectl kubectl-plugin kubectl-plugins overview resource-list resources
Last synced: 7 months ago
JSON representation
Like `kubectl get all`, but get really all resources
- Host: GitHub
- URL: https://github.com/corneliusweig/ketall
- Owner: corneliusweig
- License: apache-2.0
- Created: 2019-02-14T22:52:51.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-12-06T15:08:38.000Z (almost 2 years ago)
- Last Synced: 2024-10-30T03:40:05.927Z (about 1 year ago)
- Topics: get, k8s, kubectl, kubectl-plugin, kubectl-plugins, overview, resource-list, resources
- Language: Go
- Homepage:
- Size: 4.65 MB
- Stars: 676
- Watchers: 8
- Forks: 28
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- orm-awesome - get-all
- awesome-kubectl-plugins - ketall
- awesome-repositories - corneliusweig/ketall - Like `kubectl get all`, but get really all resources (Go)
- awesomeness - ketall - kubectl plugin that allows to get easy all resources from a k8s cluster (Containers / Kubernetes)
- awesome-starred - corneliusweig/ketall - Like `kubectl get all`, but get really all resources (others)
README
# ketall
[](https://travis-ci.com/corneliusweig/ketall)
[](https://goreportcard.com/report/corneliusweig/ketall)
[](https://github.com/corneliusweig/ketall/blob/master/LICENSE)
[](https://github.com/corneliusweig/ketall/releases)
Kubectl plugin to show really all kubernetes resources
## 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

## Examples
Get all resources...
- ... excluding events (this is hardly ever useful)
```bash
ketall
```
- ... _including_ events
```bash
ketall --exclude=
```
- ... created in the last minute
```bash
ketall --since 1m
```
This flag understands typical human-readable durations such as `1m` or `1y1d1h1m1s`.
- ... in the default namespace
```bash
ketall --namespace=default
```
- ... at cluster level
```bash
ketall --only-scope=cluster
```
- ... using list of cached server resources
```bash
ketall --use-cache
```
Note that this may fail to show __really__ everything, if the http cache is stale.
- ... and combine with common `kubectl` options
```bash
KUBECONFIG=otherconfig ketall -o name --context some --namespace kube-system --selector run=skaffold
```
Also see [Usage](doc/USAGE.md).
## 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](https://github.com/kubernetes-sigs/krew).
Then installation is as simple as
```bash
kubectl krew install get-all
```
The plugin will be available as `kubectl get-all`, see [doc/USAGE](doc/USAGE.md) for further details.
### Binaries
When using the binaries for installation, also have a look at [doc/USAGE](doc/USAGE.md).
#### Linux
```bash
curl -Lo ketall.gz https://github.com/corneliusweig/ketall/releases/download/v1.3.8/ketall-amd64-linux.tar.gz && \
gunzip ketall.gz && chmod +x ketall && mv ketall $GOPATH/bin/
```
#### OSX
```bash
curl -Lo ketall.gz https://github.com/corneliusweig/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/corneliusweig/ketall/releases/download/v1.3.8/ketall-amd64-windows.zip](https://github.com/corneliusweig/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:
```bash
export PLATFORMS=$(go env GOOS)
make all # binaries will be placed in out/
```
#### Build in docker
Requirements:
- docker
Compiling:
```bash
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