From: Herbert Eiselt Date: Fri, 28 Aug 2020 13:42:47 +0000 (+0000) Subject: Merge "Add a configurable truststore for A1 adapter" X-Git-Tag: 2.0.1~9 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=05e9500d9652b0ec6c6ff5e7ed65a09393a63532;hp=-c;p=sdnc%2Foam.git Merge "Add a configurable truststore for A1 adapter" Former-commit-id: 6a9e13ac968d3210919c18714cd646621ac089ed --- 05e9500d9652b0ec6c6ff5e7ed65a09393a63532 diff --combined installation/sdnc/src/main/scripts/startODL.oom.sh index 409e27c9,80fe9084..1ce4a1b0 --- a/installation/sdnc/src/main/scripts/startODL.oom.sh +++ b/installation/sdnc/src/main/scripts/startODL.oom.sh @@@ -28,9 -28,6 +28,9 @@@ ODL_HOME=${ODL_HOME:-/opt/opendaylight/current} ODL_FEATURES_BOOT_FILE=$ODL_HOME/etc/org.apache.karaf.features.cfg +FEATURESBOOTMARKER="^featuresBoot *=" +REPOSITORIESBOOTMARKER="^featuresRepositories *=" + # ODL_REMOVEIDMDB=${ODL_REMOVEIDMDB:-false} @@@ -46,7 -43,6 +46,7 @@@ f export ODL_ADMIN_PASSWORD ODL_ADMIN_USERNAME +JDEBUG=${JDEBUG:-false} SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc} SDNC_BIN=${SDNC_BIN:-/opt/onap/sdnc/bin} CCSDK_HOME=${CCSDK_HOME:-/opt/onap/ccsdk} @@@ -69,7 -65,6 +69,7 @@@ SDNRWT=${SDNRWT:-false SDNRWT_BOOTFEATURES=${SDNRWT_BOOTFEATURES:-sdnr-wt-feature-aggregator} SDNRDM=${SDNRDM:-false} # Add devicemanager base and specific repositories +SDNR_BASE_REPO=${SDNRDM_BASE_REPO:-mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-feature-aggregator/$CCSDKFEATUREVERSION/xml/features} SDNRDM_BASE_REPO=${SDNRDM_BASE_REPO:-mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-feature-aggregator-devicemanager-base/$CCSDKFEATUREVERSION/xml/features} SDNRDM_ONF_REPO=${SDNRDM_ONF_REPO:-mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-devicemanager-onf-feature/$CCSDKFEATUREVERSION/xml/features} SDNRDM_ORAN_REPO=${SDNRDM_ORAN_REPO:-mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-devicemanager-oran-feature/$CCSDKFEATUREVERSION/xml/features} @@@ -88,8 -83,6 +88,8 @@@ SDNRDBCOMMAND=${SDNRDBCOMMAND:--c init SDNR_NORTHBOUND=${SDNR_NORTHBOUND:-false} SDNR_NORTHBOUND_BOOTFEATURES=${SDNR_NORTHBOUND_BOOTFEATURES:-sdnr-northbound-all} +#OVERRIDE_FEATURES_BOOT + # Functions # Test if repository exists, like this mvn:org.onap.ccsdk.features.sdnr.wt/sdnr-wt-devicemanager-oran-feature/0.7.2/xml/features @@@ -115,19 -108,6 +115,19 @@@ function addRepository() echo "Repo does not exist: $1" fi } +# Append features to karaf boot feature configuration +# $1 search pattern .. no leading "," +# $2 replacement .. if "" remove +function replaceRepository() { + CFG=$ODL_FEATURES_BOOT_FILE + if [ -n "$2" ] ; then + echo "Replace feature repo $1 with: $2" + sed -i "/$REPOSITORIESBOOTMARKER/ s/,* *$1/,$2/g" $CFG + else + echo "Remove feature repo $1" + sed -i "/$REPOSITORIESBOOTMARKER/ s/,* *$1//g" $CFG + fi +} # Append features to karaf boot feature configuration # $1 additional feature to be added @@@ -139,28 -119,22 +139,28 @@@ function addToFeatureBoot() addRepository $2 fi echo "Add boot feature: $1" - sed -i "\|featuresBoot *=|s|$|,$1|" $CFG + sed -i "\|$FEATURESBOOTMARKER|s|$|,$1|" $CFG } # Append features to karaf boot feature configuration -# $1 search pattern -# $2 replacement +# $1 search pattern .. no leading "," +# $2 replacement .. if "" remove function replaceFeatureBoot() { CFG=$ODL_FEATURES_BOOT_FILE - echo "Replace boot feature $1 with: $2" - sed -i "/featuresBoot/ s/$1/$2/g" $CFG + if [ -n "$2" ] ; then + echo "Replace boot feature $1 with: $2" + sed -i "/$FEATURESBOOTMARKER/ s/,* *$1/,$2/g" $CFG + else + echo "Remove boot feature $1" + sed -i "/$FEATURESBOOTMARKER/ s/,* *$1//g" $CFG + fi } # Remove all sdnc specific features function cleanupFeatureBoot() { echo "Remove northbound bootfeatures " - sed -i "/featuresBoot/ s/,ccsdk-sli-core-all.*$//g" $ODL_FEATURES_BOOT_FILE + sed -i "/$FEATURESBOOTMARKER/ s/,ccsdk-sli-core-all.*$//g" $ODL_FEATURES_BOOT_FILE + sed -i "/$FEATURESBOOTMARKER/ s/odl-restconf-nb-rfc8040,//g" $ODL_FEATURES_BOOT_FILE } function initialize_sdnr() { @@@ -181,19 -155,6 +181,19 @@@ function install_sdnrwt_features() { # Repository setup provided via sdnc dockerfile if $SDNRWT; then + #Clean up <----------------- + #Uses wrong version + echo "Remove sdnr-northbound-all and add BGP" + replaceFeatureBoot "sdnr-northbound-all" + #Add missing org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev180329 + #addRepository "mvn:org.opendaylight.bgpcep/odl-bgpcep-bgp-dependencies/0.11.1/xml/features" + #replaceFeatureBoot "odl-daexim-all" "odl-daexim-all, odl-bgpcep-bgp-dependencies" + + # remove old existing + replaceRepository "mvn:org.onap.ccsdk.features.sdnr.wt\/sdnr-wt-feature-aggregator\/[^\/]*\/xml\/features" + replaceRepository "mvn:org.onap.ccsdk.features.sdnr.wt\/sdnr-wt-feature-aggregator-devicemanager\/[^\/]*\/xml\/features" + # Add devicemanagers + addRepository $SDNR_BASE_REPO addRepository $SDNRDM_BASE_REPO addRepository $SDNRDM_ONF_REPO addRepository $SDNRDM_ORAN_REPO @@@ -201,7 -162,6 +201,7 @@@ if $SDNRONLY; then cleanupFeatureBoot + addToFeatureBoot ccsdk-aafshiro fi if $SDNRDM; then addToFeatureBoot "$SDNRDM_BOOTFEATURES" @@@ -280,31 -240,14 +280,31 @@@ function enable_odl_cluster() # ----------------------- # Main script starts here +if $JDEBUG ; then + echo "Activate remote debugging" + #JSTADTPOLICYFILE="$ODL_HOME/etc/tools.policy" + #echo -e "grant codebase \"file:${JAVA_HOME}/lib/tools.jar\" {\n permission java.security.AllPermission;\n };" > $JSTADTPOLICYFILE + #sleep 1 + #$JAVA_HOME/bin/jstatd -p 1089 -J-Djava.security.policy=$JSTADTPOLICYFILE & + EXTRA_JAVA_OPTS+=" -Dcom.sun.management.jmxremote.port=1090" + EXTRA_JAVA_OPTS+=" -Dcom.sun.management.jmxremote.rmi.port=1090" + EXTRA_JAVA_OPTS+=" -Djava.rmi.server.hostname=$HOSTNAME" + EXTRA_JAVA_OPTS+=" -Dcom.sun.management.jmxremote.local.only=false" + EXTRA_JAVA_OPTS+=" -Dcom.sun.management.jmxremote.ssl=false" + EXTRA_JAVA_OPTS+=" -Dcom.sun.management.jmxremote.authenticate=false" + export EXTRA_JAVA_OPTS +fi + echo "Image path=${IMAGEPATH}" echo "Image names=${IMAGENAMES}" +echo "Hostname=${HOSTNAME}" echo "Settings:" echo " USER=$(whoami)" echo " SDNC_BIN=$SDNC_BIN" echo " SDNC_HOME=$SDNC_HOME" echo " ODL_CERT_DIR=$ODL_CERT_DIR" echo " CCSDKFEATUREVERSION=$CCSDKFEATUREVERSION" +echo " OVERRIDE_FEATURES_BOOT=$OVERRIDE_FEATURES_BOOT" echo " ENABLE_ODL_CLUSTER=$ENABLE_ODL_CLUSTER" echo " ODL_REMOVEIDMDB=$ODL_REMOVEIDMDB" echo " SDNC_REPLICAS=$SDNC_REPLICAS" @@@ -320,8 -263,6 +320,8 @@@ echo " IS_PRIMARY_CLUSTER=$IS_PRIMARY_ echo " MY_ODL_CLUSTER=$MY_ODL_CLUSTER" echo " PEER_ODL_CLUSTER=$PEER_ODL_CLUSTER" echo " AAF_ENABLED=$SDNC_AAF_ENABLED" +echo " JDEBUG=$JDEBUG" +echo " EXTRA_JAVA_OPTS=$EXTRA_JAVA_OPTS" if $SDNC_AAF_ENABLED; then export SDNC_STORE_DIR=/opt/app/osaaf/local @@@ -355,6 -296,8 +355,8 @@@ if [ ! -f ${SDNC_HOME}/.installed then echo "Installing SDN-C keyStore" /bin/bash ${SDNC_HOME}/bin/addSdncKeyStore.sh + echo "Installing A1-adapter trustStore" + /bin/bash ${SDNC_HOME}/bin/addA1TrustStore.sh if $ENABLE_ODL_CLUSTER ; then enable_odl_cluster ; fi @@@ -365,24 -308,17 +367,24 @@@ echo "Installed at `date`" > ${SDNC_HOME}/.installed fi +if [ -n "$OVERRIDE_FEATURES_BOOT" ] ; then + echo "Override features boot: $OVERRIDE_FEATURES_BOOT" + sed -i "/$FEATURESBOOTMARKER/c\featuresBoot = $OVERRIDE_FEATURES_BOOT" $ODL_FEATURES_BOOT_FILE +fi + # Odl configuration done -ODL_FEATURES_BOOT=$(sed -n "/featuresBoot =/p" $ODL_FEATURES_BOOT_FILE) +ODL_REPOSITORIES_BOOT=$(sed -n "/$REPOSITORIESBOOTMARKER/p" $ODL_FEATURES_BOOT_FILE) +ODL_FEATURES_BOOT=$(sed -n "/$FEATURESBOOTMARKER/p" $ODL_FEATURES_BOOT_FILE) export ODL_FEATURES_BOOT if [ -z "$ODL_CERT_DIR" ] ; then echo "No certs provided. Skip installation." else echo "Start background cert installer" - nohup python ${SDNC_BIN}/installCerts.oom.py & + nohup python3 ${SDNC_BIN}/installCerts.oom.py & fi echo "Startup opendaylight" +echo $ODL_REPOSITORIES_BOOT echo $ODL_FEATURES_BOOT exec ${ODL_HOME}/bin/karaf server diff --combined installation/sdnc/src/main/scripts/startODL.sh index 14ffe2a3,8da2c547..86d1e09c --- a/installation/sdnc/src/main/scripts/startODL.sh +++ b/installation/sdnc/src/main/scripts/startODL.sh @@@ -152,6 -152,8 +152,8 @@@ the ${SDNC_HOME}/bin/installSdncDb.sh echo "Installing SDN-C keyStore" ${SDNC_HOME}/bin/addSdncKeyStore.sh + echo "Installing A1-adapter trustStore" + ${SDNC_HOME}/bin/addA1TrustStore.sh #${CCSDK_HOME}/bin/installOdlHostKey.sh @@@ -176,6 -178,6 +178,6 @@@ cp /var/custom-certs/* /tm # Create ODL data log directory (it nornally is created after karaf # is started, but needs to exist before installCerts.py runs) mkdir -p /opt/opendaylight/data/log -nohup python ${SDNC_BIN}/installCerts.py & +nohup python3 ${SDNC_BIN}/installCerts.py & exec ${ODL_HOME}/bin/karaf server