From 8875ae8c446d5fd0a7180e2f5d4e0320108d35b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Sch=C3=BCnemann?= Date: Wed, 30 Jul 2025 08:58:13 +0200 Subject: [PATCH 1/2] feat: allow to provide own Dockerfile --- Taskfile_library.yaml | 1 + tasks_build_img.yaml | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Taskfile_library.yaml b/Taskfile_library.yaml index 1527d32..58151ce 100644 --- a/Taskfile_library.yaml +++ b/Taskfile_library.yaml @@ -43,6 +43,7 @@ vars: MODULE_NAME: sh: 'cat "{{.ROOT_DIR2}}/go.mod" | grep "module " | sed "s/module //" | sed -E "s/[[:blank:]].*//"' NESTED_MODULES: '{{.NESTED_MODULES | default "" }}' + DOCKERFILE: '{{.TASKFILE_DIR2}}/Dockerfile' LOCALBIN: '{{ env "LOCALBIN" | default ( .LOCALBIN | default (print .ROOT_DIR2 "/bin") ) }}' LOCALTMP: '{{ env "LOCALTMP" | default ( .LOCALTMP | default (print .ROOT_DIR2 "/tmp") ) }}' diff --git a/tasks_build_img.yaml b/tasks_build_img.yaml index 9ae9304..e21fa76 100644 --- a/tasks_build_img.yaml +++ b/tasks_build_img.yaml @@ -82,10 +82,11 @@ tasks: - ARCH - IMAGE_BASE - DOCKER_BUILDER_NAME + - DOCKERFILE cmds: - 'echo "Building image {{.COMPONENT}}:{{.VERSION}}-{{.OS}}-{{.ARCH}}"' - '[[ "{{.OS}}" == "linux" ]] || { echo "The distroless base image does only support linux as operating system."; exit 1; }' - - 'cat "{{.TASKFILE_DIR2}}/Dockerfile" | sed "s//{{.COMPONENT}}/g" > "{{.ROOT_DIR2}}/Dockerfile.tmp"' + - 'cat "{{.DOCKERFILE}}" | sed "s//{{.COMPONENT}}/g" > "{{.ROOT_DIR2}}/Dockerfile.tmp"' - '( cd "{{.ROOT_DIR2}}"; docker buildx build --builder {{.DOCKER_BUILDER_NAME}} --load --build-arg COMPONENT={{.COMPONENT}} --platform {{.OS}}/{{.ARCH}} -t {{.IMAGE_BASE}}/{{.COMPONENT}}:{{.VERSION}}-{{.OS}}-{{.ARCH}} -f Dockerfile.tmp . )' - 'rm -f "{{.ROOT_DIR2}}/Dockerfile.tmp"' internal: true From 0b82c31486afa40d4ee99450808f24e54ab17133 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Sch=C3=BCnemann?= Date: Wed, 30 Jul 2025 09:24:13 +0200 Subject: [PATCH 2/2] make the variable configurable --- Taskfile_library.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Taskfile_library.yaml b/Taskfile_library.yaml index 58151ce..ebc6041 100644 --- a/Taskfile_library.yaml +++ b/Taskfile_library.yaml @@ -43,7 +43,7 @@ vars: MODULE_NAME: sh: 'cat "{{.ROOT_DIR2}}/go.mod" | grep "module " | sed "s/module //" | sed -E "s/[[:blank:]].*//"' NESTED_MODULES: '{{.NESTED_MODULES | default "" }}' - DOCKERFILE: '{{.TASKFILE_DIR2}}/Dockerfile' + DOCKERFILE: '{{.DOCKERFILE | default (print .TASKFILE_DIR2 "/Dockerfile") }}' LOCALBIN: '{{ env "LOCALBIN" | default ( .LOCALBIN | default (print .ROOT_DIR2 "/bin") ) }}' LOCALTMP: '{{ env "LOCALTMP" | default ( .LOCALTMP | default (print .ROOT_DIR2 "/tmp") ) }}'