# This is an example .goreleaser.yml file with some sensible defaults. # Make sure to check the documentation at https://goreleaser.com before: hooks: # You may remove this if you don't use go modules. - go mod tidy # you may remove this if you don't need go generate - go generate ./... builds: - binary: openim-api id: openim-api main: ./cmd/openim-api/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-cmdutils id: openim-cmdutils main: ./cmd/openim-cmdutils/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-crontask id: openim-crontask main: ./cmd/openim-crontask/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-msggateway id: openim-msggateway main: ./cmd/openim-msggateway/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-msgtransfer id: openim-msgtransfer main: ./cmd/openim-msgtransfer/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-push id: openim-push main: ./cmd/openim-push/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-rpc-auth id: openim-rpc-auth main: ./cmd/openim-rpc/openim-rpc-auth/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-rpc-conversation id: openim-rpc-conversation main: ./cmd/openim-rpc/openim-rpc-conversation/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-rpc-friend id: openim-rpc-friend main: ./cmd/openim-rpc/openim-rpc-friend/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-rpc-group id: openim-rpc-group main: ./cmd/openim-rpc/openim-rpc-group/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-rpc-msg id: openim-rpc-msg main: ./cmd/openim-rpc/openim-rpc-msg/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-rpc-third id: openim-rpc-third main: ./cmd/openim-rpc/openim-rpc-third/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 - binary: openim-rpc-user id: openim-rpc-user main: ./cmd/openim-rpc/openim-rpc-user/main.go goos: - darwin - windows - linux goarch: - s390x - mips64 - mips64le - amd64 - ppc64le - arm64 goarm: - 6 - 7 archives: - format: tar.gz # this name template makes the OS and Arch compatible with the results of uname. name_template: >- {{ .ProjectName }}_ {{- title .Os }}_ {{- if eq .Arch "amd64" }}x86_64 {{- else if eq .Arch "386" }}i386 {{- else }}{{ .Arch }}{{ end }} {{- if .Arm }}v{{ .Arm }}{{ end }} # use zip for windows archives files: - LICENSE.txt - README.md - CHANGELOG/* - docs/* - src: "*.md" dst: docs # Strip parent folders when adding files to the archive. strip_parent: true # File info. # Not all fields are supported by all formats available formats. # # Default: copied from the source file info: # Templates: allowed (since v1.14) owner: root # Templates: allowed (since v1.14) group: root # Must be in time.RFC3339Nano format. # # Templates: allowed (since v1.14) mtime: "{{ .CommitDate }}" # File mode. mode: 0644 format_overrides: - goos: windows format: zip checksum: name_template: 'checksums.txt' snapshot: name_template: "{{ incpatch .Version }}-next" changelog: sort: asc filters: exclude: - '^docs:' - '^test:' # 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 # Default: './dist' dist: ./_output/dist