FROM cypress/browsers:node14.16.0-chrome89-ff86

ARG packagechanged
ARG node_env
ARG server_protocol
ARG server_host
ARG server_port
ARG client_protocol
ARG client_host
ARG client_port
ARG use_colab_email
ARG flax_site_url

ENV NODE_ENV "development"
ENV SERVER_PROTOCOL "http"
ENV SERVER_HOST "0.0.0.0"
ENV SERVER_PORT "3000"
ENV CLIENT_PROTOCOL "http"
ENV CLIENT_HOST "0.0.0.0"
ENV CLIENT_PORT "4000"
ENV HOME "/home/simplej"
ENV USE_COLAB_EMAIL $use_colab_email
ENV FLAX_SITE_URL $flax_site_url

RUN mkdir -p ${HOME}
WORKDIR ${HOME}

# Only copy things needed for the yarn install
COPY package.json yarn.lock ./

# We do a development install because react-styleguidist is a dev dependency and we want to run tests
RUN if [ -z "$packagechanged" ] ; then echo packagechanged not provided ; else [ "yarn", "install", "--frozen-lockfile" ] ; fi

ENV NODE_ENV ${NODE_ENV}

# Disabling the build for now, as it runs in the test server again
# RUN [ "npx", "pubsweet", "build"]

# The copy everything else that changes frequently
COPY . .
EXPOSE ${PORT}

CMD []

