/kubeasy

⛅️ Immersive command-line interface to manage Kubernetes cloud clusters

Primary LanguageJavaScript

kubeasy

Build Status

kubeasy is an interactive wrapper around kubectl to help you manage your Kubernetes clusters.

Installation

  • Install kubectl

  • Install kubeasy by downloading the latest version from Github

git clone https://github.com/marcenacp/kubeasy.git
cd kubeasy/
npm install
npm link
  • Use it with the command: kubeasy

Development

Development pattern

I use blessed to render the command-line interface, and Node's EventEmitter to propagate data between hooks and widgets.

  • Hooks (in src/hooks) get data from Kubernetes using kubectl and store it in the state.

  • Widgets (in src/widgets) watch inputs from user and render the command-line interface according to the state.

Useful commands

  • npm run dev: launch application with nodemon
  • npm run test: launch unit tests and check syntax in Javascript files using prettier (run in CI)
  • npm run test:watch: launch unit tests in watch mode