From df9cfd75a1897bd9d890de238d98db72b55d2669 Mon Sep 17 00:00:00 2001 From: Aaron Hay Date: Wed, 16 Jan 2019 14:20:38 -0500 Subject: Feature install odl-netconf-clustered-topology Install the odl-netconf-clustered-topology feature for clustered environments. Change-Id: Ic369fcbb962c9494dd6e165e38829cc55915689c Issue-ID: APPC-1242 Signed-off-by: Aaron Hay --- .../appc/opt/onap/appc/bin/installFeatures.sh | 184 +++++++++++++++++++++ kubernetes/appc/templates/statefulset.yaml | 3 + kubernetes/appc/values.yaml | 2 +- 3 files changed, 188 insertions(+), 1 deletion(-) create mode 100755 kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installFeatures.sh diff --git a/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installFeatures.sh b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installFeatures.sh new file mode 100755 index 0000000000..724f4e767d --- /dev/null +++ b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installFeatures.sh @@ -0,0 +1,184 @@ +#!/bin/bash + +### +# ============LICENSE_START======================================================= +# APPC +# ================================================================================ +# Copyright (C) 2017 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. +# 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. +# ============LICENSE_END========================================================= +# ECOMP is a trademark and service mark of AT&T Intellectual Property. +### + +ODL_HOME=${ODL_HOME:-/opt/opendaylight/current} +APPC_HOME=${APPC_HOME:-/opt/onap/appc} +ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false} +APPC_FEATURE_DIR=${APPC_FEATURE_DIR:-${APPC_HOME}/features} + +function featureInstall { +COUNT=0 +while [ $COUNT -lt 10 ]; do + ${ODL_HOME}/bin/client feature:install $1 2> /tmp/installErr + cat /tmp/installErr + if grep -q 'Failed to get the session' /tmp/installErr; then + sleep 10 + else + let COUNT=10 + fi + let COUNT=COUNT+1 +done +} + + APPC_FEATURES=" \ + appc-metric \ + appc-dmaap-adapter \ + appc-chef-adapter \ + appc-netconf-adapter \ + appc-rest-adapter \ + appc-lifecycle-management \ + appc-dispatcher \ + appc-provider \ + appc-dg-util \ + appc-dg-shared \ + appc-sdc-listener \ + appc-oam \ + appc-iaas-adapter \ + appc-ansible-adapter \ + appc-sequence-generator \ + appc-artifact-handler \ + appc-aai-client" + +APPC_FEATURES_1=" \ + onap-appc-core \ + onap-appc-metric \ + onap-appc-dmaap-adapter \ + onap-appc-chef-adapter \ + onap-appc-netconf-adapter \ + onap-appc-rest-adapter \ + onap-appc-lifecycle-management \ + onap-appc-license-manager" + + APPC_FEATURES_2=" \ + onap-appc-dg-util \ + onap-appc-dg-shared \ + onap-appc-sdc-listener \ + onap-appc-oam \ + onap-appc-iaas-adapter \ + onap-appc-ansible-adapter \ + onap-appc-sequence-generator \ + onap-appc-config-generator \ + onap-appc-config-data-services \ + onap-appc-config-adaptor \ + onap-appc-config-audit \ + onap-appc-config-encryption-tool \ + onap-appc-config-flow-controller \ + onap-appc-config-params \ + onap-appc-artifact-handler + onap-appc-aai-client \ + onap-appc-event-listener \ + onap-appc-network-inventory-client \ + onap-appc-design-services \ + onap-appc-interfaces-service" + + APPC_FEATURES_UNZIP=" \ + appc-core \ + appc-metric \ + appc-dmaap-adapter \ + appc-event-listener \ + appc-chef-adapter \ + appc-netconf-adapter \ + appc-rest-adapter \ + appc-lifecycle-management \ + appc-dispatcher \ + appc-provider \ + appc-dg-util \ + appc-dg-shared \ + appc-sdc-listener \ + appc-oam \ + appc-iaas-adapter \ + appc-ansible-adapter \ + appc-sequence-generator \ + appc-config-generator \ + appc-config-data-services \ + appc-config-adaptor \ + appc-config-audit \ + appc-config-encryption-tool \ + appc-config-flow-controller \ + appc-config-params \ + appc-artifact-handler \ + appc-aai-client \ + appc-network-inventory-client \ + appc-design-services \ + appc-interfaces-service" + + +if $ENABLE_ODL_CLUSTER + then + echo "Enabling core APP-C features with clustering enabled" + featureInstall odl-netconf-connector-all + featureInstall odl-restconf-noauth + featureInstall odl-netconf-clustered-topology + else + echo "Enabling core APP-C features with clustering disabled" + featureInstall odl-netconf-connector-all + featureInstall odl-restconf-noauth + featureInstall odl-netconf-topology +fi + +sleep 7s +echo "Installing APP-C Features" +echo "" + +for feature in ${APPC_FEATURES_UNZIP} +do + if [ -f ${APPC_FEATURE_DIR}/${feature}/install-feature.sh ] + then + ${APPC_FEATURE_DIR}/${feature}/install-feature.sh + else + echo "No installer found for feature ${feature}" + fi +done + +#${ODL_HOME}/bin/client feature:install appc-metric appc-dmaap-adapter appc-event-listener appc-chef-adapter appc-netconf-adapter appc-rest-adapter appc-lifecycle-management appc-dispatcher appc-provider appc-dg-util appc-dg-shared appc-sdc-listener appc-oam appc-iaas-adapter appc-ansible-adapter appc-sequence-generator appc-config-generator appc-config-data-services appc-config-adaptor appc-config-audit appc-config-encryption-tool appc-config-flow-controller appc-config-params appc-artifact-handler appc-aai-client + +for feature in ${APPC_FEATURES_1} +do + echo "Installing ${feature}" + start=$(date +%s) + ${ODL_HOME}/bin/client "feature:install -r ${feature}" + end=$(date +%s) + echo "Install of ${feature} took $(expr $end - $start) seconds" + sleep 7s + echo "Sleep Finished" +done + + echo "Installing dispatcher features" + start=$(date +%s) + ${ODL_HOME}/bin/client "feature:install -r onap-appc-request-handler onap-appc-command-executor onap-appc-lifecycle-management onap-appc-workflow-management lock-manager onap-appc-provider" + end=$(date +%s) + echo "Install of dispatcher features took $(expr $end - $start) seconds" + sleep 7s + echo "Sleep Finished" + +for feature in ${APPC_FEATURES_2} +do + echo "Installing ${feature}" + start=$(date +%s) + ${ODL_HOME}/bin/client "feature:install -r ${feature}" + end=$(date +%s) + echo "Install of ${feature} took $(expr $end - $start) seconds" + sleep 7s + echo "Sleep Finished" +done + diff --git a/kubernetes/appc/templates/statefulset.yaml b/kubernetes/appc/templates/statefulset.yaml index 6b0373fbc8..6677516990 100644 --- a/kubernetes/appc/templates/statefulset.yaml +++ b/kubernetes/appc/templates/statefulset.yaml @@ -116,6 +116,9 @@ spec: - mountPath: /opt/onap/appc/bin/installAppcDb.sh name: onap-appc-bin subPath: installAppcDb.sh + - mountPath: /opt/onap/appc/bin/installFeatures.sh + name: onap-appc-bin + subPath: installFeatures.sh - mountPath: /opt/onap/appc/bin/health_check.sh name: onap-appc-bin subPath: health_check.sh diff --git a/kubernetes/appc/values.yaml b/kubernetes/appc/values.yaml index 17f819b8ea..11ec0e9ea7 100644 --- a/kubernetes/appc/values.yaml +++ b/kubernetes/appc/values.yaml @@ -31,7 +31,7 @@ global: flavor: small # application image repository: nexus3.onap.org:10001 -image: onap/appc-image:1.4.3 +image: onap/appc-image:1.4.4 pullPolicy: Always # flag to enable debugging - application support required -- cgit 1.2.3-korg