Skip to content

Commit ca4b853

Browse files
mrnuggetunknwon
andauthored
Use goreleaser to build releases and also publish Homebrew formula (#134)
* Add .goreleaser.yml for brew * Run goreleaser on travis * Update .goreleaser.yml Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <joe@sourcegraph.com> * Move env vars into one setting * Fix ldflags in goreleaser config * Change goreleaser config to use binary releases * Add new GITHUB_TOKEN to .travis.yml * Create tarballs with goreleaser for Homebrew formula Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
1 parent 7c48c47 commit ca4b853

3 files changed

Lines changed: 55 additions & 15 deletions

File tree

.goreleaser.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
dist: release
2+
env:
3+
- GO111MODULE=on
4+
- CGO_ENABLED=0
5+
before:
6+
hooks:
7+
- go mod download
8+
- go mod tidy
9+
builds:
10+
-
11+
main: ./cmd/src/
12+
binary: src
13+
ldflags:
14+
- -X main.buildTag={{.Version}}
15+
goos:
16+
- linux
17+
- windows
18+
- darwin
19+
goarch:
20+
- amd64
21+
archives:
22+
- id: tarball
23+
format: tar.gz
24+
- id: bin
25+
format: binary
26+
wrap_in_directory: false
27+
name_template: "src_{{ .Os }}_{{ .Arch }}"
28+
brews:
29+
-
30+
name: src-cli
31+
homepage: "https://sourcegraph.com/"
32+
description: "Sourcegraph CLI"
33+
github:
34+
owner: sourcegraph
35+
name: homebrew-src-cli
36+
# Folder inside the repository to put the formula.
37+
# Default is the root folder.
38+
folder: Formula
39+
changelog:
40+
sort: asc
41+
filters:
42+
exclude:
43+
- '^docs:'
44+
- '^test:'

.travis.yml

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,21 @@
11
language: go
22
go:
3-
- 1.13.x
3+
- 1.13.x
44
go_import_path: github.com/sourcegraph/src-cli
55
install:
6-
- go get -d -t ./...
7-
- go test -i ./...
8-
- go get -u github.com/mitchellh/gox
9-
- mkdir release
10-
- cd release && gox -ldflags="-X 'main.buildTag=`git tag --contains $(git rev-parse HEAD) | grep -v latest | tail -1`'" -arch 'amd64' -os 'linux windows darwin' ../cmd/...
6+
- go get -d -t ./...
7+
- go test -i ./...
118
script:
12-
- cd $TRAVIS_BUILD_DIR
13-
- go test -race -v ./...
9+
- cd $TRAVIS_BUILD_DIR
10+
- go test -race -v ./...
11+
env:
12+
global:
13+
- secure: eFuG5PSCXNz0i4Knic0wVmTko+O/epoLWpDtDs7jGHo3UD0JIukDTeIoHRPF56LEF3ZmfJWarc0XWZRSUmtn2EYydvCrTlroXLe6lfiFL/ctH0CWpArCp5xHQKVqKk+h6F53hAva3o181PfnFtk58H/xgj2jo8sANbqXricnL5aT34RVje85483poL2RLmd2WiYVqDqeGdkg7DaorpJra1mFvOCmInrbMpexpomJKmpCbxzrdvUmvRE9bDWLHctgvWL6bVTsQNzUN0zh6AIfT0FuFmiwjVlD5d4Bo10jUucg1qs4gglHneplPMoQb3dW7reeE1hIjuZSjXmDZKwYaonpuy8lsEJTEZpo18obYfRP9fjJZJb71rQ/sjbAd2EEV84r13k4JcprUp4uFd/LgUpHNwyRxnm2bKneHSpf9eb0D+A6Kzxkix/vSJeH8G/pHc07mYtf1rqMG57eVeeVinAFbGsvmggQfFGXupW3c48VYS6TTUmcUv0B7jiDHEdFG1zRXElX48S6HJnhI4531jxbEsvgBt63sR5wH5dZv++VodzznwjaJ4LJv+bxZEtswhNA/nzxGCk9vNDkhPxpS531mNAyfV2ewJ81QW94BuWh0dTfo6gVypCS/2xI8L2I2sqs5vk2iCr51WJDL79yLXRP6QhXLcr8jgDpBQMNbpE=
1414
deploy:
15-
provider: releases
16-
api_key:
17-
secure: UoKg6fE1QlXTrYdY+AdaQ8WogXEydYhb5MTbabLbpC7byuopM/FHPXOTJ97+bsYgaVH3sElDJR1+v3PLm5lDeM9o2l1/HnfZK5M5iiNrktxNUOo+ppX6i4ylQ+AHEgRUc5zS3hYkNbXRu4IVULevmHsCUX1MchI7t+56uVZkSE3yFxGi8jTUm/cAyFX6MNyuOGXRlew2ivgKhJ/OT0ebxWaCxz/sn5H+1Cmr7r7Pf45vx9XpbY2wd7NqwsFa+w42z2hvEurzM91ZTJzo68hEGPcQoczobyzn37sDiqak0OoTUJ1tHCL/cgWN8tXgWXDGF3isXJ/yquoBCFvIaZTayV7mKu44ABIfLR4e0gj5vWV2Vv2yhbIaH52HnC5CvSsLkDxllCpFllJ8Nh6QAD2oP30c9Af+d4fgPWJ2WSFfx16vNOqONw6y0/FQ34HHmcek2KpPWZdSIbm6IVsMw3V8ThUWz1XXO6DE03jnk88y/LrIFuu+E1RLzgfmBo3NNb5GwcgrTm3v3ti0ObRPC1Cfyr3g2FoCfs+3I8ecrKs8Md9Pf5gN/xevHzLnTPj6Yq976ElympPnPeXTekF26ymsMJUvNj+2WZogEYFp5xkeXfvnQUTOgQVQn5FTWVf0/h4Dgy6j8JT1YUmdAeqZkfLi0xWWkMOnm0ofvU6gglELDS4=
18-
file_glob: true
19-
file: release/*
15+
- provider: script
16+
script: curl -sL https://git.io/goreleaser | bash
2017
overwrite: true
2118
skip_cleanup: true
2219
on:
2320
tags: true
21+
condition: "$TRAVIS_OS_NAME = linux"

go.sum

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@ github.com/gogo/protobuf v1.1.1 h1:72R+M5VuhED/KujmZVcIquuo8mBgX4oVda//DQb3PXo=
88
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
99
github.com/gogo/protobuf v1.3.1 h1:DqDEcV5aeaTmdFBePNpYsp3FlcVH/2ISVVM9Qf8PSls=
1010
github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
11-
github.com/gosuri/uilive v0.0.4 h1:hUEBpQDj8D8jXgtCdBu7sWsy5sbW/5GhuO8KBwJ2jyY=
12-
github.com/gosuri/uilive v0.0.4/go.mod h1:V/epo5LjjlDE5RJUcqx8dbw+zc93y5Ya3yg8tfZ74VI=
1311
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
1412
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
1513
github.com/hashicorp/go-multierror v1.0.0 h1:iVjPR7a6H0tWELX5NxNe7bYopibicUzc7uPribsnS6o=

0 commit comments

Comments
 (0)