Skip to content

Commit

Permalink
Add More Docs
Browse files Browse the repository at this point in the history
  • Loading branch information
rossedman committed Sep 28, 2021
1 parent a38eead commit 21e1a2e
Showing 1 changed file with 46 additions and 4 deletions.
50 changes: 46 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,14 @@

![example](preview.png)

A kubectl plugin for working with Twilio flavored clusters.
A kubectl plugin that checks your clusters for component compatibility and Kubernetes version end of life. This plugin is meant to assist with the upgrade process for these needs:

- Assessing what components need to be upgraded before upgrading to a specific Kubernetes version
- Assessing how much time is available before the Kubernetes version is sunsetted in different platforms like EKS

This cluster is _not_ responsible for

- Finding deprecated APIs, other tools can do this well, like `kubent`

## Quickstart

Expand All @@ -22,15 +29,15 @@ kubectl check

### kubectl check endoflife

This command will check the end of life date for a version using `endoflife.data`. The default option is to check upstream Kubernetes first:
This command will check the end of life date for a version using `endoflife.data` and print how much time is left as well as the end of life data. The default option is to check upstream Kubernetes only:

```shell
❯ kubectl check endoflife
TYPE VERSION EOL DATE DAYS LEFT
Kubernetes 1.19 2021-10-28 29
```

To add EKS output, you can add an `--eks` flag
To add EKS output, append an `--eks` flag to get more platform information

```shell
❯ go run main.go endoflife --eks
Expand All @@ -41,7 +48,7 @@ Kubernetes 1.19 2021-10-28 29

### kubectl check versions

This will check the core service versions and what version they require to upgrade to
This will check the component versions and what version they require to upgrade to
another version of Kubernetes, this uses the config located at `cmd/config` and can support
multiple Kubernetes versions

Expand All @@ -55,4 +62,39 @@ metrics-server false v0.5.0 0.5.0
kube-proxy false v1.19.6-eksbuild.2 1.19.6-eksbuild.2
node-problem-detector false v0.8.9 0.8.9
cert-manager false v1.4.0 1.4.0
```

---

## Version Config

This configuration is highly configurable, here is an example of a simple configuration that has version compatbility for `coredns` across multiple Kubernetes releases.

```json
{
"v1.19": [
{
"Name": "coredns",
"Version": "1.7.0"
}
],
"v1.20": [
{
"Name": "coredns",
"Version": "1.7.0"
}
],
"v1.21": [
{
"Name": "coredns",
"Version": "1.8.0"
}
],
"v1.22": [
{
"Name": "coredns",
"Version": "1.8.4"
}
]
}
```

0 comments on commit 21e1a2e

Please sign in to comment.