d2vm/.goreleaser.yaml

82 lines
2.1 KiB
YAML

# Copyright 2022 Linka Cloud All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
project_name: d2vm
before:
hooks:
- go mod tidy
- go generate ./...
- make completions
builds:
- main: ./cmd/d2vm
env:
- CGO_ENABLED=0
ldflags:
- -s -w -X "go.linka.cloud/d2vm.Image={{.Env.IMAGE}}" -X "go.linka.cloud/d2vm.Version={{.Env.VERSION}}" -X "go.linka.cloud/d2vm.BuildDate={{.CommitDate}}"
goos:
- linux
- windows
- darwin
goarch:
- amd64
- arm64
checksum:
name_template: 'checksums.txt'
signs:
- artifacts: all
stdin: '{{ .Env.GPG_PASSWORD }}'
snapshot:
name_template: "{{ .Env.VERSION }}"
release:
prerelease: auto
extra_files:
- glob: LICENCE
- glob: pgp.pub
archives:
- name_template: '{{ .ProjectName }}_{{ .Env.VERSION }}_{{ .Os }}_{{ .Arch }}{{ with .Arm }}v{{ . }}{{ end }}{{ with .Mips }}_{{ . }}{{ end }}{{ if not (eq .Amd64 "v1") }}{{ .Amd64 }}{{ end }}'
files:
- LICENCE
- README.md
- completions/*
brews:
- name: d2vm
tap:
owner: linka-cloud
name: homebrew-tap
folder: Formula
homepage: https://github.com/linka-cloud/d2vm
description: Build Virtual Machine Image from Dockerfile or Docker image
license: Apache License 2.0
test: |
system "#{bin}/d2vm --version"
dependencies:
- name: go
type: optional
- name: git
install: |-
bin.install "d2vm"
bash_completion.install "completions/d2vm.bash" => "d2vm"
zsh_completion.install "completions/d2vm.zsh" => "_d2vm"
fish_completion.install "completions/d2vm.fish"
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'
- '^tests:'
- '^actions:'
- '^Makefile:'
- '^chore:'
- '^goreleaser:'