diff --git a/.gitignore b/.gitignore index 88ddcdf4..f5889482 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ _output/ +dist/ diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 00000000..e35750c8 --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,45 @@ +project_name: kubectl-trace +builds: + - goos: + - linux + - darwin + - windows + goarch: + - amd64 + - 386 + main: ./cmd/kubectl-trace + env: + - GO111MODULE=on + - CGO_ENABLED=0 + ldflags: | + -X github.com/iovisor/kubectl-trace/pkg/version.buildTime={{ .Timestamp }} + -X github.com/iovisor/kubectl-trace/pkg/version.gitCommit={{ .Commit }} + -X github.com/iovisor/kubectl-trace/pkg/version.imageName={{ .Env.IMAGE_NAME }} + binary: kubectl-trace + - goos: + - linux + - darwin + - windows + goarch: + - amd64 + - 386 + main: ./cmd/trace-runner + env: + - GO111MODULE=on + - CGO_ENABLED=0 + ldflags: | + -X github.com/iovisor/kubectl-trace/pkg/version.buildTime={{ .Timestamp }} + -X github.com/iovisor/kubectl-trace/pkg/version.gitCommit={{ .Commit }} + -X github.com/iovisor/kubectl-trace/pkg/version.imageName={{ .Env.IMAGE_NAME }} + binary: trace-runner + +archive: + format_overrides: + - goos: windows + format: zip + +snapshot: + name_template: 'master' + +release: + disable: true diff --git a/.travis.yml b/.travis.yml index aec8509d..c22189be 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,10 +6,13 @@ go: - 1.11.4 services: - docker +before_install: + - go get github.com/goreleaser/goreleaser script: - make test - make _output/bin/kubectl-trace - ./hack/ci-build-image.sh - make integration +- make cross after_success: - ./hack/ci-release-image.sh diff --git a/Makefile b/Makefile index 6c31a5d9..0f0e154b 100644 --- a/Makefile +++ b/Makefile @@ -37,9 +37,14 @@ ${kubectl_trace}: ${trace_runner}: CGO_ENABLED=1 $(GO) build ${LDFLAGS} -o $@ ./cmd/trace-runner +.PHONY: cross +cross: + IMAGE_NAME=$(IMAGE_NAME) go run github.com/goreleaser/goreleaser --snapshot --rm-dist + .PHONY: clean clean: - rm -Rf _output + $(RM) -R _output + $(RM) -R dist .PHONY: image/build-init image/build-init: