FROM php:7.1-cli

RUN apt-get update \
  && apt-get -y install \
    curl \
    git \
    libcurl3 \
    unzip \
    wget \
    zip \
  && rm -rf /var/lib/apt/lists/*

# Install PHP extensions.
RUN docker-php-ext-install sockets

# Download and install Composer.
COPY ./docker/install-composer.sh /tmp/install-composer.sh
RUN chmod +x /tmp/install-composer.sh; sync \
  && /tmp/install-composer.sh \
  && rm /tmp/install-composer.sh

# Install Chrome and dependencies.

# See https://crbug.com/795759
RUN DEBIAN_FRONTEND=noninteractive && \
  apt-get update && \
  apt-get -y install \
    libgconf-2-4 && \
  rm -rf /var/lib/apt/lists/*

RUN apt-get update && apt-get install -y wget --no-install-recommends \
  && wget --no-check-certificate -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - \
  && sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \
  && apt-get update \
  && apt-get install -y google-chrome-unstable \
    --no-install-recommends \
  && rm -rf /var/lib/apt/lists/* \
  && rm -rf /src/*.deb

# Install Fonts
RUN apt-get update \
  && apt-get -y install \
    cabextract \
    xfonts-utils \
  && rm -rf /var/lib/apt/lists/*

RUN wget --no-check-certificate http://ftp.us.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb && \
  dpkg -i ttf-mscorefonts-installer_3.6_all.deb

################################################################################
# Development Environment Only. Omit this section for production.
#
# Install Xdebug for PHPUnit.
RUN yes | pecl install xdebug \
  && echo "zend_extension=$(find /usr/local/lib/php/extensions/ -name xdebug.so)" > /usr/local/etc/php/conf.d/xdebug.ini
# Add symlink for phpunit for easier running.
RUN ln -s /usr/local/src/devtools/vendor/bin/phpunit /usr/local/bin/phpunit
################################################################################

# Add devtools user.
RUN groupadd -r devtools \
  && useradd -r -g devtools -G audio,video devtools \
  && mkdir -p /home/devtools/Downloads \
  && chown -R devtools:devtools /home/devtools

# Add the project directory.
RUN mkdir /usr/local/src/devtools \
  && chown -R devtools:devtools /usr/local/src/devtools

# Copy source code.
COPY ./src /usr/local/src/devtools/src
COPY ./test /usr/local/src/devtools/test
COPY ./composer.* /usr/local/src/devtools/
COPY ./phpunit.xml.dist /usr/local/src/devtools/

WORKDIR /usr/local/src/devtools

USER devtools

# Install Composer dependencies.
RUN composer install
