# This is an example .goreleaser.yml file with some sensible defaults. # Make sure to check the documentation at https://goreleaser.com project_name: go-judge before: hooks: # You may remove this if you don't use go modules. - go mod tidy - go mod download # you may remove this if you don't need go generate - go generate ./cmd/... builds: - env: - CGO_ENABLED=0 goos: - linux - windows - darwin goarch: - "386" - amd64 - arm - arm64 - riscv64 - loong64 - mips64le - ppc64le - s390x goarm: - "6" - "7" tags: - nomsgpack main: ./cmd/go-judge binary: go-judge archives: - files: - mount.yaml name_template: >- {{ .ProjectName }}_{{ .Version }}_ {{- if eq .Os "darwin" }}macOS {{- else }}{{ .Os }}{{ end }}_{{ .Arch }} {{- if .Arm }}v{{ .Arm }}{{ end }} - id: no_archive files: - mount.yaml format: binary name_template: >- {{ .ProjectName }}_{{ .Version }}_ {{- if eq .Os "darwin" }}macOS {{- else }}{{ .Os }}{{ end }}_{{ .Arch }} {{- if .Arm }}v{{ .Arm }}{{ end }} nfpms: - license: MIT maintainer: "criyle" formats: - apk - deb - rpm # nix: # - name: go-judge # license: "mit" dockers: - image_templates: - "criyle/go-judge:{{ .Tag }}-amd64" use: buildx dockerfile: "Dockerfile.goreleaser" goarch: amd64 extra_files: - "mount.yaml" build_flag_templates: - "--platform=linux/amd64" - image_templates: - "criyle/go-judge:{{ .Tag }}-arm64" use: buildx goarch: "arm64" dockerfile: "Dockerfile.goreleaser" extra_files: - "mount.yaml" build_flag_templates: - "--platform=linux/arm64" - image_templates: - "criyle/go-judge:{{ .Tag }}-arm" use: buildx goarch: "arm" goarm: "7" dockerfile: "Dockerfile.goreleaser" extra_files: - "mount.yaml" build_flag_templates: - "--platform=linux/arm/v7" - image_templates: - "criyle/go-judge:{{ .Tag }}-ppc64le" use: buildx dockerfile: "Dockerfile.goreleaser" goarch: ppc64le extra_files: - "mount.yaml" build_flag_templates: - "--platform=linux/ppc64le" - image_templates: - "criyle/go-judge:{{ .Tag }}-s390x" use: buildx dockerfile: "Dockerfile.goreleaser" goarch: s390x extra_files: - "mount.yaml" build_flag_templates: - "--platform=linux/s390x" # Debian is not supporting riscv64 on stable branch, skip it first # - image_templates: # - "criyle/go-judge:{{ .Tag }}-riscv64" # use: buildx # dockerfile: "Dockerfile.goreleaser" # goarch: riscv64 # extra_files: # - "mount.yaml" # build_flag_templates: # - "--platform=linux/riscv64" docker_manifests: - name_template: "criyle/go-judge:{{ .Tag }}" image_templates: - "criyle/go-judge:{{ .Tag }}-amd64" - "criyle/go-judge:{{ .Tag }}-arm64" - "criyle/go-judge:{{ .Tag }}-arm" - "criyle/go-judge:{{ .Tag }}-ppc64le" - "criyle/go-judge:{{ .Tag }}-s390x" # - "criyle/go-judge:{{ .Tag }}-riscv64" - name_template: "criyle/go-judge:latest" image_templates: - "criyle/go-judge:{{ .Tag }}-amd64" - "criyle/go-judge:{{ .Tag }}-arm64" - "criyle/go-judge:{{ .Tag }}-arm" - "criyle/go-judge:{{ .Tag }}-ppc64le" - "criyle/go-judge:{{ .Tag }}-s390x" # - "criyle/go-judge:{{ .Tag }}-riscv64" skip_push: auto checksum: name_template: "checksums.txt" snapshot: name_template: "{{ incpatch .Version }}-next" changelog: sort: asc filters: exclude: - "^docs:" - "^test:" release: github: owner: criyle name: go-judge