ARG BASE_IMAGE
# BUILD STAGE AGS
FROM debian:11-slim AS AGSBUILDER

RUN export DEBIAN_FRONTEND=noninteractive; \
    apt-get update -qqy && apt-get -yqq install unzip && \
    mkdir -p /build/gs-api-explorer

### Copy the AGS war from the local context
COPY target/gs-api-explorer-*.war /build

RUN unzip -q /build/gs-api-explorer-*.war -d /build/gs-api-explorer && \
    chmod -R g-w,o= /build

# ACTUAL IMAGE
FROM ${BASE_IMAGE}

# Alfresco user does not have permissions to modify webapps or configuration. Switch to root.
# The access will be fixed after all operations are done.
USER root

COPY target/alfresco-governance-services-community-repo-*.amp /usr/local/tomcat/amps/

# Install amps on alfresco.war
RUN java -jar /usr/local/tomcat/alfresco-mmt/alfresco-mmt*.jar install \
              /usr/local/tomcat/amps \
              /usr/local/tomcat/webapps/alfresco -directory -nobackup

### Copy gs-api-explorer war into webapps folder
COPY --chown=root:Alfresco --from=AGSBUILDER /build/gs-api-explorer /usr/local/tomcat/webapps/gs-api-explorer

# All files in the tomcat folder must be owned by root user and Alfresco group as mentioned in the parent Dockerfile
RUN chgrp -R Alfresco /usr/local/tomcat && \
    find /usr/local/tomcat/webapps -type d -exec chmod 0750 {} \; && \
    find /usr/local/tomcat/webapps -type f -exec chmod 0640 {} \; && \
    chmod -R g+r /usr/local/tomcat/webapps

# Switching back to alfresco user after having added amps files to run the container as non-root
USER alfresco
