github.com/amane3/goreleaser@v0.182.0/.goreleaser.yml (about)

     1  env:
     2    - GO111MODULE=on
     3    - GOPROXY=https://gocenter.io
     4  before:
     5    hooks:
     6      - go mod download
     7      - ./scripts/completions.sh
     8  builds:
     9  - env:
    10      - CGO_ENABLED=0
    11    goos:
    12      - linux
    13      - darwin
    14      - windows
    15    goarch:
    16      - 386
    17      - amd64
    18      - arm
    19      - arm64
    20    mod_timestamp: '{{ .CommitTimestamp }}'
    21    flags:
    22      - -trimpath
    23    ldflags:
    24      - -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{ .CommitDate }} -X main.builtBy=goreleaser
    25  checksum:
    26    name_template: '{{ .ProjectName }}_checksums.txt'
    27  changelog:
    28    sort: asc
    29    filters:
    30      exclude:
    31      - '^docs:'
    32      - '^test:'
    33      - Merge pull request
    34      - Merge branch
    35      - go mod tidy
    36  dockers:
    37  - image_templates:
    38    - 'goreleaser/goreleaser:{{ .Tag }}-amd64'
    39    - 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-amd64'
    40    - 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-amd64'
    41    - 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-amd64'
    42    - 'goreleaser/goreleaser:latest-amd64'
    43    - 'ghcr.io/goreleaser/goreleaser:latest-amd64'
    44    dockerfile: Dockerfile
    45    binaries:
    46    - goreleaser
    47    build_flag_templates:
    48    - "--pull"
    49    - "--label=org.opencontainers.image.created={{.Date}}"
    50    - "--label=org.opencontainers.image.name={{.ProjectName}}"
    51    - "--label=org.opencontainers.image.revision={{.FullCommit}}"
    52    - "--label=org.opencontainers.image.version={{.Version}}"
    53    - "--label=org.opencontainers.image.source={{.GitURL}}"
    54    - "--build-arg"
    55    - "ARCH=amd64"
    56    extra_files:
    57    - scripts/entrypoint.sh
    58  - image_templates:
    59    - 'goreleaser/goreleaser:{{ .Tag }}-arm64v8'
    60    - 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-arm64v8'
    61    - 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-arm64v8'
    62    - 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-arm64v8'
    63    - 'goreleaser/goreleaser:latest-arm64v8'
    64    - 'ghcr.io/goreleaser/goreleaser:latest-arm64v8'
    65    dockerfile: Dockerfile
    66    binaries:
    67    - goreleaser
    68    build_flag_templates:
    69    - "--pull"
    70    - "--label=org.opencontainers.image.created={{.Date}}"
    71    - "--label=org.opencontainers.image.name={{.ProjectName}}"
    72    - "--label=org.opencontainers.image.revision={{.FullCommit}}"
    73    - "--label=org.opencontainers.image.version={{.Version}}"
    74    - "--label=org.opencontainers.image.source={{.GitURL}}"
    75    - "--build-arg"
    76    - "ARCH=arm64v8"
    77    goarch: arm64
    78    extra_files:
    79    - scripts/entrypoint.sh
    80  docker_manifests:
    81  - name_template: 'goreleaser/goreleaser:{{ .Tag }}'
    82    image_templates:
    83    - 'goreleaser/goreleaser:{{ .Tag }}-amd64'
    84    - 'goreleaser/goreleaser:{{ .Tag }}-arm64v8'
    85  - name_template: 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}'
    86    image_templates:
    87    - 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-amd64'
    88    - 'ghcr.io/goreleaser/goreleaser:{{ .Tag }}-arm64v8'
    89  - name_template: 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}'
    90    image_templates:
    91    - 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-amd64'
    92    - 'goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-arm64v8'
    93  - name_template: 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}'
    94    image_templates:
    95    - 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-amd64'
    96    - 'ghcr.io/goreleaser/goreleaser:v{{ .Major }}.{{ .Minor }}-arm64v8'
    97  - name_template: 'goreleaser/goreleaser:latest'
    98    image_templates:
    99    - 'goreleaser/goreleaser:latest-amd64'
   100    - 'goreleaser/goreleaser:latest-arm64v8'
   101  - name_template: 'ghcr.io/goreleaser/goreleaser:latest'
   102    image_templates:
   103    - 'ghcr.io/goreleaser/goreleaser:latest-amd64'
   104    - 'ghcr.io/goreleaser/goreleaser:latest-arm64v8'
   105  archives:
   106    - name_template: '{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}'
   107      replacements:
   108        darwin: Darwin
   109        linux: Linux
   110        windows: Windows
   111        386: i386
   112        amd64: x86_64
   113      format_overrides:
   114      - goos: windows
   115        format: zip
   116      files:
   117        - README.md
   118        - LICENSE.md
   119        - completions/*
   120  brews:
   121    - tap:
   122        owner: goreleaser
   123        name: homebrew-tap
   124      folder: Formula
   125      homepage:  https://goreleaser.com
   126      description: Deliver Go binaries as fast and easily as possible
   127      license: MIT
   128      test: |
   129        system "#{bin}/goreleaser -v"
   130      dependencies:
   131      - name: go
   132      install: |-
   133        bin.install "goreleaser"
   134        bash_completion.install "completions/goreleaser.bash" => "goreleaser"
   135        zsh_completion.install "completions/goreleaser.zsh" => "_goreleaser"
   136        fish_completion.install "completions/goreleaser.fish"
   137  scoop:
   138    bucket:
   139      owner: goreleaser
   140      name: scoop-bucket
   141    homepage:  https://goreleaser.com
   142    description: Deliver Go binaries as fast and easily as possible
   143    license: MIT
   144  nfpms:
   145    - file_name_template: '{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}'
   146      homepage:  https://goreleaser.com
   147      description: Deliver Go binaries as fast and easily as possible
   148      maintainer: Carlos Alexandro Becker <root@carlosbecker.com>
   149      license: MIT
   150      vendor: GoReleaser
   151      formats:
   152      - apk
   153      - deb
   154      - rpm
   155      dependencies:
   156      - git
   157      recommends:
   158      - golang
   159  snapcrafts:
   160    - name_template: '{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}'
   161      summary: Deliver Go binaries as fast and easily as possible
   162      description: |
   163        GoReleaser builds Go binaries for several platforms, creates a GitHub
   164        release and then pushes a Homebrew formula to a repository. All that
   165        wrapped in your favorite CI.
   166      grade: stable
   167      confinement: classic
   168      publish: true