FROM ubuntu:14.04                                                                                         
ENV ENVIRONMENT staging
ENV APP mekansm
ENV USE_VIRTUAL_ENV false
ENV PYTHON_PATH /usr

# Prerequisites
RUN apt-get update -y && apt-get install -y curl wget

# Install PostgreSQL
RUN echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list
RUN curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
RUN apt-get update -y
RUN apt-get upgrade -y
ENV PGVERSION 9.4
RUN apt-get install -y postgresql-${PGVERSION} postgresql-server-dev-${PGVERSION}
ENV PATH /usr/lib/postgresql/${PGVERSION}/bin:$PATH

# Install Go
ENV GO_VERSION 1.5.1
ENV GO_SHASUM 46eecd290d8803887dec718c691cc243f2175fe0
RUN wget -nv https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz
RUN echo "${GO_SHASUM}  go${GO_VERSION}.linux-amd64.tar.gz" | sha1sum --check
RUN tar -C /usr/local -xzf go${GO_VERSION}.linux-amd64.tar.gz
ENV GOPATH /go
ENV PATH /usr/local/go/bin:/go/bin/:${PATH}

# Install python
RUN apt-get install -y python python-dev python-pip python-tk

# Install mekansm prerequisites
RUN apt-get install -y libyaml-0-2 libyaml-dev

# Prep mekansm
ADD . /usr/src/mekansm
RUN cd /usr/src/mekansm && pip install -e .
ADD scripts/entrypoint.sh /entrypoint.sh

EXPOSE 8080
ENTRYPOINT ["/bin/bash", "/entrypoint.sh"]
