-
Notifications
You must be signed in to change notification settings - Fork 293
/
.goreleaser.yml
68 lines (68 loc) · 2.65 KB
/
.goreleaser.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# set environment variables to be used in the build process
env:
# enable GO111Modules if you are using Go1.11 modules in your project for dependency management
- GO111MODULE=on
# Disable CGO - We will go more into this later
- CGO_ENABLED=0
# before are hooks that will be run before any builds are done, so good to put install scripts and stuff that your builds need here
before:
hooks:
# Remove unused packaged from the build process
- go mod tidy
# You may remove this if you don't use go modules - Downloads all modules specified in go.mod
- go mod download
# buids. This is very basic, but there is a ton of customization you can do here.
# I would check out https://goreleaser.com/customization/ to learn more.
builds:
- env:
- CGO_ENABLED=0
# your entrypoint into your application
main: ./cmd/goclone/main.go
# the name of the binary that you want to generate - this will also be the binary name for when we get to homebrew...
# Example: goclone <url> where goclone is the name of the binary
binary: goclone
# The different tar archives to build for - includes naming customization and such :)
archives:
# default format for Mac (darwin) and Linux
- format: tar.gz
# if the OS is windows, we override and put everything in a .zip instead.
format_overrides:
- goos: windows
format: zip
# Just the naming convention for tarballs... Example: msconsole_1.0.0_darwin_64bit
name_template: '{{.ProjectName}}_{{.Version}}_{{.Os}}-{{.Arch}}'
# Replace the cryptic arch's with readable human naming conventions
replacements:
amd64: 64bit
386: 32bit
arm: ARM
arm64: ARM64
darwin: macOS
linux: Linux
windows: Windows
files:
- README.md
# The generated checksum after your build. No need to touch this unless you know what you are doing.
checksum:
name_template: 'checksums.txt'
# The name of the reason snapshot
snapshot:
name_template: '{{ .Tag }}-next'
# GoReleaser will generate you a changelog depending on the commits that you have created.
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'
- 'README'
- Merge pull request
- Merge branch
# Seperate repo that you need to create before you deploy.
brews:
- tap:
owner: imthaghost
name: homebrew-goclone
folder: Formula
homepage: https://github.com/imthaghost/goclone
description: Website Cloner - Utilizes powerful go routines to clone websites to your computer within seconds.