From 0589f69206ba2c7022252d35bd519356091f6786 Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Fri, 13 Jan 2023 15:50:50 +0100 Subject: [PATCH] build: null values support with bake Signed-off-by: CrazyMax --- docs/bake-reference.md | 55 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/docs/bake-reference.md b/docs/bake-reference.md index 45ec925a..c4e5b53e 100644 --- a/docs/bake-reference.md +++ b/docs/bake-reference.md @@ -122,6 +122,61 @@ $ TAG=dev docker buildx bake webapp-dev # will use the TAG environment variable > > See also the [Configuring builds](configuring-build.md) page for advanced usage. +### Null values + +Null values for `args` and `labels` are supported, so default sets in your +Dockerfile will be used: + +```hcl +# docker-bake.hcl +variable "GO_VERSION" { + default = null +} +target "default" { + args = { + GO_VERSION = GO_VERSION + } +} +``` + +```dockerfile +ARG GO_VERSION="1.18" +FROM golang:${GO_VERSION} +``` + +```console +$ docker buildx bake --print +``` + +```json +{ + "target": { + "default": { + "context": ".", + "dockerfile": "Dockerfile" + } + } +} +``` + +```console +$ GO_VERSION=1.19 docker buildx bake --print +``` + +```json +{ + "target": { + "default": { + "context": ".", + "dockerfile": "Dockerfile", + "args": { + "GO_VERSION": "1.19" + } + } + } +} +``` + ### Functions A [set of generally useful functions](https://github.com/docker/buildx/blob/master/bake/hclparser/stdlib.go){:target="blank" rel="noopener" class=""}