summaryrefslogtreecommitdiffstats
path: root/adapters/mso-vfc-adapter
diff options
context:
space:
mode:
authork.kazak <k.kazak@samsung.com>2019-04-08 11:48:16 +0200
committerk.kazak <k.kazak@samsung.com>2019-04-08 11:48:16 +0200
commit70ff098fd488850655ad7ac98ad06712f0340552 (patch)
tree5ed781d5800db7b8a19e9fe1bb288fb58d18f758 /adapters/mso-vfc-adapter
parent2c8c818a1815758e14e88fe74b782c3e8be8ac4b (diff)
fix sonar bugs in ServicePluginFactory
Fixed potential NullPointerException in lines: 123, 286, 480 and 607 - uuiObject is nullable here Change-Id: I01b30d090add7faccf3958f2fa37c7905d4bd5a3 Issue-ID: SO-1490 Signed-off-by: k.kazak <k.kazak@samsung.com>
Diffstat (limited to 'adapters/mso-vfc-adapter')
0 files changed, 0 insertions, 0 deletions
d='n161' href='#n161'>161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234
#########
#  ============LICENSE_START====================================================
#  org.onap.aaf
#  ===========================================================================
#  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====================================================
#
# Docker Building Script.  Reads all the components generated by install, on per-version basis
#

# Pull in Variables from d.props
if [ ! -e ./d.props ]; then
    cp d.props.init d.props
fi

. ./d.props

# Remove "SNAPSHOT" from AAF Jars in Containers
JAR_VERSION=${VERSION/-SNAPSHOT/}

function SCP() {
  SANS=${1/-SNAPSHOT/}
  echo $1 = $SANS
  if [ -e $SANS ]; then
    cp $SANS $2
  else 
 
    ln $1 $SANS
    cp $SANS $2
    rm $SANS
  fi
}

# process input. originally, an optional positional parameter is used to designate a component.
# A flagged parameter has been added to optionally indicate docker pull registry. Ideally, options
# would be flagged but we're avoiding ripple effect of changing original usage
if [ $# -gt 0 ]; then
    if [ "$1" == "-r" ]; then
        DOCKER_PULL_REGISTRY=$2
    else
        AAF_COMPONENTS=$1
        if [[ $# -gt 1 && $2 == "-r" ]]; then
            # If docker.io is indicated, registry var is void as that is docker default
            if [ $3 == "docker.io" ]; then
                DOCKER_PULL_REGISTRY=''
            else
                DOCKER_PULL_REGISTRY=$3
            fi
	   shift
        fi
    fi
fi

grep -v '#' d.props | grep '=' | grep -v -e "=$"

DOCKER=${DOCKER:=docker}

########
# Preliminary: if Cass exists, build that first
if [[ -z "$1" || "$1" = "cass" ]]; then
  echo "#### Delegate to Cassandra build"
  echo "Building Containers for aaf components, version $VERSION"
  # AAF_cass now needs a version...
  echo "### Build Cass"
  cd ../auth-cass/docker
  bash ./dbuild.sh $DOCKER_PULL_REGISTRY
  cd -
fi

if [[ -z "$1" || "$1" = "base" ]]; then
  ########
  # First, build a AAF Base version - set the core image, etc
  echo "### Build Base"
  sed -e 's/${AAF_VERSION}/'${VERSION}'/g' \
      -e 's/${JAR_VERSION}/'${JAR_VERSION}'/g' \
      -e 's/${DUSER}/'${DUSER}'/g' \
      -e 's/${REGISTRY}/'${DOCKER_PULL_REGISTRY}'/g' \
      Dockerfile.base > Dockerfile
  $DOCKER build -t ${ORG}/${PROJECT}/aaf_base:${VERSION} .
  $DOCKER tag ${ORG}/${PROJECT}/aaf_base:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_base:${VERSION}
  $DOCKER tag ${ORG}/${PROJECT}/aaf_base:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_base:latest
  rm Dockerfile
fi  
  
# Common copies
cd ..
SCP ../cadi/aaf/target/aaf-cadi-aaf-${VERSION}-full.jar sample/bin

if [[ -z "$1" || "$1" = "config" ]]; then
  ########
  # Second, Create the AAF Config (Security) Images
  # Note: only 2 jars each in Agent/Config
  SCP auth-cmd/target/aaf-auth-cmd-$VERSION-full.jar sample/bin
  SCP auth-batch/target/aaf-auth-batch-$VERSION-full.jar sample/bin
  SCP ../cadi/servlet-sample/target/aaf-cadi-servlet-sample-${VERSION}-sample.jar sample/bin
  cp -Rf ../conf/CA sample
  
  # AAF Config image (for AAF itself)
  echo "### Build Config"
  sed -e 's/${AAF_VERSION}/'${VERSION}'/g' \
      -e 's/${JAR_VERSION}/'${JAR_VERSION}'/g' \
      -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' \
      -e 's/${DOCKER_REPOSITORY}/'${DOCKER_REPOSITORY}'/g' \
      -e 's/${DUSER}/'${DUSER}'/g' \
      docker/Dockerfile.config > sample/Dockerfile
  # Note: do Config as Root, to get directories correct
  $DOCKER build -t ${ORG}/${PROJECT}/aaf_config:${VERSION} sample
  $DOCKER tag ${ORG}/${PROJECT}/aaf_config:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_config:${VERSION}
  $DOCKER tag ${ORG}/${PROJECT}/aaf_config:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_config:latest
fi  

if [[ -z "$1" || "$1" = "agent" ]]; then
  # AAF Agent Image (for Clients)
  echo "### Build Agent"
  sed -e 's/${AAF_VERSION}/'${VERSION}'/g' \
      -e 's/${JAR_VERSION}/'${JAR_VERSION}'/g' \
      -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' \
      -e 's/${DOCKER_REPOSITORY}/'${DOCKER_REPOSITORY}'/g' \
      -e 's/${DUSER}/'${DUSER}'/g' \
      docker/Dockerfile.agent > sample/Dockerfile
  #if [ -n "$DUSER" ]; then
  # echo "USER $DUSER" >> sample/Dockerfile
  #fi
  $DOCKER build -t ${ORG}/${PROJECT}/aaf_agent:${VERSION} sample
  $DOCKER tag ${ORG}/${PROJECT}/aaf_agent:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_agent:${VERSION}
  $DOCKER tag ${ORG}/${PROJECT}/aaf_agent:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_agent:latest

fi

# Clean up 
rm -Rf sample/Dockerfile sample/bin/aaf-*-*.jar sample/CA
cd -

########
# Third Copy AAF Executables to a BUILD Directory, for easy Cleanup
echo "### Copy to aaf_DBUILD"
if [ -e "../aaf_$VERSION" ]; then
  cp -Rf ../aaf_$VERSION ../aaf_DBUILD
elif [ -e "../aaf_$JAR_VERSION" ]; then
  cp -Rf ../aaf_$JAR_VERSION ../aaf_DBUILD
else
  echo "ERROR: No AAF Built.  use Maven"
  exit
fi
if [ ! "$VERSION" = "$JAR_VERSION" ]; then 
  START_DIR=$(pwd)
  # Convert SNAPSHOT issues
  cp -Rf ../aaf_$VERSION ../aaf_DBUILD
  cd ../aaf_DBUILD/lib
  # If Built Jars are "SNAPSHOT", convert to NON SNAPSHOT
  for J in $(ls *-SNAPSHOT*); do mv $J ${J/-SNAPSHOT/}; done
  cd ../bin
  rm *.bat
  for S in $(ls); do
     sed -e "/$VERSION/s/$VERSION/$JAR_VERSION/g" $S > tmp
     mv tmp $S
  done
  cd ${START_DIR}
fi
cp ../sample/bin/pod_wait.sh  ../aaf_DBUILD/bin

if [[ -z "$1" || "$1" = "core" ]]; then
  ########
  # Fourth, build a core Docker Image to be used for all AAF Components
  # Apply currrent Properties to Docker file, and put in place.
  sed -e 's/${AAF_VERSION}/'${VERSION}'/g' \
      -e 's/${JAR_VERSION}/'${JAR_VERSION}'/g' \
      -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' \
      -e 's/${DOCKER_REPOSITORY}/'${DOCKER_REPOSITORY}'/g' \
      -e 's/${DUSER}/'${DUSER}'/g' \
      Dockerfile.core >../aaf_DBUILD/Dockerfile
  if [ -n "$DUSER" ]; then
    echo "USER $DUSER" >> ../aaf_DBUILD/Dockerfile
  fi
  cd ..

  $DOCKER build -t ${ORG}/${PROJECT}/aaf_core:${VERSION} aaf_DBUILD
  $DOCKER tag ${ORG}/${PROJECT}/aaf_core:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_core:${VERSION}
  $DOCKER tag ${ORG}/${PROJECT}/aaf_core:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_core:latest
  rm aaf_DBUILD/Dockerfile
 
  cd -
fi

if [[ -z "$1" || "$1" = "hello" ]]; then
  ########
  # Fifth, do Hello
  # Apply currrent Properties to Docker file, and put in place.
  echo "### Building Hello"
  cp ../sample/bin/client.sh  ../aaf_DBUILD/bin
  cp ../sample/hello/init.sh  ../aaf_DBUILD/bin/hello_init.sh
  SCP ../../cadi/aaf/target/aaf-cadi-aaf-${VERSION}-full.jar ../aaf_DBUILD/bin

  sed -e 's/${AAF_VERSION}/'${VERSION}'/g' \
      -e 's/${JAR_VERSION}/'${JAR_VERSION}'/g' \
      -e 's/${DOCKER_REPOSITORY}/'${DOCKER_REPOSITORY}'/g' \
      -e 's/${DUSER}/'${DUSER}'/g' \
      Dockerfile.hello >../aaf_DBUILD/Dockerfile
  #if [ -n "$DUSER" ]; then
  #  echo "USER $DUSER" >> ../aaf_DBUILD/Dockerfile
  #fi

  cd ..
  cp -Rf sample/etc aaf_DBUILD
  cp -Rf sample/logs aaf_DBUILD
  cp -Rf sample/cert aaf_DBUILD
  
  for C in cass certman cmd deforg fs gui locate oauth service; do
     rm aaf_DBUILD/lib/aaf-auth-$C-*
  done

  $DOCKER build -t ${ORG}/${PROJECT}/aaf_hello:${VERSION} aaf_DBUILD
  if [ -n ${DOCKER_REPOSITORY} ]; then
    $DOCKER tag ${ORG}/${PROJECT}/aaf_hello:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_hello:${VERSION}
    $DOCKER tag ${ORG}/${PROJECT}/aaf_hello:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_hello:latest
  fi
  cd -
fi
# Final cleanup
rm -Rf ../aaf_DBUILD