Just curious, why not have Travis CI do a kubectl set-image to rollout after pushing the docker image?
Just curious, why not have Travis CI do a kubectl set-image to rollout after pushing the docker image?
The best alternative would be to have Travis CI SSH into a box with kubectl. In any case it’s bit more complicated than the setup with Keel we currently have.
Wouldn't setting up Keel on a Kubernetes cluster be the same effort (permissions, RBAC etc.)?
1) Remotes are isolated - have different authorizations for say dev and staging remotes
2) Deployments are isolated - A Remote can only deploy apps in its own namespace.
The webhooks only tell Keel that a new image is available, they cannot modify other parts of the Kubernetes deployment directly.
RBAC isn't too complicated though:
- get on specific app namespaces
- get, list, watch, patch, update on deployments