diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 14efc25..4c312a1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -25,6 +25,13 @@ jobs: with: fetch-depth: 0 + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + + - name: Set up Docker Buildx + id: buildx + uses: docker/setup-buildx-action@v1 + # https://github.community/t5/GitHub-Actions/How-to-get-just-the-tag-name/m-p/32167/highlight/true#M1027 - name: Print Go version and environment id: vars diff --git a/.goreleaser.yml b/.goreleaser.yml index 21a264f..8230297 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -42,8 +42,7 @@ build: goarm: 6 archives: - - - name_template: "{{.Os}}-{{.Arch}}{{if .Arm}}v{{.Arm}}{{end}}-{{ .ProjectName }}" + - name_template: "{{.Os}}-{{.Arch}}{{if .Arm}}v{{.Arm}}{{end}}-{{ .ProjectName }}" format: tar.gz format_overrides: - goos: windows @@ -57,12 +56,56 @@ release: prerelease: auto dockers: - - - goos: linux + - goos: linux goarch: amd64 - goarm: '' + goarm: "" + use: buildx image_templates: - - "hacdias/webdav:latest" - - "hacdias/webdav:{{ .Tag }}" - - "hacdias/webdav:v{{ .Major }}.{{ .Minor }}" - - "hacdias/webdav:v{{ .Major }}" + - "hacdias/webdav:amd64-latest" + - "hacdias/webdav:amd64-{{ .Tag }}" + - "hacdias/webdav:amd64-v{{ .Major }}.{{ .Minor }}" + - "hacdias/webdav:amd64-v{{ .Major }}" + - goos: linux + goarch: arm + goarm: 7 + use: buildx + build_flag_templates: + - "--platform=linux/arm/v7" + image_templates: + - "hacdias/webdav:armv7-latest" + - "hacdias/webdav:armv7-{{ .Tag }}" + - "hacdias/webdav:armv7-v{{ .Major }}.{{ .Minor }}" + - "hacdias/webdav:armv7-v{{ .Major }}" + - goos: linux + goarch: arm64 + goarm: "" + use: buildx + build_flag_templates: + - "--platform=linux/arm64" + image_templates: + - "hacdias/webdav:arm64-latest" + - "hacdias/webdav:arm64-{{ .Tag }}" + - "hacdias/webdav:arm64-v{{ .Major }}.{{ .Minor }}" + - "hacdias/webdav:arm64-v{{ .Major }}" + +docker_manifests: + - name_template: hacdias/webdav:latest + image_templates: + - hacdias/webdav:amd64-latest + - hacdias/webdav:armv7-latest + - hacdias/webdav:arm64-latest + - name_template: hacdias/webdav:{{ .Tag }} + image_templates: + - hacdias/webdav:amd64-{{ .Tag }} + - hacdias/webdav:armv7-{{ .Tag }} + - hacdias/webdav:arm64-{{ .Tag }} + - name_template: hacdias/webdav:v{{ .Major }}.{{ .Minor }} + image_templates: + - hacdias/webdav:amd64-v{{ .Major }}.{{ .Minor }} + - hacdias/webdav:armv7-v{{ .Major }}.{{ .Minor }} + - hacdias/webdav:arm64-v{{ .Major }}.{{ .Minor }} + - name_template: hacdias/webdav:v{{ .Major }} + image_templates: + - hacdias/webdav:amd64-v{{ .Major }} + - hacdias/webdav:armv7-v{{ .Major }} + - hacdias/webdav:arm64-v{{ .Major }}