k8s-ops
TypeScript icon, indicating that this package has built-in type declarations

1.0.7 • Public • Published

k8s-ops

Collective useful k8s ops features built on top of awesome kubernetes-client

Installation

Install via npm:

$ npm i k8s-ops --save

Example

const { Apis, K8SAuthType, Features, DeploymentStatusType, Transformers } = require('k8s-ops')
const { hpa: HPA, deploy: Deploy, pod: Pod } = Features
 
const namespace = 'kube-system'
 
const apis = Apis(K8SAuthType.FromKubeconfig, namespace)
const hpa = HPA(apis, 'your-hpa')
 
hpa.scale({ minReplicas: 5, maxReplicas: 9 }) // Scale HPA with given min/max replicas
  .then(() => hpa.assertScale({ minReplicas: 5, maxReplicas: 9 })) // check if scale is set correctly
  .then(console.log)
 
const deploy = Deploy(apis, 'heapster')
 
deploy.assertStatus(DeploymentStatusType.AsDesired) // check if all pods are all up-to-date and available
  .then(console.log)
 
deploy.pods(Transformers.pod.readyAt) //Using optional transformer to get more consize data and you can implement your own
  .then(console.log)
 
const pod = Pod(apis, 'your-pod-755b9c7968-r889w')
 
pod.terminate().then(console.log)
 
pod.res.get().then(console.log) // use kubernetes-client's objects' feature directly by accessing .res

Readme

Keywords

none

Package Sidebar

Install

npm i k8s-ops

Weekly Downloads

1

Version

1.0.7

License

MIT

Unpacked Size

31.1 kB

Total Files

41

Last publish

Collaborators

  • ryuheechul