A service that can be used to update given yaml files within a git repository with a new docker image path. This can be used in colaboration with
kit-deployer to automatically update the images used for a service across multiple clusters.
Use as Docker Image
docker run quay.io/invision/kit-image-deployer --help
We recommend using
kit components with Codeship's Docker Infrastructure, however you are free to run this tool however way you wish. Anything that has Docker can run this image.
Using as CLI
You can run the
./src/image-deployer --help to see how it works.
Note this method requires node and was tested on version
Using as npm module
Use npm to install
$ npm install kit-image-deployer --save
Then require it and use it like so:
var ImageDeployer = ImageDeployer;var imageDeployer =docker:registry: "my-registry.com"repo: "example/my-service"github:token: "my-github-token-here"user: "chesleybrown"repo: "my-kube-repo";// Deploy by commit IDimageDeployer;// OR deploy a full image nameimageDeployer;
The repository you are writing to should have a
kit.yaml configuration file.
images:path: imagesproperty: image
images.pathis for specifying the directory path to where all your image yaml files will be stored
images.propertyis the yaml property name within the given image files that will be updated with the image path
Expected environment variables
The following environment variables are used by this service.
||Your github token to access the repo||yes||empty|
||The github user that the repo belongs to||yes||empty|
||The github repo name||yes||empty|
||The url for the docker registry||yes||empty|
||The repo to use within the docker registry||yes||empty|
||The name of the person who committed the change||yes||empty|
||The email of the person who committed the change||yes||empty|
||The commit message||yes||empty|
||The name of the branch||yes||empty|
||The commit hash or ID (must provide this or
||The full path and tag to the docker image (must provide this or
||Specify the number of times you want to automatically retry the commit if it fails||yes||
See the Contributing guide for steps on how to contribute to this project.
- Handle automatic retries if github request fails because of sha difference