{"version":"4.4.0","commands":{"docker:build-from-file":{"id":"docker:build-from-file","description":"Checks to see if a specific Dockerfile has changed (not the contents of a directory) and builds if this is the case","pluginName":"entro-ci","pluginType":"core","aliases":[],"examples":["entro-ci docker:build-from-file --image-name=my-repo/my-image --docker-file-path=./backend/Dockerfile --watch-file=./backend/package.json --watch-file=./backend/manifest.json --tag=stable","entro-ci docker:build-from-file --image-name=my-repo/my-image --docker-file-path=./backend/Dockerfile --watch-file=./backend/package.json --watch-file=./backend/manifest.json --tag=stable --latest --docker-build-flags=\"--build-arg API_VERSION=v2\""],"flags":{"image-name":{"name":"image-name","type":"option","char":"i","description":"The name of the Docker image name without the version on it, eg: entrostat/entro-ci is correct and entrostat/entro-ci:latest is not valid","required":true},"docker-file-path":{"name":"docker-file-path","type":"option","char":"f","description":"The path to the Docker file","required":true},"watch-file":{"name":"watch-file","type":"option","char":"w","description":"One or more files that should be \"watched\" for change that fall into this Dockerfile. So it is not a whole folder but a file or two.","required":false},"registry":{"name":"registry","type":"option","char":"r","description":"The registry that should be used (by default Docker Hub is used)"},"tag":{"name":"tag","type":"option","char":"t","description":"The tag version that should be pushed to the registry so that it can be used in automated deployments"},"package":{"name":"package","type":"option","char":"p","description":"The path to the package.json that holds the version of the build","default":"./package.json"},"dry-run":{"name":"dry-run","type":"boolean","char":"R","description":"Whether to run this live or do a dry run","allowNo":false},"docker-build-flags":{"name":"docker-build-flags","type":"option","char":"b","description":"Any additional build flags that you would like to plug directly into the Docker build command","required":false},"docker-username":{"name":"docker-username","type":"option","char":"u","description":"The username for logging into the docker repository (mainly for if you are running this build process inside a container)","required":false},"docker-password":{"name":"docker-password","type":"option","char":"P","description":"The password for logging into the docker repository (mainly for if you are running this build process inside a container)","required":false},"latest":{"name":"latest","type":"boolean","char":"l","description":"Whether to push the latest tag to the registry","required":false,"allowNo":false}},"args":[]},"docker:build":{"id":"docker:build","description":"Checks if the Docker image has been built before and if it has not then it will build it and push it with the hash to the Docker registry","pluginName":"entro-ci","pluginType":"core","aliases":[],"examples":["entro-ci docker:build --directory=./backend --image-name=my-repo/my-image --tag=stable","entro-ci docker:build --directory=./backend --image-name=my-repo/my-image --tag=stable --watch-directory=./backend/src","entro-ci docker:build --directory=./backend --image-name=my-repo/my-image --tag=stable --watch-directory=./backend/src --watch-directory=./backend/migrations","entro-ci docker:build --directory=./backend --image-name=my-repo/my-image --tag=stable --latest --watch-directory=./project/shared --watch-directory=./backend","entro-ci docker:build --directory=./backend --image-name=my-repo/my-image --tag=stable --watch-directory=./project/shared --watch-directory=./backend --docker-build-flags=\"--build-arg API_VERSION=v2 --build-arg ENV=prod\"","entro-ci docker:build --directory=./backend --image-name=my-repo/my-image --tag=stable --watch-directory=./project/shared --watch-directory=./backend --docker-build-flags=\"--build-arg API_VERSION=v2\" --docker-build-flags=\"--build-arg ENV=prod\""],"flags":{"directory":{"name":"directory","type":"option","char":"d","description":"The path to the directory that you want to build","required":true},"image-name":{"name":"image-name","type":"option","char":"i","description":"The name of the Docker image name without the version on it, eg: entrostat/entro-ci is correct and entrostat/entro-ci:latest is not valid","required":true},"docker-file-name":{"name":"docker-file-name","type":"option","char":"f","description":"The name of the Docker file in the directory","default":"Dockerfile"},"registry":{"name":"registry","type":"option","char":"r","description":"The registry that should be used (by default Docker Hub is used)"},"tag":{"name":"tag","type":"option","char":"t","description":"The tag version that should be pushed to the registry so that it can be used in automated deployments"},"package":{"name":"package","type":"option","char":"p","description":"The path to the package.json that holds the version of the build","default":"./package.json"},"dry-run":{"name":"dry-run","type":"boolean","char":"R","description":"Whether to run this live or do a dry run","allowNo":false},"watch-directory":{"name":"watch-directory","type":"option","char":"w","description":"Directories that should be watched to trigger the build. Note, if you set this then it IGNORES the build directory so you'd have to add that here as well.","required":false},"watch-file":{"name":"watch-file","type":"option","char":"W","description":"Files that should be watched to trigger the build. Note, if you set this then it IGNORES the build directory so you'd have to add that here as well.","required":false},"docker-build-flags":{"name":"docker-build-flags","type":"option","char":"b","description":"Any additional build flags that you would like to plug directly into the Docker build command","required":false},"docker-username":{"name":"docker-username","type":"option","char":"u","description":"The username for logging into the docker repository (mainly for if you are running this build process inside a container)","required":false},"docker-password":{"name":"docker-password","type":"option","char":"P","description":"The password for logging into the docker repository (mainly for if you are running this build process inside a container)","required":false},"latest":{"name":"latest","type":"boolean","char":"l","description":"Whether to push the latest tag to the registry","required":false,"allowNo":false}},"args":[]},"hash:directory":{"id":"hash:directory","description":"Generates the hash of a directory and outputs it to screen.","pluginName":"entro-ci","pluginType":"core","aliases":[],"flags":{},"args":[{"name":"directory","description":"The directory that we're hashing","required":true}]},"project:version":{"id":"project:version","description":"Returns the current version of the project. This command starts from the current directory and moves up until it finds a package.json file.","pluginName":"entro-ci","pluginType":"core","aliases":[],"examples":["entro-ci project:version"],"flags":{"package":{"name":"package","type":"option","char":"p","description":"The path of the package.json file that holds the current version","default":"./package.json"}},"args":[]},"templates:update":{"id":"templates:update","description":"Updates files specified in the entro-ci.yaml file in the repository","pluginName":"entro-ci","pluginType":"core","aliases":[],"examples":["entro-ci templates:update","entro-ci templates:update -f .templates.yaml"],"flags":{"file":{"name":"file","type":"option","char":"f","description":"The path to the yaml file with the config","default":"./entro-ci.yaml"},"package":{"name":"package","type":"option","char":"p","description":"The path of the package.json file that holds the current version","default":"./package.json"},"outputVersion":{"name":"outputVersion","type":"option","char":"V","description":"The version that you want to set (if you don't want to use the version in the package.json)","required":false}},"args":[]},"trigger:post-build":{"id":"trigger:post-build","description":"Trigger a script if the build with a certain image name triggered during this run","pluginName":"entro-ci","pluginType":"core","aliases":[],"examples":["entro-ci trigger:post-build --script=./scripts/deploy_prod.sh --image-name=myproject/backend","entro-ci trigger:post-build --script=./deploy_prod.sh --image-name=myproject/frontend --shell=/bin/zsh","entro-ci trigger:post-build --script=./deploy_prod.sh --image-name=myproject/backend-os --image-name=myproject/backend","entro-ci trigger:post-build --script=./deploy_prod.sh --image-name=myproject/backend-os --image-name=myproject/backend --all-true"],"flags":{"image-name":{"name":"image-name","type":"option","char":"i","description":"The image name or image names that should build in order for this to trigger. By default, the trigger works if any one of these names built.","required":true},"all-true":{"name":"all-true","type":"boolean","char":"a","description":"Require all of the image names to have been built to trigger this.","allowNo":false},"shell":{"name":"shell","type":"option","char":"S","description":"The shell that should be used to trigger this script.","default":"/bin/bash"},"script":{"name":"script","type":"option","char":"s","description":"The path to the script you want to run.","required":true}},"args":[]},"kube:deployment:update":{"id":"kube:deployment:update","description":"Trigger an update on a deployment","pluginName":"entro-ci","pluginType":"core","aliases":["kdu"],"flags":{"bin":{"name":"bin","type":"option","char":"b","description":"The path to the kubectl executable","required":false,"default":"kubectl"}},"args":[{"name":"deployment","description":"The name of the deployment that you would like to update","required":true},{"name":"namespace","description":"The namespace that the deployment is in","default":"default"}]}}}