Crates.io | shipcat |
lib.rs | shipcat |
version | 0.66.0 |
source | src |
created_at | 2018-10-22 16:52:30.43622 |
updated_at | 2018-10-22 16:52:30.43622 |
description | Deploy right meow. |
homepage | https://github.com/Babylonpartners/shipcat |
repository | |
max_upload_size | |
id | 91994 |
size | 422,426 |
A standardisation tool and yaml abstraction on top of kubernetes
via shipcat.yml
manifest files. Introduction to shipcat.
Lives on your ship.
brew install shipcat
via homebrew-babylongit pull && cargo build
See the building guide, for setting up auto-complete, and being able to use from outside a manifests repo.
In general, define your shipcat.yml
file in the manifests repo and make sure shipcat validate
passes.
If you have vault
read credentials (a VAULT_TOKEN
evar, or a ~/.vault-token
file) you can also validate secret existence and generate the completed manifest (values):
shipcat validate gate-annotator --secrets
# Generate completed manifest (what's passed to your chart)
shipcat values gate-annotator
If you have helm
installed you can generate the helm template via the associated helm chart:
# Pass completed manifest to helm template
shipcat template gate-annotator
With rollout access (kubectl auth can-i rollout Deployment
) you can also perform upgrades:
# helm upgrade corresponding service (check your context first)
shipcat apply gate-annotator
This requires helm diff installed to work, and it will work against the region in your context (kubectl config current-context
).
For auditing; this also uses slack credentials to notify about these upgrades:
export SLACK_SHIPCAT_HOOK_URL=...
export SLACK_SHIPCAT_CHANNEL="#kubernetes"
cargo doc
)Explicit guides for shipcat is available in the doc directory. In particular: