# ============LICENSE_START=======================================================
# APPC
# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+# Copyright (C) 2017-2019 AT&T Intellectual Property. 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.
targetDir=${1:-${APPC_HOME}}
sdnc_targetDir=${1:-${SDNC_HOME}}
-#We are going to use a series of directories in the docker-stage folder to extract features to.
-#By extracting features into more than one directory, we can copy them into the docker image in
-#different parts, creating more even layer sizes in the docker image.
+#The featureDir holds the install-feature shell scripts for each feature
featureDir=$2/featureDir
-#This value determine how many feature directories we want. The featutures will be evenly split
-#into the number of directories specified. Any remainder will be put into the last directory.
-#IF THE FEATURES_DIRECTORY_COUNT IS CHANGED, THE DOCKERFILE MUST ALSO BE UPDATED SINCE IT CONTAINS
-#A COPY COMMAND FOR EACH FEATURE DIRECTORY!! See the Dockerfile for more information.
-FEATURE_DIRECTORY_COUNT=4
+#The repoDir is where the classes are extracted to. This will be merged with the opendaylight
+# system directory.
+repoDir=$2/repoDir
+
APPC_FEATURES=" \
appc-core \
appc-sdc-listener \
appc-lifecycle-management \
appc-provider \
- appc-event-listener \
appc-dispatcher \
appc-chef-adapter \
appc-netconf-adapter \
appc-rest-adapter \
- appc-dmaap-adapter \
appc-dg-util \
appc-metric \
appc-dg-shared \
appc-aai-client \
appc-network-inventory-client \
appc-design-services \
- appc-interfaces-service"
+ appc-interfaces-service \
+ appc-service-communicator"
-FEATURES_PER_DIRECTORY=$(($(echo $APPC_FEATURES|wc -w)/$FEATURE_DIRECTORY_COUNT))
APPC_VERSION=${APPC_VERSION:-0.0.1}
APPC_CDT_VERSION=${APPC_CDT_VERSION:-0.0.1}
APPC_OAM_VERSION=${APPC_OAM_VERSION:-0.1.1}
-AAF_SHIRO_VERSION=${AAF_SHIRO_VERSION:-2.1.0-SNAPSHOT}
+#AAF_SHIRO_VERSION=${AAF_SHIRO_VERSION:-2.1.7-SNAPSHOT}
+
+tmpDir=/tmp/appc-${APPC_VERSION}
if [ ! -d ${targetDir} ]
then
mkdir -p ${targetDir}
fi
+if [ ! -d ${tmpDir} ]
+then
+ mkdir -p ${tmpDir}
+fi
+
cwd=$(pwd)
mavenOpts="-s ${SETTINGS_FILE} -gs ${GLOBAL_SETTINGS_FILE}"
-cd /tmp
+cd ${tmpDir}
echo "Installing APP-C version ${APPC_VERSION}"
-
-#The math for splitting up the features into folders
-featureNumber=1
-featureDirNumber=1
for feature in ${APPC_FEATURES}
do
-if (( $featureDirNumber < $FEATURE_DIRECTORY_COUNT ))
-then
- if (( $featureNumber > $FEATURES_PER_DIRECTORY ))
- then
- featureDirNumber=$(($featureDirNumber+1))
- featureNumber=1
- fi
-fi
-
- rm -f /tmp/${feature}-installer*.zip
- mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc:${feature}-installer:${APPC_VERSION}:zip -DoutputDirectory=/tmp -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.ssl.insecure=true
- unzip -d ${featureDir}$featureDirNumber /tmp/${feature}-installer*zip
-featureNumber=$(($featureNumber+1))
+ rm -f ${tmpDir}/${feature}-installer*.zip
+ mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc:${feature}-installer:${APPC_VERSION}:zip -DoutputDirectory=${tmpDir} -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.ssl.insecure=true
+ unzip -d ${featureDir} ${tmpDir}/${feature}-installer*zip
+ unzip -n -d ${repoDir} ${featureDir}/${feature}/${feature}*zip
+ rm -f ${featureDir}/${feature}/${feature}*zip
done
echo "Installing platform-logic for APP-C"
-rm -f /tmp/platform-logic-installer*.zip
-mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc.deployment:platform-logic-installer:${APPC_OAM_VERSION}:zip -DoutputDirectory=/tmp -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.ssl.insecure=true
-unzip -d ${targetDir} /tmp/platform-logic-installer*.zip
+rm -f ${tmpDir}/platform-logic-installer*.zip
+cp ${cwd}/../../platform-logic/installer/target/platform-logic-installer-${APPC_OAM_VERSION}.zip ${tmpDir}
+unzip -d ${targetDir} ${tmpDir}/platform-logic-installer*.zip
echo "Downloading dg-loader DGs from nexus"
-mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc:appc-dg-provider:${APPC_VERSION} -DoutputDirectory=/tmp
-unzip -d ${targetDir}/svclogic/graphs/appc/json /tmp/appc-dg-provider*.jar json/**
+mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc:appc-dg-provider:${APPC_VERSION} -DoutputDirectory=${tmpDir}
+unzip -d ${targetDir}/svclogic/graphs/appc/json ${tmpDir}/appc-dg-provider*.jar json/**
mv ${targetDir}/svclogic/graphs/appc/json/json ${targetDir}/svclogic/graphs/appc/json/dg-loader-dgs
echo "Downloading dg-loader-provider jar from nexus"
mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc.plugins:dg-loader-provider:${APPC_VERSION}:jar:jar-with-dependencies -DoutputDirectory=${targetDir}/data
mv ${targetDir}/data/dg-loader-provider-*-jar-with-dependencies.jar ${targetDir}/data/dg-loader-provider-jar-with-dependencies.jar
-echo "Downloading aaf-cadi-shiro from nexus"
-mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.aaf.authz:aaf-shiro-aafrealm-osgi-bundle:${AAF_SHIRO_VERSION} -DoutputDirectory=${targetDir}/data
-mv ${targetDir}/data/aaf-shiro-aafrealm-osgi-bundle-*.jar ${targetDir}/data/aaf-shiro-aafrealm-osgi-bundle.jar
+# installed from CCSDK in El Alto release
+#echo "Downloading aaf-cadi-shiro from nexus"
+#mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.aaf.cadi:aaf-shiro-aafrealm-osgi-bundle:${AAF_SHIRO_VERSION} -DoutputDirectory=${targetDir}/data
+#mv ${targetDir}/data/aaf-shiro-aafrealm-osgi-bundle-*.jar ${targetDir}/data/aaf-shiro-aafrealm-osgi-bundle.jar
echo "Setting keyfile to readonly"
chmod 400 ${targetDir}/data/stores/org.onap.appc.keyfile
mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc.cdt:cdt-proxy-service:${APPC_CDT_VERSION} -DoutputDirectory=${targetDir}/cdt-proxy-service
mv ${targetDir}/cdt-proxy-service/cdt-proxy-service-*.jar ${targetDir}/cdt-proxy-service/cdt-proxy-service.jar
+echo "Downloading Dmaap Service Jar from nexus"
+mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc.services.dmaap:dmaap-event-service:${APPC_VERSION} -DoutputDirectory=${targetDir}/dmaap-event-service
+mv ${targetDir}/dmaap-event-service/dmaap-event-service-*.jar ${targetDir}/dmaap-event-service/dmaap-event-service.jar
+
find ${targetDir} -name '*.sh' -exec chmod +x '{}' \;
cd $cwd