ARG PARENT_IMAGE=086679231553.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:php82
FROM $PARENT_IMAGE AS parent

RUN yum -y update && yum clean all

# Install and configure apache and php packages
RUN yum -y install curl git httpd unzip zip
RUN yum -y install https://github.com/DataDog/dd-trace-php/releases/download/0.84.0/datadog-php-tracer-0.84.0-1.x86_64.rpm

# Set Datadog params
ENV DD_TRACE_ANALYTICS_ENABLED true
ENV DD_TRACE_APP_NAME dev-ows-legacy-images
ENV DD_TRACE_DEBUG false
ENV DD_TRACE_GLOBAL_TAGS env:dev-ows-legacy-images

# Set the default environment
ENV APPLICATION_ENV development
ENV Environment dev

# Set and prepare the app directory
ENV APP_HOME /var/www/images
RUN mkdir $APP_HOME && chown root:apache ${APP_HOME}

# Copy the app into the image
COPY --chown=root:apache . $APP_HOME
COPY deploy/entry_point.sh /usr/local/bin/entry_point.sh

WORKDIR $APP_HOME

RUN mkdir ~/.ssh && ssh-keyscan github.com >> ~/.ssh/known_hosts

# Install app and dependencies
RUN --mount=type=secret,id=COMPOSER_AUTH,required=true,uid=1010 COMPOSER_AUTH=$(cat /run/secrets/COMPOSER_AUTH) composer install --no-dev --no-autoloader
RUN composer dump-autoload --optimize

# Remove old and add new apache configs
RUN rm -rf \
  /etc/httpd/conf.modules.d \
  /etc/httpd/conf.d/php82-php.conf \
  /etc/httpd/conf.d/ssl.conf \
  /etc/httpd/conf.d/welcome.conf

COPY deploy/httpd.conf /etc/httpd/conf/httpd.conf

RUN yum clean all && rm -rf /var/cache/yum

STOPSIGNAL SIGWINCH

EXPOSE 80

ENTRYPOINT  ["/usr/local/bin/entry_point.sh"]
