Skip to content

Commit da3d952

Browse files
authored
1 parent abc544b commit da3d952

8 files changed

+47
-117
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
.DS_Store
22
.env
3+
/dbmate
34
/dist
45
/testdata/db/schema.sql
56
/vendor

Dockerfile

+9-13
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# build image
2-
FROM golang:1.10 as build
2+
FROM golang:1.11 as build
33

44
# required to force cgo (for sqlite driver) with cross compile
55
ENV CGO_ENABLED 1
@@ -13,21 +13,17 @@ RUN apt-get update \
1313
&& rm -rf /var/lib/apt/lists/*
1414

1515
# development dependencies
16-
RUN curl -fsSL -o /usr/local/bin/dep https://github.com/golang/dep/releases/download/v0.3.2/dep-linux-amd64 \
17-
&& chmod +x /usr/local/bin/dep
18-
RUN go get gopkg.in/alecthomas/gometalinter.v2 \
19-
&& gometalinter.v2 --install
16+
RUN curl -fsSL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh \
17+
| sh -s v1.12.3
2018

2119
# copy source files
22-
COPY . /go/src/github.com/amacneil/dbmate
23-
WORKDIR /go/src/github.com/amacneil/dbmate
20+
COPY . /src
21+
WORKDIR /src
2422

2523
# build
26-
RUN make dep install build
24+
RUN make build
2725

2826
# runtime image
29-
FROM debian:stretch-slim
30-
COPY --from=build /go/src/github.com/amacneil/dbmate/dist/dbmate-linux-amd64 \
31-
/usr/local/bin/dbmate
32-
WORKDIR /app
33-
ENTRYPOINT ["/usr/local/bin/dbmate"]
27+
FROM gcr.io/distroless/base
28+
COPY --from=build /src/dist/dbmate-linux-amd64 /dbmate
29+
ENTRYPOINT ["/dbmate"]

Gopkg.lock

-63
This file was deleted.

Gopkg.toml

-26
This file was deleted.

Makefile

+5-14
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,21 @@
11
DC := docker-compose
22
BUILD_FLAGS := -ldflags '-s'
3-
PACKAGES := . ./pkg/...
43

54
.PHONY: all
6-
all: dep install test lint build
7-
8-
.PHONY: dep
9-
dep:
10-
dep ensure -vendor-only
11-
12-
.PHONY: install
13-
install:
14-
go install -v $(PACKAGES)
5+
all: test lint build
156

167
.PHONY: test
178
test:
18-
go test -v $(PACKAGES)
9+
go test -v ./...
1910

2011
.PHONY: lint
2112
lint:
22-
gometalinter.v2 $(PACKAGES)
13+
golangci-lint run
2314

2415
.PHONY: wait
2516
wait:
26-
dbmate -e MYSQL_URL wait
27-
dbmate -e POSTGRESQL_URL wait
17+
dist/dbmate-linux-amd64 -e MYSQL_URL wait
18+
dist/dbmate-linux-amd64 -e POSTGRESQL_URL wait
2819

2920
.PHONY: clean
3021
clean:

docker-compose.override.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ version: '2.3'
44
services:
55
dbmate:
66
volumes:
7-
- .:/go/src/github.com/amacneil/dbmate
7+
- .:/src

go.mod

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
module github.com/amacneil/dbmate
2+
3+
require (
4+
github.com/davecgh/go-spew v1.1.0 // indirect
5+
github.com/go-sql-driver/mysql v0.0.0-20180113200744-2cc627ac8def
6+
github.com/joho/godotenv v1.2.0
7+
github.com/lib/pq v0.0.0-20180123210206-19c8e9ad0095
8+
github.com/mattn/go-sqlite3 v1.6.0
9+
github.com/pmezard/go-difflib v1.0.0 // indirect
10+
github.com/stretchr/testify v1.2.0
11+
github.com/urfave/cli v1.20.0
12+
google.golang.org/appengine v1.0.0 // indirect
13+
)

go.sum

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
2+
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
3+
github.com/go-sql-driver/mysql v0.0.0-20180113200744-2cc627ac8def h1:S5Q9hDt/aa5nJp7+qwsNSKi9KIlEoSBaNdjyKS44OAQ=
4+
github.com/go-sql-driver/mysql v0.0.0-20180113200744-2cc627ac8def/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
5+
github.com/joho/godotenv v1.2.0 h1:vGTvz69FzUFp+X4/bAkb0j5BoLC+9bpqTWY8mjhA9pc=
6+
github.com/joho/godotenv v1.2.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg=
7+
github.com/lib/pq v0.0.0-20180123210206-19c8e9ad0095 h1:Do4XI4HSm+8jdo6z1Zk0CQDgqoAMwWew3ksTcDDSWiA=
8+
github.com/lib/pq v0.0.0-20180123210206-19c8e9ad0095/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
9+
github.com/mattn/go-sqlite3 v1.6.0 h1:TDwTWbeII+88Qy55nWlof0DclgAtI4LqGujkYMzmQII=
10+
github.com/mattn/go-sqlite3 v1.6.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc=
11+
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
12+
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
13+
github.com/stretchr/testify v1.2.0 h1:LThGCOvhuJic9Gyd1VBCkhyUXmO8vKaBFvBsJ2k03rg=
14+
github.com/stretchr/testify v1.2.0/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
15+
github.com/urfave/cli v1.20.0 h1:fDqGv3UG/4jbVl/QkFwEdddtEDjh/5Ov6X+0B/3bPaw=
16+
github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA=
17+
google.golang.org/appengine v1.0.0 h1:dN4LljjBKVChsv0XCSI+zbyzdqrkEwX5LQFUMRSGqOc=
18+
google.golang.org/appengine v1.0.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=

0 commit comments

Comments
 (0)