From 852ff6583dc45465794dd3384048b4e720ca7e3f Mon Sep 17 00:00:00 2001 From: Evan Fiordeliso Date: Sat, 15 Apr 2023 20:05:53 -0400 Subject: [PATCH] Add multiarch docker builds --- .goreleaser.yaml | 49 ++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 47 insertions(+), 2 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 18c5be2..c005beb 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -21,7 +21,52 @@ builds: - -X {{ .Env.BASE_PKG }}/version.BuiltBy=goreleaser dockers: - image_templates: - - git.fifitido.net/apps/{{.ProjectName}} + - &amd64_image git.fifitido.net/apps/{{.ProjectName}}:{{.Tag}}-amd64 + use: buildx + dockerfile: Dockerfile + goos: linux + goarch: amd64 + build_flag_templates: + - --platform=linux/amd64 + - image_templates: + - &amd64_image git.fifitido.net/apps/{{.ProjectName}}:{{.Tag}}-arm64v8 + use: buildx + dockerfile: Dockerfile + goos: linux + goarch: arm64 + build_flag_templates: + - --platform=linux/arm64/v8 + - image_templates: + - &amd64_image git.fifitido.net/apps/{{.ProjectName}}:{{.Tag}}-armv7 + use: buildx + dockerfile: Dockerfile + goos: linux + goarch: arm + goarm: 7 + build_flag_templates: + - --platform=linux/arm/v7 + - image_templates: + - &amd64_image git.fifitido.net/apps/{{.ProjectName}}:{{.Tag}}-armv6 + use: buildx + dockerfile: Dockerfile + goos: linux + goarch: arm + goarm: 6 + build_flag_templates: + - --platform=linux/arm/v6 +docker_manifests: + - name_template: git.fifitido.net/apps/{{.ProjectName}}:latest + image_templates: + - *amd64_image + - *arm64v8_image + - *armv7_image + - *armv6_image + - name_template: git.fifitido.net/apps/{{.ProjectName}}:{{.Tag}} + image_templates: + - *amd64_image + - *arm64v8_image + - *armv7_image + - *armv6_image archives: - format: tar.gz # this name template makes the OS and Arch compatible with the results of uname. @@ -49,4 +94,4 @@ changelog: # The lines beneath this are called `modelines`. See `:help modeline` # Feel free to remove those if you don't want/use them. # yaml-language-server: $schema=https://goreleaser.com/static/schema.json -# vim: set ts=2 sw=2 tw=0 fo=cnqoj +# vim: set ts=2 sw=2 tw=0 fo=cnqoj \ No newline at end of file