######### Base ##################################################################
FROM node:12.4.0-alpine as base

# Global install angular cli. Also we cannot use nexus in this project
RUN npm set progress=false && \
  npm install -g @angular/cli

# Define working directory.
WORKDIR /workspace

# A wildcard is used to ensure both package.json AND package-lock.json are copied
COPY package.json ./
COPY package-lock.json ./
# Copy configs
COPY tslint.json ./
COPY tsconfig.json ./

######### Prebuild ##############################################################
FROM base as prebuild
# using the -n switch because we don't want to send usage to google
RUN npm install -n

######### Build #################################################################
FROM prebuild as build

COPY src src
COPY angular.json ./
#ARG CLI_APP_NAME
#ARG CLI_ENVIRONMENT

# Build app
#RUN ng build --configuration=production
#RUN ng build ${CLI_APP_NAME} --aot --source-map false --output-hashing all --configuration=${CLI_ENVIRONMENT} --outputPath=dist-$CLI_ENVIRONMENT

RUN ng build platformselect --aot --source-map false --output-hashing all --configuration=masterplatformselect --outputPath=dist/masterplatformselect
RUN ng build verachtert --aot --source-map false --output-hashing all --configuration=masterverachtert --outputPath=dist/masterverachtert
RUN ng build claas --aot --source-map false --output-hashing all --configuration=masterclaas --outputPath=dist/masterclaas
RUN ng build tingley --aot --source-map false --output-hashing all --configuration=mastertingley --outputPath=dist/mastertingley
RUN ng build nlv --aot --source-map false --output-hashing all --configuration=masternlv --outputPath=dist/masternlv
RUN ng build troost --aot --source-map false --output-hashing all --configuration=mastertroost --outputPath=dist/mastertroost
RUN ng build toyota --aot --source-map false --output-hashing all --configuration=mastertoyota --outputPath=dist/mastertoyota
RUN ng build toro --aot --source-map false --output-hashing all --configuration=mastertoro --outputPath=dist/mastertoro

######### Production ############################################################
FROM base as prod

# Copy app bundle
#COPY --from=build /workspace/dist-$CLI_ENVIRONMENT dist-$CLI_ENVIRONMENT
COPY --from=build /workspace/dist dist