From c9fe2919e464da5a4d31e826c040d75a6ec541fc Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Sat, 16 Mar 2019 12:31:46 +0100 Subject: [PATCH 1/3] Bump Go version --- Dockerfile | 2 +- go.mod | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 909a48c..736b147 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # Build -FROM golang:1.11-stretch AS build +FROM golang:1.12-stretch AS build WORKDIR /go/src/github.com/mpolden/echoip COPY . . ENV GO111MODULE=on CGO_ENABLED=0 diff --git a/go.mod b/go.mod index 5d6095a..2d40e34 100644 --- a/go.mod +++ b/go.mod @@ -1,5 +1,5 @@ // +heroku install ./... -// +heroku goVersion go1.11 +// +heroku goVersion go1.12 module github.com/mpolden/echoip require ( From fd7e13c98e3186a86461d45bddf42682749fd153 Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Sat, 16 Mar 2019 15:14:32 +0100 Subject: [PATCH 2/3] Push to Docker Hub from Travis --- .travis.yml | 10 ++++++---- Makefile | 10 ++++++++++ 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index b9e5d87..8532002 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,7 +9,9 @@ env: - GO111MODULE=on deploy: - provider: heroku - app: ifconfig-co - api_key: - secure: IQG/ls5Zu0yua5Ynn5EL9JCPjo1/WcmS0z7BSaXWdgW+JIWFm7oF5z54bUZHl/q1tTuWzAJk59zSTYJijtQqh2Ssl3fLu3uFDwyJSrOuUu1akPlETam8NpdbH4lPkFp75JSDdDXV08c0APmeLL6gqRuTrUuufu69Wigjq4gLo+o= + - provider: script + script: make docker-push + - provider: heroku + app: ifconfig-co + api_key: + secure: IQG/ls5Zu0yua5Ynn5EL9JCPjo1/WcmS0z7BSaXWdgW+JIWFm7oF5z54bUZHl/q1tTuWzAJk59zSTYJijtQqh2Ssl3fLu3uFDwyJSrOuUu1akPlETam8NpdbH4lPkFp75JSDdDXV08c0APmeLL6gqRuTrUuufu69Wigjq4gLo+o= diff --git a/Makefile b/Makefile index ff5000e..ab606a4 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,4 @@ +DOCKER_IMAGE := mpolden/echoip OS := $(shell uname) ifeq ($(OS),Linux) TAR_OPTS := --wildcards @@ -31,3 +32,12 @@ $(databases): test ! -f data/GeoLite2-Country.mmdb || mv data/GeoLite2-Country.mmdb data/country.mmdb geoip-download: $(databases) + +docker-build: + docker build -t $(DOCKER_IMAGE) . + +docker-login: + @echo "$(DOCKER_PASSWORD)" | docker login -u "$(DOCKER_USERNAME)" --password-stdin + +docker-push: docker-build docker-login + docker push $(DOCKER_IMAGE) From 99f95561732661dc04323afe5275d53e1cfc3d82 Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Sat, 16 Mar 2019 18:08:10 +0100 Subject: [PATCH 3/3] Re-use Dockerfile when building on Travis --- .travis.yml | 12 +++++------- Dockerfile | 4 ++-- Makefile | 2 +- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index 8532002..d0bc237 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,12 +1,10 @@ -language: go +language: minimal -go: - - stable +services: + - docker -# Go module behaviour is disabled by default for packages inside GOPATH. -# Turn module support on explicitly: -env: - - GO111MODULE=on +script: + - make docker-build deploy: - provider: script diff --git a/Dockerfile b/Dockerfile index 736b147..eee3c56 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,8 +2,8 @@ FROM golang:1.12-stretch AS build WORKDIR /go/src/github.com/mpolden/echoip COPY . . -ENV GO111MODULE=on CGO_ENABLED=0 -RUN go install ./... +ENV GO111MODULE=on +RUN make # Run FROM scratch diff --git a/Makefile b/Makefile index ab606a4..6c234b5 100644 --- a/Makefile +++ b/Makefile @@ -39,5 +39,5 @@ docker-build: docker-login: @echo "$(DOCKER_PASSWORD)" | docker login -u "$(DOCKER_USERNAME)" --password-stdin -docker-push: docker-build docker-login +docker-push: docker-login docker push $(DOCKER_IMAGE)