Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mawrkus/k8s-airways
✈️ Helm rollbacks made easy
https://github.com/mawrkus/k8s-airways
helm k8s kubernetes rollback
Last synced: 3 months ago
JSON representation
✈️ Helm rollbacks made easy
- Host: GitHub
- URL: https://github.com/mawrkus/k8s-airways
- Owner: mawrkus
- Created: 2020-04-18T12:21:35.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2022-03-26T14:40:59.000Z (almost 3 years ago)
- Last Synced: 2024-10-12T01:37:26.947Z (4 months ago)
- Topics: helm, k8s, kubernetes, rollback
- Language: JavaScript
- Homepage:
- Size: 618 KB
- Stars: 4
- Watchers: 3
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# K8s Airways
A terminal application to make Helm rollbacks easy.
## ✈️ Requirements
- [Node.js](https://nodejs.org/) >= 10
- [Helm](https://helm.sh/) >= 3
- [kubectl](https://kubernetes.io/docs/reference/kubectl/overview)## ✈️ Installation & launch
### Using npx
```shell
npx k8s-airways -c [optional projects config]
```### Using npm
```shell
npm install -g k8s-airways
k8s-airways -c [optional projects config]
```### Cloning the repository
```shell
git clone https://github.com/mawrkus/k8s-airways.git
cd k8s-airways
npm install
npm run start
```or
```shell
npm run start:projects
```## ✈️ Usage
⚠️ **BE CAREFUL: once clicked on the revision in the last column, the rollback will be triggered without any confirmation.**
- Without providing a config file for your projects, you can browse:
**contexts** -> **namespaces** -> **releases** -> **revisions**
- When providing a config file, you can browse:
**projects** -> **releases** -> **revisions**
If the repository was cloned, you can configure your project(s) in `./config/k8s-demo-projects.json`.
### The config file
It's a simple JSON file containing an entry for each project, e.g.:
```json
{
"Project name": {
"contexts": ["europe", "usa", "asia"],
"releases": {
"My service name": "my-namespace:my-release",
"My other service name": "my-other-namespace:my-other-release"
},
"maxRevisionsPerContext": 3
},
"Other project name": {
}
}
```## ✈️ Contribute
1. Fork it: `git clone https://github.com/mawrkus/k8s-airways.git`
2. Create your feature branch: `git checkout -b feature/my-new-feature`
3. Commit your changes: `git commit -am 'Added some feature'`
4. Check the tests: `npm run test`
5. Push to the branch: `git push origin my-new-feature`
6. Submit a pull request :D