@@ -7,9 +7,8 @@ DOCKER_IMAGE = $(DOCKER_REGISTRY)/$(DOCKER_NAME):$(VERSION)
7
7
DOCKER_IMAGE_LATEST = $(DOCKER_REGISTRY ) /$(DOCKER_NAME ) :latest
8
8
9
9
SHELL := /usr/bin/env bash
10
- GO := GO15VENDOREXPERIMENT=1 go
10
+ GO := go
11
11
FIRST_GOPATH := $(firstword $(subst :, ,$(GOPATH ) ) )
12
- PROMU := $(FIRST_GOPATH ) /bin/promu
13
12
FILES = $(shell find . -name '* .go' | grep -v vendor)
14
13
PREFIX ?= $(shell pwd)
15
14
BIN_DIR ?= $(shell pwd)
@@ -26,95 +25,88 @@ BINNAME = exporter_exporter
26
25
27
26
PWD := $(shell pwd)
28
27
29
- # V := 1 # When V is set, print commands and build progress.
30
- Q := $(if $V,,@)
31
-
32
28
all : package
33
29
clean :
34
- $Q rm -f $(PACKAGE_FILE )
35
- $Q rm -rf dist
36
- $Q rm -rf build
30
+ rm -f $(PACKAGE_FILE )
31
+ rm -rf dist
32
+ rm -rf build
37
33
38
34
.PHONY : test
39
35
test :
40
- $Q echo " >> running short tests"
41
- $Q $ (GO ) test -short $(pkgs )
36
+ echo " >> running short tests"
37
+ $(GO ) test -short $(pkgs )
42
38
43
39
.PHONY : test-static
44
40
test-static :
45
- $Q echo " >> running static tests"
46
- $Q $ (GO ) vet $(pkgs )
47
- $Q [[ " $( shell gofmt -l $( files) ) " == " " ]] || (echo " gofmt check failed" ; exit 1)
41
+ echo " >> running static tests"
42
+ $(GO ) vet $(pkgs )
43
+ [[ " $( shell gofmt -l $( files) ) " == " " ]] || (echo " gofmt check failed" ; exit 1)
48
44
49
45
.PHONY : format
50
46
format :
51
- $Q echo " >> formatting code"
52
- $Q $ (GO ) fmt $(pkgs )
47
+ echo " >> formatting code"
48
+ $(GO ) fmt $(pkgs )
53
49
54
50
.PHONY : vet
55
51
vet :
56
- $Q echo " >> vetting code"
57
- $Q $ (GO ) vet $(pkgs )
52
+ echo " >> vetting code"
53
+ $(GO ) vet $(pkgs )
58
54
59
- vendor : Gopkg.lock Gopkg.toml
60
- dep ensure -v
55
+ vendor : go.mod go.sum
56
+ go mod vendor
61
57
62
58
.PHONY : build
63
59
build : vendor promu
64
- $Q echo " >> building binaries"
65
- $Q $( PROMU ) build --prefix $(PREFIX )
60
+ echo " >> building binaries"
61
+ ./promu build --prefix $(PREFIX )
66
62
67
63
.PHONY : tarball
68
64
tarball : promu
69
- $Q echo " >> building release tarball"
70
- $Q $( PROMU ) tarball --prefix $(PREFIX ) $(BIN_DIR )
65
+ echo " >> building release tarball"
66
+ ./promu tarball --prefix $(PREFIX ) $(BIN_DIR )
71
67
72
68
.PHONY : promu
73
69
promu :
74
- $Q echo " >> fetching promu"
75
- $Q GOOS=$(shell uname -s | tr A-Z a-z) \
76
- GOARCH=$(subst x86_64,amd64,$(patsubst i% 86,386,$(shell uname -m) ) ) \
77
- $(GO ) get -u github.com/prometheus/promu
70
+ echo " >> fetching promu"
71
+ $(GO ) build -o promu github.com/prometheus/promu
78
72
79
73
.PHONY : github-release
80
74
github-release :
81
- $Q echo " >> fetching github-release"
82
- $Q GOOS=$(shell uname -s | tr A-Z a-z) \
83
- GOARCH=$(subst x86_64,amd64,$(patsubst i% 86,386,$(shell uname -m) ) ) \
84
- $(GO ) get -u github.com/aktau/github-release
75
+ echo " >> fetching github-release"
76
+ $(GO ) build -o github-release github.com/aktau/github-release
85
77
86
78
.PHONY : release
87
79
release : promu github-release package
88
- $Q echo " >> crossbuilding binaries"
89
- $Q promu crossbuild
90
- $Q echo " >> crossbuilding tarballs"
91
- $Q promu crossbuild tarballs
92
- $Q echo " >> creating github release"
93
- $Q github-release release -u $(GITHUB_ORG ) -r $(GITHUB_REPO ) --tag v$(VERSION ) --name v$(VERSION )
94
- $Q echo " >> uploading artifacts"
95
- $Q promu release .tarballs
96
- $Q echo " >> uploading deb"
97
- $Q github-release upload -u $(GITHUB_ORG ) -r $(GITHUB_REPO ) --tag v$(VERSION ) --name $(PACKAGE_FILE ) --file $(PACKAGE_FILE )
80
+ echo " >> crossbuilding binaries"
81
+ promu crossbuild
82
+ echo " >> crossbuilding tarballs"
83
+ promu crossbuild tarballs
84
+ echo " >> creating github release"
85
+ ./ github-release release -u $(GITHUB_ORG ) -r $(GITHUB_REPO ) --tag v$(VERSION ) --name v$(VERSION )
86
+ echo " >> uploading artifacts"
87
+ promu release .tarballs
88
+ echo " >> uploading deb"
89
+ ./ github-release upload -u $(GITHUB_ORG ) -r $(GITHUB_REPO ) --tag v$(VERSION ) --name $(PACKAGE_FILE ) --file $(PACKAGE_FILE )
98
90
99
91
.PHONY : prepare-package clean-package package
100
92
prepare-package : clean-package
101
- $Q echo " >> crossbuilding binaries"
102
- $Q promu crossbuild -p linux/amd64
103
- $Q mkdir -p dist/usr/local/bin
104
- $Q mkdir -p dist/etc/init
105
- $Q mkdir -p dist/etc/default
106
- $Q mkdir -p dist/etc/exporter_exporter.d/
107
- $Q install -m755 .build/linux-amd64/$(BINNAME ) dist/usr/local/bin/$(BINNAME )
108
- $Q install -m644 $(BINNAME ) .conf dist/etc/init/$(BINNAME ) .conf
109
- $Q install -m644 $(BINNAME ) .defaults dist/etc/default/$(BINNAME )
110
- $Q install -m644 expexp.yaml dist/etc/exporter_exporter.yaml
111
- $Q touch dist/etc/exporter_exporter.d/.dir
93
+ echo " >> crossbuilding binaries"
94
+ promu crossbuild -p linux/amd64
95
+ mkdir -p dist/usr/local/bin
96
+ mkdir -p dist/etc/init
97
+ mkdir -p dist/etc/default
98
+ mkdir -p dist/etc/exporter_exporter.d/
99
+ install -m755 .build/linux-amd64/$(BINNAME ) dist/usr/local/bin/$(BINNAME )
100
+ install -m644 $(BINNAME ) .conf dist/etc/init/$(BINNAME ) .conf
101
+ install -m644 $(BINNAME ) .defaults dist/etc/default/$(BINNAME )
102
+ install -m644 expexp.yaml dist/etc/exporter_exporter.yaml
103
+ touch dist/etc/exporter_exporter.d/.dir
112
104
113
105
clean-package :
114
- $Q rm -rf dist
106
+ rm -rf dist
115
107
116
108
package : prepare-package
117
- $Q cd dist && \
109
+ cd dist && \
118
110
fpm \
119
111
-t $(PACKAGE_TARGET ) \
120
112
-m $(PACKAGE_MAINTAINER ) \
@@ -127,12 +119,10 @@ package: prepare-package
127
119
.
128
120
129
121
.PHONY : build-docker release-docker
130
- build-docker : promu
131
- $Q echo " >> crossbuilding binaries"
132
- $Q promu crossbuild -p linux/amd64
133
- $Q docker build -t $(DOCKER_IMAGE ) .
122
+ build-docker :
123
+ docker build -t $(DOCKER_IMAGE ) .
134
124
135
125
release-docker : build-docker
136
- $Q docker push $(DOCKER_IMAGE )
137
- $Q docker tag $(DOCKER_IMAGE ) $(DOCKER_IMAGE_LATEST )
138
- $Q docker push $(DOCKER_IMAGE_LATEST )
126
+ docker push $(DOCKER_IMAGE )
127
+ docker tag $(DOCKER_IMAGE ) $(DOCKER_IMAGE_LATEST )
128
+ docker push $(DOCKER_IMAGE_LATEST )
0 commit comments