From 6af86e31a292bfef4a06fbd8f27a85637e271b01 Mon Sep 17 00:00:00 2001
From: Anit Gandhi <anitgandhi@gmail.com>
Date: Tue, 9 Apr 2019 16:57:54 -0400
Subject: [PATCH] build and packaging updates

1. Update Dockerfile.dapper to install Go 1.12, separate go gets for better image layer caching

2. replace ubuntu image with simple alpine base image

3. add linker flag -w for smaller binary

4. gitignore some generated files
---
 .gitignore         | 4 ++++
 Dockerfile.dapper  | 4 ++--
 package/Dockerfile | 9 +++------
 scripts/build      | 2 +-
 4 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/.gitignore b/.gitignore
index f1c181ec..cb26edc8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,3 +10,7 @@
 
 # Output of the go coverage tool, specifically when used with LiteIDE
 *.out
+
+*dapper*
+!Dockerfile.dapper
+bin/
\ No newline at end of file
diff --git a/Dockerfile.dapper b/Dockerfile.dapper
index 98ddb2c8..809ad154 100644
--- a/Dockerfile.dapper
+++ b/Dockerfile.dapper
@@ -19,8 +19,8 @@ RUN wget -O - ${!DOCKER_URL} > /usr/bin/docker && chmod +x /usr/bin/docker
 ENV GOLANG_ARCH_amd64=amd64 GOLANG_ARCH_arm=armv6l GOLANG_ARCH=GOLANG_ARCH_${ARCH} \
     GOPATH=/go PATH=/go/bin:/usr/local/go/bin:${PATH} SHELL=/bin/bash
 
-RUN wget -O - https://storage.googleapis.com/golang/go1.11.linux-${!GOLANG_ARCH}.tar.gz | tar -xzf - -C /usr/local && \
-    go get github.com/rancher/trash && go get github.com/golang/lint/golint
+RUN wget -O - https://storage.googleapis.com/golang/go1.12.linux-${!GOLANG_ARCH}.tar.gz | tar -xzf - -C /usr/local
+RUN go get github.com/rancher/trash && go get golang.org/x/lint/golint
 
 ENV DAPPER_SOURCE /go/src/github.com/rancher/local-path-provisioner
 ENV DAPPER_OUTPUT ./bin
diff --git a/package/Dockerfile b/package/Dockerfile
index 47b6353f..042162e5 100644
--- a/package/Dockerfile
+++ b/package/Dockerfile
@@ -1,8 +1,5 @@
-FROM ubuntu:16.04
+FROM alpine:latest
 
-RUN apt-get update && apt-get install -y curl vim nfs-common iproute dnsutils iputils-ping telnet
+COPY bin /bin
 
-COPY bin /usr/local/sbin/
-
-VOLUME /usr/local/sbin
-CMD ["local-path-provisioner"]
+ENTRYPOINT ["/bin/local-path-provisioner"]
diff --git a/scripts/build b/scripts/build
index 12f20ef6..7ae6e279 100755
--- a/scripts/build
+++ b/scripts/build
@@ -5,5 +5,5 @@ cd $(dirname $0)/..
 VERSION=${VERSION:-$(./scripts/version)}
 
 mkdir -p bin
-[ "$(uname)" != "Darwin" ] && LINKFLAGS="-extldflags -static -s"
+[ "$(uname)" != "Darwin" ] && LINKFLAGS="-extldflags -static -s -w"
 CGO_ENABLED=0 go build -ldflags "-X main.VERSION=$VERSION $LINKFLAGS" -o bin/local-path-provisioner
-- 
GitLab