github.com/buildtool/build-tools@v0.2.29-0.20240322150259-6a1d0a553c23/www/docs/conventions.md (about) 1 # Conventions 2 3 - The project folder must be a [Git](https://git-scm.com/) repository, with a least one commit 4 - `Dockerfile` should be present in the root of the project directory 5 (this can be overridden with [flags](/commands/build)). 6 The `Dockerfile` will be used to build the project into a runnable docker image. 7 - Kubernetes descriptor files must be located in the `k8s` folder (only needed for `deploy` and `promote`) 8 - The `k8s` folder can also contain custom scripts that should be run during deployment 9 - The name of the directory will be used as the name of the application 10 - If running in CI, `ENV` variables will be used to determine the name of the project being built 11 - The name can also be overridden using the `IMAGE_NAME` environment variable 12 - The current commit id will be used as docker tag 13 - The current branch will be used as docker tag. If you're on the `master` or `main` 14 branch the docker image will also be tagged `latest`. The `latest` tag will also be pushed in that case. 15 - [Targets](config/targets.md) (deployment targets) are configured in [`.buildtools.yaml` file(s)](config/config.md) 16 - [`.buildtools.yaml` file(s)](config/config.md) will be merged together hierarchically and can be used for multiple 17 projects 18 - Use [Target](config/targets.md) names to use specific `k8s` files for different deployment targets