[CORD-2188] Multi-stage build for vee gui extension
Change-Id: I34897bc65b0708d155e17d8edfd82fe79d3230d8
(cherry picked from commit 204811e3dd7bd5c669ec61dc4c3893ed221e5280)
diff --git a/xos/gui/Dockerfile b/xos/gui/Dockerfile
index a99062f..8d86b0f 100755
--- a/xos/gui/Dockerfile
+++ b/xos/gui/Dockerfile
@@ -1,41 +1,43 @@
-FROM xosproject/xos-gui-extension-builder:candidate
+# xosproject/gui-extension-vnaas-base
+FROM xosproject/xos-gui-builder:candidate as xos-vnaas-base
-# Set environment vars
ENV CODE_SOURCE .
ENV CODE_DEST /var/www
ENV VHOST /var/www/dist
-# Add the app deps
COPY ${CODE_SOURCE}/package.json ${CODE_DEST}/package.json
COPY ${CODE_SOURCE}/typings.json ${CODE_DEST}/typings.json
-# Install Deps
WORKDIR ${CODE_DEST}
RUN npm install
RUN npm run typings
-# Build the app
COPY ${CODE_SOURCE}/conf ${CODE_DEST}/conf
COPY ${CODE_SOURCE}/gulp_tasks ${CODE_DEST}/gulp_tasks
COPY ${CODE_SOURCE}/src ${CODE_DEST}/src
COPY ${CODE_SOURCE}/gulpfile.js ${CODE_DEST}/gulpfile.js
COPY ${CODE_SOURCE}/tsconfig.json ${CODE_DEST}/tsconfig.json
COPY ${CODE_SOURCE}/tslint.json ${CODE_DEST}/tslint.json
+RUN npm run build
-# Label image
+# xosproject/gui-extension-vnaas
+FROM alpine:latest
+
+ENV VHOST /var/www/dist
+WORKDIR ${VHOST}
+
+COPY --from=xos-vnaas-base ${VHOST} /tmp
+
ARG org_label_schema_schema_version=1.0
-ARG org_label_schema_name=gui-extension-vnaas
+ARG org_label_schema_name=xos-gui-extension-vnaas
ARG org_label_schema_version=unknown
ARG org_label_schema_vcs_url=unknown
ARG org_label_schema_vcs_ref=unknown
ARG org_label_schema_build_date=unknown
ARG org_opencord_vcs_commit_date=unknown
-ARG org_opencord_component_chameleon_version=unknown
-ARG org_opencord_component_chameleon_vcs_url=unknown
-ARG org_opencord_component_chameleon_vcs_ref=unknown
-ARG org_opencord_component_xos_version=unknown
-ARG org_opencord_component_xos_vcs_url=unknown
-ARG org_opencord_component_xos_vcs_ref=unknown
+ARG org_opencord_component_xos_gui_vcs_ref=unknown
+ARG org_opencord_component_xos_gui_vcs_url=unknown
+ARG org_opencord_component_xos_gui_version=unknown
LABEL org.label-schema.schema-version=$org_label_schema_schema_version \
org.label-schema.name=$org_label_schema_name \
@@ -44,11 +46,6 @@
org.label-schema.vcs-ref=$org_label_schema_vcs_ref \
org.label-schema.build-date=$org_label_schema_build_date \
org.opencord.vcs-commit-date=$org_opencord_vcs_commit_date \
- org.opencord.component.chameleon.version=$org_opencord_component_chameleon_version \
- org.opencord.component.chameleon.vcs-url=$org_opencord_component_chameleon_vcs_url \
- org.opencord.component.chameleon.vcs-ref=$org_opencord_component_chameleon_vcs_ref \
- org.opencord.component.xos.version=$org_opencord_component_xos_version \
- org.opencord.component.xos.vcs-url=$org_opencord_component_xos_vcs_url \
- org.opencord.component.xos.vcs-ref=$org_opencord_component_xos_vcs_ref
-
-RUN npm run build
+ org.opencord.component.xos-gui.vcs-ref=$org_opencord_component_xos_gui_vcs_ref \
+ org.opencord.component.xos-gui.vcs-url=$org_opencord_component_xos_gui_vcs_url \
+ org.opencord.component.xos-gui.version=$org_opencord_component_xos_gui_version