0.1.0-rc.16 • Published 4 years ago

knube-deploy v0.1.0-rc.16

Weekly downloads
1
License
MPL-2.0
Repository
-
Last release
4 years ago

knube_deploy

CLI for templating, deploying and archiving Kubernetes manifests

Installation

$ npm i --save-dev knube-deploy

- OR -

$ yarn add --dev knube-deploy

TODO

Usage

Configuration

deploy.yaml

Most global configuration is defined in a deploy.yaml that should be in the root directory of your project. knube-deploy operates on the concept of "target clusters," and each command described in "Usage" will iterate on each context item defined.

# minimal deploy.yaml
contexts:
- name: production
  context: gke_my-app-project_us-west1_prod-cluster
  image: myapp-prod
  imageRegistry: gcr.io/my-app-project
- name: staging
  context: gke_my-app-project_us-west1_staging-cluster
  image: myapp-staging
  imageRegistry: gcr.io/my-app-project
- name: local 
  context: minikube
  image: myapp
  imageRegistry: local-registry

docker

TODO

kubectl

TODO

Archive Storage

Multiple backends are available for storing the archive tarballs during the kube:publish step. Options include: 1. devnull: No-op storage-- rendered manifests must be available locally for kube:deploy to succeed 1. localstorage: Uses a configurable directory on the local filesystem 1. gcs: Use a Google Cloud Storage bucket (not yet implemented) 1. s3: Use an AWS S3 bucket (not yet implemented) 1. azure: Use Azure cloud storage (not yet implemented) 1. github: Use Github Artifact storage (not yet implemented) 1. gitlab: Use Gitlab Artifact storage (not yet implemented) 1. artifactory: Use Artifactory artifact storage (not yet implemented)

Commands

docker:build

Build a docker image with the specified configuration.

args

TODO

kube:generate

Render manifests from the input directory of EJS templates.

args

TODO

kube:publish

Push the built docker image to the configured registry, then create a tarball archive of rendered manifests and push it to the configured archive storage backend.

args

TODO

kube:deploy

Fetch and unzip the manifest tarball for the specified version, then kubectl apply its contents in the configured context(s).

args

TODO

fortytwo

Answer to the Ultimate Question of Life, the Universe and Everything

Runs all of the above in order.

args

Takes all arguments from the above commands.

In CI/CD / Non-Interactive Modes

TODO

Development

TODO

0.1.0-rc.16

4 years ago

0.1.0-rc.15

4 years ago

0.1.0-rc.14

4 years ago

0.1.0-rc.13

4 years ago

0.1.0-rc.12

4 years ago

0.1.0-rc.11

4 years ago

0.1.0-rc.10

4 years ago

0.1.0-rc.9

4 years ago

0.1.0-rc.7

4 years ago

0.1.0-rc.8

4 years ago

0.1.0-rc.6

4 years ago

0.1.0-rc.4

4 years ago

0.1.0-rc.5

4 years ago

0.1.0-rc.3

4 years ago

0.1.0-rc.2

4 years ago

0.1.0-rc.1

4 years ago