diff --git a/README.md b/README.md
index f5d37681..d13577f7 100644
--- a/README.md
+++ b/README.md
@@ -6,16 +6,16 @@
Kor is a tool to discover unused Kubernetes resources. Currently, Kor can identify and list unused:
- ConfigMaps
-- Secrets.
+- Secrets
- Services
- ServiceAccounts
- Deployments
- StatefulSets
- Roles
-- Hpas
-- Pvcs
+- HPAs
+- PVCs
- Ingresses
-- Pdbs
+- PDBs
![Kor Screenshot](/images/screenshot.png)
@@ -23,7 +23,7 @@ Kor is a tool to discover unused Kubernetes resources. Currently, Kor can identi
Download the binary for your operating system from the [releases page](https://github.com/yonahd/kor/releases) and add it to your system's PATH.
-For MacOS users, you can install Kor using Homebrew:
+For macOS users, you can install Kor using Homebrew:
```sh
brew install kor
```
@@ -32,26 +32,26 @@ brew install kor
Kor provides various subcommands to identify and list unused resources. The available commands are:
-- `all`: Gets all unused resources for the specified namespace or all namespaces.
-- `configmap`: Gets unused configmaps for the specified namespace or all namespaces.
-- `secret`: Gets unused secrets for the specified namespace or all namespaces.
-- `services`: Gets unused services for the specified namespace or all namespaces.
-- `serviceaccount`: Gets unused service accounts for the specified namespace or all namespaces.
-- `deployments`: Gets unused service accounts for the specified namespace or all namespaces.
-- `statefulsets`: Gets unused service accounts for the specified namespace or all namespaces.
-- `role`: Gets unused roles for the specified namespace or all namespaces.
-- `hpa`: Gets unused hpa for the specified namespace or all namespaces.
-- `pvc`: Gets unused pvcs for the specified namespace or all namespaces.
-- `ingress`: Gets unused ingresses for the specified namespace or all namespaces.
-- `pdb`: Gets unused pdbs for the specified namespace or all namespaces.
+- `all` - Gets all unused resources for the specified namespace or all namespaces.
+- `configmap` - Gets unused ConfigMaps for the specified namespace or all namespaces.
+- `secret` - Gets unused Secrets for the specified namespace or all namespaces.
+- `services` - Gets unused Services for the specified namespace or all namespaces.
+- `serviceaccount` - Gets unused ServiceAccounts for the specified namespace or all namespaces.
+- `deployments` - Gets unused Deployments for the specified namespace or all namespaces.
+- `statefulsets` - Gets unused StatefulSets for the specified namespace or all namespaces.
+- `role` - Gets unused Roles for the specified namespace or all namespaces.
+- `hpa` - Gets unused HPAs for the specified namespace or all namespaces.
+- `pvc` - Gets unused PVCs for the specified namespace or all namespaces.
+- `ingress` - Gets unused Ingresses for the specified namespace or all namespaces.
+- `pdb` - Gets unused PDBs for the specified namespace or all namespaces.
### Supported Flags
```
-e, --exclude-namespaces string Namespaces to be excluded, splited by comma. Example: --exclude-namespace ns1,ns2,ns3. If --include-namespace is set, --exclude-namespaces will be ignored.
-h, --help help for kor
--n, --include-namespaces string Namespaces to run on, splited by comma. Example: --include-namespace ns1,ns2,ns3.
+-n, --include-namespaces string Namespaces to run on, split by comma. Example: --include-namespace ns1,ns2,ns3.
-k, --kubeconfig string Path to kubeconfig file (optional)
- --output string Output format (table or json) (default "table")
+ --output string Output format ("table" or "json") (default "table")
```
To use a specific subcommand, run `kor [subcommand] [flags]`.
@@ -68,19 +68,19 @@ kor [subcommand] --help
## Supported resources and limitations
-| Resource | What it looks for | Known False Positives ⚠️ |
+| Resource | What it looks for | Known False Positives ⚠️ |
|-----------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------|
-| Configmaps | Configmaps not used in the following places:
- Pods
- Containers
- Configmaps used through volumes
- Configmaps used through environment variables | Configmaps used by resources which don't explicitly state them in the config.
e.g Grafana dashboards loaded dynamically opa policies fluentd configs |
-| Secrets | Secrets not used in the following places:
- Pods
- Containers
- Secrets used through volumes
- Secrets used through environment variables
- Secrets used by ingress TLS
-Secrets used by ServiceAccounts | Secrets used by resources which don't explicitly state them in the config |
+| ConfigMaps | ConfigMaps not used in the following places:
- Pods
- Containers
- ConfigMaps used through Volumes
- ConfigMaps used through environment variables | ConfigMaps used by resources which don't explicitly state them in the config.
e.g Grafana dashboards loaded dynamically OPA policies fluentd configs |
+| Secrets | Secrets not used in the following places:
- Pods
- Containers
- Secrets used through volumes
- Secrets used through environment variables
- Secrets used by Ingress TLS
- Secrets used by ServiceAccounts | Secrets used by resources which don't explicitly state them in the config |
| Services | Services with no endpoints | |
-| Deployments | Deployments with 0 Replicas | |
-| ServiceAccounts | ServiceAccounts unused by pods
ServiceAccounts unused by roleBinding or clusterRoleBinding | |
-| StatefulSets | Statefulsets with 0 Replicas | |
+| Deployments | Deployments with no Replicas | |
+| ServiceAccounts | ServiceAccounts unused by Pods
ServiceAccounts unused by roleBinding or clusterRoleBinding | |
+| StatefulSets | Statefulsets with no Replicas | |
| Roles | Roles not used in roleBinding | |
-| Pvcs | Pvcs not used in pods | |
-| Ingresses | Ingresses not pointing at any service. | |
-| Hpas | Hpas not used in Deployments
Hpas not used in StatefulSets | |
-| Pdbs | Pdbs not used in Deployments
Pdbs not used in StatefulSets | |
+| PVCs | PVCs not used in Pods | |
+| Ingresses | Ingresses not pointing at any Service | |
+| Hpas | HPAs not used in Deployments
HPAs not used in StatefulSets | |
+| Pdbs | PDBs not used in Deployments
PDBs not used in StatefulSets | |
## Ignore Resources
@@ -94,8 +94,6 @@ import (
"github.com/yonahd/kor/pkg/kor"
)
-
-
func main() {
myNamespaces := kor.IncludeExcludeLists{
IncludeListStr: "my-namespace1, my-namespace2",
@@ -122,5 +120,5 @@ Contributions are welcome! If you encounter any bugs or have suggestions for imp
## License
-This project is open-source and available under the [MIT License](LICENSE). Feel free to use, modify, and distribute it as per the terms of the license.
+This open-source project is available under the [MIT License](LICENSE). Feel free to use, modify, and distribute it as per the terms of the license.