blob: 478bff806712b29125dbb3c6ed229483348f6e9e [file] [log] [blame]
David K. Bainbridgef0da8732016-06-01 16:15:37 -07001FROM ubuntu:14.04
2
3# Base image information borrowed by official golang wheezy Dockerfile
4RUN apt-get update && apt-get install -y --no-install-recommends \
5 g++ \
6 gcc \
7 libc6-dev \
8 make \
9 curl \
10 && rm -rf /var/lib/apt/lists/*
11
12ENV GOLANG_VERSION 1.6.2
13ENV GOLANG_DOWNLOAD_URL https://golang.org/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
14ENV GOLANG_DOWNLOAD_SHA256 e40c36ae71756198478624ed1bb4ce17597b3c19d243f3f0899bb5740d56212a
15
16RUN curl -kfsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz \
17 && echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - \
18 && tar -C /usr/local -xzf golang.tar.gz \
19 && rm golang.tar.gz
20
21ENV GOPATH /go
22ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
23
24RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH"
25
26# CORD Provisioner Dockerfile
27WORKDIR $GOPATH
28
29RUN apt-get update && \
30 apt-get install -y software-properties-common && \
31 apt-add-repository ppa:ansible/ansible && \
32 apt-get update -y -m && \
33 apt-get install -y git ansible
34
35RUN go get github.com/tools/godep
36ADD . $GOPATH/src/github.com/ciena/cord-provisioner
37
38WORKDIR $GOPATH/src/github.com/ciena/cord-provisioner
39RUN $GOPATH/bin/godep restore
40
41WORKDIR $GOPATH
42RUN go install github.com/ciena/cord-provisioner
43
44ENTRYPOINT ["$GOPATH/bin/cord-provisioner"]