Skip to content

Commit e2a037e

Browse files
committed
update to use gopkg, tweak build
1 parent f918719 commit e2a037e

File tree

7 files changed

+59
-34
lines changed

7 files changed

+59
-34
lines changed

.dockerignore

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
*
2+
!docker-root

.gitignore

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
bin
2+
pkg
3+
src
4+
docker-root
5+
dfpp

Dockerfile

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
FROM scratch
2+
COPY docker-root/ /
3+
WORKDIR /root
4+
ENTRYPOINT ["/bin/dfpp"]

Makefile

+42-27
Original file line numberDiff line numberDiff line change
@@ -1,61 +1,76 @@
11
PLATFORMS= \
2-
freebsd-386 \
32
freebsd-amd64 \
4-
freebsd-arm \
5-
linux-386 \
63
linux-amd64 \
7-
linux-arm \
8-
openbsd-386 \
9-
openbsd-amd64 \
10-
windows-386 \
114
windows-amd64 \
12-
darwin-386 \
135
darwin-amd64 \
146
$(NULL)
157

16-
DIST=$(shell pwd)/dist
17-
export GOPATH=$(shell pwd)
18-
GOBIN ?= $(shell pwd)
8+
NAME = dfpp
9+
DIST = $(shell pwd)/dist
10+
GOPATH = $(shell pwd)
11+
GOBIN ?= $(shell pwd)
12+
BIN ?= $(GOBIN)/$(NAME)
13+
CURVER ?= $(shell git describe --abbrev=0 --tags)
14+
NEWVER ?= $(shell echo $(CURVER) | awk -F. '{print $$1"."$$2"."$$3+1}')
15+
TODAY := $(shell date +%Y-%m-%d)
1916

20-
build:
21-
go get -v github.com/coryb/dfpp
22-
go build -o $(GOBIN)/dfpp main/main.go
17+
export GOPATH
18+
19+
build: src/gopkg.in/coryb/dfpp.v1
20+
go build -ldflags "-w -s" -o $(BIN) main/main.go
21+
22+
src/%:
23+
mkdir -p $(@D)
24+
test -L $@ || ln -sf ../../.. $@
25+
go get -v $* $*/main
2326

2427
install:
25-
export GOBIN=~/bin && ${MAKE} build
28+
${MAKE} GOBIN=~/bin build
29+
30+
vet:
31+
@go tool vet *.go main/*.go
32+
33+
clean:
34+
rm -rf pkg dist bin src ./$(NAME)
2635

2736
cross-setup:
2837
for p in $(PLATFORMS); do \
2938
echo "Building for $$p"; \
30-
cd $(GOROOT)/src && sudo GOOS=$${p/-*/} GOARCH=$${p/*-/} bash ./make.bash --no-clean; \
39+
cd $(GOROOT)/src && sudo GOROOT_BOOTSTRAP=$(GOROOT) GOOS=$${p/-*/} GOARCH=$${p/*-/} bash ./make.bash --no-clean; \
3140
done
3241

3342
all:
3443
rm -rf $(DIST); \
3544
mkdir -p $(DIST); \
36-
go get -d; \
3745
for p in $(PLATFORMS); do \
3846
echo "Building for $$p"; \
39-
GOOS=$${p/-*/} GOARCH=$${p/*-/} go build -v -ldflags -s -o $(DIST)/dfpp-$$p main/main.go; \
40-
done
47+
${MAKE} build GOOS=$${p/-*/} GOARCH=$${p/*-/} BIN=$(DIST)/$(NAME)-$$p; \
48+
done
4149

4250
fmt:
4351
gofmt -s -w *.go main/*.go
4452

45-
CURVER ?= $(shell git fetch --tags && git tag | gsort -V | tail -1)
46-
NEWVER ?= $(shell echo $(CURVER) | awk -F. '{print $$1"."$$2"."$$3+1}')
47-
TODAY := $(shell date +%Y-%m-%d)
48-
4953
changes:
50-
@git log --pretty=format:"* %s [%cn] [%h]" --no-merges ^$(CURVER) HEAD *.go main/*.go | grep -vE 'gofmt|go fmt'
54+
@git log --pretty=format:"* %s [%cn] [%h]" --no-merges ^$(CURVER) HEAD main/*.go *.go | grep -vE 'gofmt|go fmt'
5155

5256
update-changelog:
5357
@echo "# Changelog" > CHANGELOG.md.new; \
5458
echo >> CHANGELOG.md.new; \
5559
echo "## $(NEWVER) - $(TODAY)" >> CHANGELOG.md.new; \
5660
echo >> CHANGELOG.md.new; \
57-
$(MAKE) changes | \
61+
$(MAKE) --no-print-directory --silent changes | \
5862
perl -pe 's{\[([a-f0-9]+)\]}{[[$$1](https://github.com/coryb/dfpp/commit/$$1)]}g' | \
5963
perl -pe 's{\#(\d+)}{[#$$1](https://github.com/coryb/dfpp/issues/$$1)}g' >> CHANGELOG.md.new; \
60-
tail +2 CHANGELOG.md >> CHANGELOG.md.new; \
61-
mv CHANGELOG.md.new CHANGELOG.md
64+
tail -n +2 CHANGELOG.md >> CHANGELOG.md.new; \
65+
mv CHANGELOG.md.new CHANGELOG.md; \
66+
git commit -m "Updated Changelog" CHANGELOG.md; \
67+
git tag v$(NEWVER)
68+
69+
version:
70+
@echo $(patsubst v%,%,$(CURVER))
71+
72+
docker:
73+
mkdir -p docker-root/bin docker-root/etc/ssl/certs
74+
/usr/bin/security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain > docker-root/etc/ssl/certs/ca-certificates.crt
75+
${MAKE} GOBIN=./docker-root/bin GOOS=linux GOARCH=amd64 build
76+
docker build -t coryb/dfpp:$(patsubst v%,%,$(CURVER)) .

dfpp.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package dfpp
33
import (
44
"bufio"
55
"fmt"
6-
"github.com/op/go-logging"
6+
"gopkg.in/op/go-logging.v1"
77
"io"
88
"io/ioutil"
99
"net/http"
@@ -123,19 +123,19 @@ func (pp *Dfpp) ProcessInclude(line string, fields []string) bool {
123123
if _, err := os.Stat(uri); err == nil {
124124
content, err := ioutil.ReadFile(uri)
125125
if err != nil {
126-
log.Error("Failed to read %s: %s", uri, err)
126+
log.Errorf("Failed to read %s: %s", uri, err)
127127
os.Exit(1)
128128
}
129129
docs = append(docs, string(content))
130130
} else {
131131
req, _ := http.NewRequest("GET", uri, nil)
132132
ua := &http.Client{}
133133
if resp, err := ua.Do(req); err != nil {
134-
log.Error("Failed to %s %s: %s", req.Method, req.URL.String(), err)
134+
log.Errorf("Failed to %s %s: %s", req.Method, req.URL.String(), err)
135135
os.Exit(1)
136136
} else {
137137
if resp.StatusCode < 200 || resp.StatusCode >= 300 && resp.StatusCode != 401 {
138-
log.Error("response status: %s", resp.Status)
138+
log.Errorf("response status: %s", resp.Status)
139139
}
140140
runtime.SetFinalizer(resp, func(r *http.Response) {
141141
r.Body.Close()

main/main.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ package main
33
import (
44
"fmt"
55
"github.com/andrew-d/go-termutil"
6-
"github.com/coryb/dfpp"
7-
"github.com/op/go-logging"
6+
"gopkg.in/coryb/dfpp.v1"
7+
"gopkg.in/op/go-logging.v1"
88
"os"
99
)
1010

src/github.com/coryb/dfpp

-1
This file was deleted.

0 commit comments

Comments
 (0)