Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fairwindsops/gonogo
[alpha] Tool to evaluate upgrade confidence for Kubernetes cluster addons
https://github.com/fairwindsops/gonogo
fairwinds-incubator helm kubernetes
Last synced: 2 days ago
JSON representation
[alpha] Tool to evaluate upgrade confidence for Kubernetes cluster addons
- Host: GitHub
- URL: https://github.com/fairwindsops/gonogo
- Owner: FairwindsOps
- License: apache-2.0
- Created: 2021-10-28T13:49:52.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-12-09T15:38:11.000Z (28 days ago)
- Last Synced: 2025-01-05T06:13:34.572Z (2 days ago)
- Topics: fairwinds-incubator, helm, kubernetes
- Language: Go
- Homepage: https://fairwinds.com
- Size: 657 KB
- Stars: 134
- Watchers: 15
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
GoNoGo is a utility to help users determine upgrade confidence around Kubernetes cluster addons.
## Alpha Software
At this time, GoNoGo is currently in alpha. This means that we could change literally anything at any time without notice. Keep an eye out for major changes, and hopefully a v1 release at some point.
## Documentation
Check out the [documentation at docs.fairwinds.com](https://gonogo.docs.fairwinds.com)
## Purpose
A number factors can affect whether the upgrade of an addon (like cert-manager, nginx ingress, etc) will be successful or not. For example, some addon upgrades require a specific api to be available in the cluster, or a specific version of the Kubernetes cluster in general. Or perhaps an addon has deprecated a particular annotation and you want to make sure your upgraded addon doesn't include those deprecated annotations. Rather than having to manually assess each addon, GoNoGo enables you to create a specification (called a bundle spec) that you can populate with checks for the upgraded version, and run those against your cluster to get an upgrade confidence score.For example, `cert-manager` [changed a number of annotations](https://cert-manager.io/docs/installation/upgrading/upgrading-0.10-0.11/#additional-annotation-changes) in the upgrade from `0.10` to `0.11`. With GoNoGo you can add an OPA check to your bundle spec looking for instances of that annotation in the affected cluster resources and be warned about it before you do the upgrade.
# Usage
```
gonogo --help
The Kubernetes Add-On Upgrade Validation Bundle is a spec that can be used to define and then discover if an add-on upgrade is safe to perform.Usage:
gonogo [flags]
gonogo [command]Available Commands:
check Check for Helm releases that can be updated
completion Generate the autocompletion script for the specified shell
help Help about any command
version Prints the current version of the tool.Flags:
-h, --help help for gonogo
-v, --v Level number for the log level verbosityUse "gonogo [command] --help" for more information about a command.
```
Pass in a bundle spec with the addon definitions that you want to check
```gonogo check /path/to/bundle/bundle.yaml
```
## Join the Fairwinds Open Source Community
The goal of the Fairwinds Community is to exchange ideas, influence the open source roadmap,
and network with fellow Kubernetes users.
[Chat with us on Slack](https://join.slack.com/t/fairwindscommunity/shared_invite/zt-2na8gtwb4-DGQ4qgmQbczQyB2NlFlYQQ)
or
[join the user group](https://www.fairwinds.com/open-source-software-user-group) to get involved!## Other Projects from Fairwinds
Enjoying Gonogo? Check out some of our other projects:
* [Polaris](https://github.com/FairwindsOps/Polaris) - Audit, enforce, and build policies for Kubernetes resources, including over 20 built-in checks for best practices
* [Goldilocks](https://github.com/FairwindsOps/Goldilocks) - Right-size your Kubernetes Deployments by compare your memory and CPU settings against actual usage
* [Pluto](https://github.com/FairwindsOps/Pluto) - Detect Kubernetes resources that have been deprecated or removed in future versions
* [Nova](https://github.com/FairwindsOps/Nova) - Check to see if any of your Helm charts have updates available
* [rbac-manager](https://github.com/FairwindsOps/rbac-manager) - Simplify the management of RBAC in your Kubernetes clustersOr [check out the full list](https://www.fairwinds.com/open-source-software?utm_source=gonogo&utm_medium=gonogo&utm_campaign=gonogo)