Fix copy-resource issue of artifactbroker

  -- modification should be made in packages/pom.xml
     instead of the one in artifactbroker root

Change-Id: Ic2f3209b3a2249f7bbba1f4e6f08f6f20d964dcf
Issue-ID: MULTICLOUD-806
Signed-off-by: Liang Ding <liang.ding@intel.com>
diff --git a/artifactbroker/packages/docker/Dockerfile b/artifactbroker/packages/docker/Dockerfile
new file mode 100644
index 0000000..364acb9
--- /dev/null
+++ b/artifactbroker/packages/docker/Dockerfile
@@ -0,0 +1,41 @@
+FROM alpine:3.9
+
+ARG HTTP_PROXY=${HTTP_PROXY}
+ARG HTTPS_PROXY=${HTTPS_PROXY}
+ARG BUILD_VERSION=${BUILD_VERSION}
+ARG ARTIFACT_LOGS=/var/log/onap
+
+ENV http_proxy $HTTP_PROXY
+ENV https_proxy $HTTPS_PROXY
+ENV BUILD_VERSION ${BUILD_VERSION}
+ENV ARTIFACT_LOGS ${ARTIFACT_LOGS}
+
+ENV ARTIFACT_HOME=/opt/app/
+ENV ARTIFACT_DISTRIBUTION_HOME=${ARTIFACT_HOME}/distribution
+
+EXPOSE 9014
+
+RUN apk add --no-cache --update busybox-extras bash nss procps coreutils findutils grep zip unzip \
+                                curl wget openssh openjdk8 maven jq httpie py-pip
+
+RUN addgroup -S onap && \
+    adduser -S --shell /bin/bash -G onap onap
+
+RUN mkdir -p ${ARTIFACT_DISTRIBUTION_HOME} ${ARTIFACT_LOGS} ${ARTIFACT_HOME}/etc/ssl && \
+    chown  -R onap:onap ${ARTIFACT_HOME} ${ARTIFACT_DISTRIBUTION_HOME} ${ARTIFACT_LOGS}
+
+WORKDIR ${ARTIFACT_DISTRIBUTION_HOME}
+COPY ./multicloud-framework-artifactbroker-*.zip multicloud-framework-artifactbroker.zip
+RUN unzip -q -o -B multicloud-framework-artifactbroker.zip && \
+    rm -f multicloud-framework-artifactbroker.zip
+COPY artifact-dist.sh  bin/.
+#RUN tar xvfz /packages/policy-distribution.tar.gz --directory ${ARTIFACT_DISTRIBUTION_HOME}
+#RUN rm /packages/policy-distribution.tar.gz
+
+RUN  chmod +x bin/*.sh && \
+     cp ${ARTIFACT_DISTRIBUTION_HOME}/etc/ssl/* ${ARTIFACT_HOME}/etc/ssl && \
+     chown onap:onap ${ARTIFACT_HOME}/etc/ssl/*
+
+USER onap
+WORKDIR ${ARTIFACT_DISTRIBUTION_HOME}/bin
+ENTRYPOINT [ "bash", "./artifact-dist.sh" ]
diff --git a/artifactbroker/packages/docker/artifact-dist.sh b/artifactbroker/packages/docker/artifact-dist.sh
new file mode 100644
index 0000000..94c1dfc
--- /dev/null
+++ b/artifactbroker/packages/docker/artifact-dist.sh
@@ -0,0 +1,43 @@
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+#  Copyright (C) 2018 Ericsson. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+#
+
+JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk/
+ARTIFACT_DISTRIBUTION_HOME=/opt/app/distribution
+KEYSTORE="${ARTIFACT_HOME}/etc/ssl/policy-keystore"
+KEYSTORE_PASSWD="Pol1cy_0nap"
+TRUSTSTORE="${ARTIFACT_HOME}/etc/ssl/policy-truststore"
+TRUSTSTORE_PASSWD="Pol1cy_0nap"
+
+
+if [ "$#" -eq 1 ]; then
+    CONFIG_FILE=$1
+else
+    CONFIG_FILE=${CONFIG_FILE}
+fi
+
+if [ -z "$CONFIG_FILE" ]
+  then
+    CONFIG_FILE="$ARTIFACT_DISTRIBUTION_HOME/etc/defaultConfig.json"
+fi
+
+echo "Policy distribution config file: $CONFIG_FILE"
+
+$JAVA_HOME/bin/java -cp "$ARTIFACT_DISTRIBUTION_HOME/etc:$ARTIFACT_DISTRIBUTION_HOME/lib/*" -Djavax.net.ssl.keyStore="$KEYSTORE" -Djavax.net.ssl.keyStorePassword="$KEYSTORE_PASSWD" -Djavax.net.ssl.trustStore="$TRUSTSTORE" -Djavax.net.ssl.trustStorePassword="$TRUSTSTORE_PASSWD" org.onap.policy.distribution.main.startstop.Main -c $CONFIG_FILE
diff --git a/artifactbroker/packages/docker/build_image.sh b/artifactbroker/packages/docker/build_image.sh
new file mode 100755
index 0000000..e082e9b
--- /dev/null
+++ b/artifactbroker/packages/docker/build_image.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+# Copyright (c) 2017-2018 VMware, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
+DIRNAME=`dirname $0`
+DOCKER_BUILD_DIR=`cd $DIRNAME/; pwd`
+echo "DOCKER_BUILD_DIR=${DOCKER_BUILD_DIR}"
+cd ${DOCKER_BUILD_DIR}
+
+BUILD_ARGS="--no-cache"
+ORG="onap"
+VERSION="1.4.0-SNAPSHOT"
+STAGING_VERSION="1.4.0-STAGING"
+PROJECT="multicloud"
+IMAGE="framework-artifactbroker"
+DOCKER_REPOSITORY="nexus3.onap.org:10003"
+IMAGE_NAME="${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/${IMAGE}"
+
+if [ $HTTP_PROXY ]; then
+    BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}"
+fi
+if [ $HTTPS_PROXY ]; then
+    BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
+fi
+
+function build_image {
+    docker build ${BUILD_ARGS} -t ${IMAGE_NAME}:${VERSION} -t ${IMAGE_NAME}:latest -t ${IMAGE_NAME}:${STAGING_VERSION} .
+}
+
+function push_image {
+    docker push ${IMAGE_NAME}:${VERSION}
+    docker push ${IMAGE_NAME}:${STAGING_VERSION}
+    docker push ${IMAGE_NAME}:latest
+}
+
+build_image
+push_image
diff --git a/artifactbroker/packages/pom.xml b/artifactbroker/packages/pom.xml
index c5d98e7..297b455 100644
--- a/artifactbroker/packages/pom.xml
+++ b/artifactbroker/packages/pom.xml
@@ -82,4 +82,89 @@
             </plugin>
         </plugins>
     </build>
+    <profiles>
+        <profile>
+            <id>docker</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-resources-plugin</artifactId>
+                        <version>3.1.0</version>
+                        <executions>
+                            <execution>
+                                <id>copy-resources</id>
+                                <phase>install</phase>
+                                <goals>
+                                    <goal>copy-resources</goal>
+                                </goals>
+                                <configuration>
+                                    <overwrite>true</overwrite>
+                                    <nonFilteredFileExtensions>
+                                        <nonFilteredFileExtension>zip</nonFilteredFileExtension>
+                                        <nonFilteredFileExtension>jar</nonFilteredFileExtension>
+                                    </nonFilteredFileExtensions>
+                                    <outputDirectory>${project.basedir}/docker_target</outputDirectory>
+                                    <resources>
+                                        <resource>
+                                            <directory>${project.basedir}/docker</directory>
+                                            <filtering>true</filtering>
+                                        </resource>
+                                        <resource>
+                                            <directory>${project.basedir}/target</directory>
+                                            <filtering>true</filtering>
+                                            <includes>
+                                                 <include>*.zip</include>
+                                                 <include>*.jar</include>
+                                            </includes>
+                                        </resource>
+                                    </resources>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-antrun-plugin</artifactId>
+                        <version>1.6</version>
+                        <executions>
+                            <execution>
+                                <phase>install</phase>
+                                <inherited>false</inherited>
+                                <configuration>
+                                    <target>
+                                        <exec executable="docker">
+                                           <arg value="build"/>
+                                           <arg value="-t"/>
+                                           <arg value="${CONTAINER_PUSH_REGISTRY}/onap/multicloud/framework-artifactbroker:${project.version}"/>
+                                           <arg value="docker_target"/>
+                                        </exec>
+                                        <exec executable="docker">
+                                            <arg value="tag"/>
+                                            <arg value="${CONTAINER_PUSH_REGISTRY}/onap/multicloud/framework-artifactbroker:${project.version}"/>
+                                            <arg value="${CONTAINER_PUSH_REGISTRY}/onap/multicloud/framework-artifactbroker:latest"/>
+                                        </exec>
+                                        <exec executable="docker">
+                                            <arg value="push"/>
+                                            <arg value="${CONTAINER_PUSH_REGISTRY}/onap/multicloud/framework-artifactbroker:${project.version}"/>
+                                        </exec>
+                                        <exec executable="docker">
+                                            <arg value="push"/>
+                                            <arg value="${CONTAINER_PUSH_REGISTRY}/onap/multicloud/framework-artifactbroker:latest"/>
+                                        </exec>
+                                    </target>
+                                </configuration>
+                                <goals>
+                                    <goal>run</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+            <activation>
+                <activeByDefault>false</activeByDefault>
+            </activation>
+        </profile>
+    </profiles>
 </project>