daf2b9ab8770f248cf5076e9756577b9e23bf0af
[appc/deployment.git] / installation / appc / src / main / scripts / installZips.sh
1 #!/bin/bash
2
3 ###
4 # ============LICENSE_START=======================================================
5 # APPC
6 # ================================================================================
7 # Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved.
8 # ================================================================================
9 # Licensed under the Apache License, Version 2.0 (the "License");
10 # you may not use this file except in compliance with the License.
11 # You may obtain a copy of the License at
12
13 #      http://www.apache.org/licenses/LICENSE-2.0
14
15 # Unless required by applicable law or agreed to in writing, software
16 # distributed under the License is distributed on an "AS IS" BASIS,
17 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 # See the License for the specific language governing permissions and
19 # limitations under the License.
20 # ============LICENSE_END=========================================================
21 ###
22
23 if [ -z "$SETTINGS_FILE" -a -z "$GLOBAL_SETTINGS_FILE" -a -s "$HOME"/.m2/settings.xml ]
24 then
25   DEFAULT_MAVEN_SETTINGS=${HOME}/.m2/settings.xml
26   SETTINGS_FILE=${SETTINGS_FILE:-${DEFAULT_MAVEN_SETTINGS}}
27   GLOBAL_SETTINGS_FILE=${GLOBAL_SETTINGS_FILE:-${DEFAULT_MAVEN_SETTINGS}}
28 fi
29
30 APPC_HOME=${APPC_HOME:-/opt/onap/appc}
31 SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
32
33 targetDir=${1:-${APPC_HOME}}
34 sdnc_targetDir=${1:-${SDNC_HOME}}
35
36 #The featureDir holds the install-feature shell scripts for each feature
37 featureDir=$2/featureDir
38
39 #The repoDir is where the classes are extracted to. This will be merged with the opendaylight
40 #  system directory.
41 repoDir=$2/repoDir
42
43
44 APPC_FEATURES=" \
45  appc-core \
46  appc-sdc-listener \
47  appc-lifecycle-management \
48  appc-provider \
49  appc-event-listener \
50  appc-dispatcher \
51  appc-chef-adapter \
52  appc-netconf-adapter \
53  appc-rest-adapter \
54  appc-dmaap-adapter \
55  appc-dg-util \
56  appc-metric \
57  appc-dg-shared \
58  appc-iaas-adapter \
59  appc-ansible-adapter \
60  appc-oam \
61  appc-sequence-generator \
62  appc-config-generator \
63  appc-config-data-services \
64  appc-artifact-handler \
65  appc-config-adaptor \
66  appc-config-audit \
67  appc-config-encryption-tool \
68  appc-config-flow-controller \
69  appc-config-params \
70  appc-aai-client \
71  appc-network-inventory-client \
72  appc-design-services \
73  appc-interfaces-service"
74
75
76 APPC_VERSION=${APPC_VERSION:-0.0.1}
77 APPC_CDT_VERSION=${APPC_CDT_VERSION:-0.0.1}
78 APPC_OAM_VERSION=${APPC_OAM_VERSION:-0.1.1}
79 #AAF_SHIRO_VERSION=${AAF_SHIRO_VERSION:-2.1.7-SNAPSHOT}
80
81 tmpDir=/tmp/appc-${APPC_VERSION}
82
83 if [ ! -d ${targetDir} ]
84 then
85   mkdir -p ${targetDir}
86 fi
87
88 if [ ! -d ${tmpDir} ]
89 then
90   mkdir -p ${tmpDir}
91 fi
92
93 cwd=$(pwd)
94
95 mavenOpts="-s ${SETTINGS_FILE} -gs ${GLOBAL_SETTINGS_FILE}"
96 cd ${tmpDir}
97
98 echo "Installing APP-C version ${APPC_VERSION}"
99 for feature in ${APPC_FEATURES}
100 do
101   rm -f ${tmpDir}/${feature}-installer*.zip
102   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
103   unzip -d ${featureDir} ${tmpDir}/${feature}-installer*zip
104   unzip -n -d ${repoDir} ${featureDir}/${feature}/${feature}*zip
105   rm -f ${featureDir}/${feature}/${feature}*zip
106 done
107
108 echo "Installing platform-logic for APP-C"
109 rm -f ${tmpDir}/platform-logic-installer*.zip
110 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=${tmpDir} -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.ssl.insecure=true
111 unzip -d ${targetDir} ${tmpDir}/platform-logic-installer*.zip
112
113 echo "Downloading dg-loader DGs from nexus"
114 mvn -U ${mavenOpts} org.apache.maven.plugins:maven-dependency-plugin:2.9:copy -Dartifact=org.onap.appc:appc-dg-provider:${APPC_VERSION} -DoutputDirectory=${tmpDir}
115 unzip -d ${targetDir}/svclogic/graphs/appc/json ${tmpDir}/appc-dg-provider*.jar json/**
116 mv ${targetDir}/svclogic/graphs/appc/json/json ${targetDir}/svclogic/graphs/appc/json/dg-loader-dgs
117
118 echo "Downloading dg-loader-provider jar from nexus"
119 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
120 mv ${targetDir}/data/dg-loader-provider-*-jar-with-dependencies.jar ${targetDir}/data/dg-loader-provider-jar-with-dependencies.jar
121
122 # installed from CCSDK in El Alto release
123 #echo "Downloading aaf-cadi-shiro from nexus"
124 #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
125 #mv ${targetDir}/data/aaf-shiro-aafrealm-osgi-bundle-*.jar ${targetDir}/data/aaf-shiro-aafrealm-osgi-bundle.jar
126
127 echo "Setting keyfile to readonly"
128 chmod 400 ${targetDir}/data/stores/org.onap.appc.keyfile
129
130 echo "Downloading CDT Proxy Jar from nexus"
131 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
132 mv ${targetDir}/cdt-proxy-service/cdt-proxy-service-*.jar ${targetDir}/cdt-proxy-service/cdt-proxy-service.jar
133
134 find ${targetDir} -name '*.sh' -exec chmod +x '{}' \;
135
136 cd $cwd
137