# -------------
# Build stage

FROM golang:1.10.7-alpine AS build-env

# Install required packages
RUN apk add --no-cache wget git make build-base protobuf protobuf-dev

# Install protobuf requirements
RUN git clone https://github.com/googleapis/googleapis.git /usr/local/include/googleapis
RUN go get github.com/golang/protobuf/protoc-gen-go
RUN go get google.golang.org/genproto/googleapis/api/annotations

# Prepare directory structure
RUN ["mkdir", "-p", "/src", "src/protos"]
RUN ["mkdir", "-p", "$GOPATH/src", "$GOPATH/pkg", "$GOPATH/bin"]
RUN ["mkdir", "-p", "$GOPATH/src/github.com/opencord/voltha/protos/go"]

WORKDIR $GOPATH/src/github.com/opencord/voltha-go

# Copy files
ADD adapters/simulated_olt ./adapters/simulated_olt
ADD adapters/common ./adapters/common
ADD adapters/*.go ./adapters/
ADD common ./common
ADD db ./db
ADD kafka ./kafka
ADD vendor ./vendor

# Install the protoc-gen-go
RUN go install ./vendor/github.com/golang/protobuf/protoc-gen-go

# Copy required proto files
# ... VOLTHA proos
ADD protos/*.proto /src/protos/
ADD protos/scripts/* /src/protos/

# Compile protobuf files
RUN sh /src/protos/build_protos.sh /src/protos

# Build simulated_olt
RUN cd adapters/simulated_olt && go build -o /src/simulated_olt

# -------------
# Image creation stage

FROM alpine:3.8

# Set the working directory
WORKDIR /app

# Copy required files
COPY --from=build-env /src/simulated_olt /app/

