A simple Drone plugin for updating Kubernetes Deployments from templates & ConfigMaps from files. Follows from vallard/drone-kube but with dependency management, up-to-date client-go, docs updated to Drone 1.0.0 syntax, examples and a different structure. This plugin will create a deployment if it doesn't currently exist.
Usage: See drone.md
Deployment config files are first interpreted by aymerick/raymond (handlebarsjs equivalent). You can use all available raymond expressions and anything you put in settings will be made available in your deployment template e.g. {{namespace}}
. See example/deployment.template.yaml for a complete example.
In this case, you can create a template just like deployment.yaml but you can provide a file path (relative to the repo's root) in the plugin setting configmap_file
. (Currently only accepts utf-8 encoded data). Like deployments, this will both create new or update existing configmaps (based on the configmap name).
See example/Role.yaml, example/ServiceAccount.yaml, example/RoleBinding.yaml.
- Kubernetes client not yet supported by dep, so we are using
brew install glide
. - Update dependencies with brew
glide update --strip-vendor
- kubernetes/client-go installation notes
- Creating a Drone plugin in Go
- Client-go API Docs @ godoc.org
- Testing with minikube (OSX:
brew cask install minikube
)