diff options
Diffstat (limited to 'heat/ONAP/cloud-config/aaf_vm_init.sh')
-rw-r--r-- | heat/ONAP/cloud-config/aaf_vm_init.sh | 117 |
1 files changed, 83 insertions, 34 deletions
diff --git a/heat/ONAP/cloud-config/aaf_vm_init.sh b/heat/ONAP/cloud-config/aaf_vm_init.sh index a388bf2f..59486e94 100644 --- a/heat/ONAP/cloud-config/aaf_vm_init.sh +++ b/heat/ONAP/cloud-config/aaf_vm_init.sh @@ -1,55 +1,104 @@ #!/bin/bash +CURRENT_DIR=$(pwd) + NEXUS_USERNAME=$(cat /opt/config/nexus_username.txt) NEXUS_PASSWD=$(cat /opt/config/nexus_password.txt) -NEXUS_DOCKER_REPO=$(cat /opt/config/nexus_docker_repo.txt) -DOCKER_IMAGE_VERSION=$(cat /opt/config/docker_version.txt) -HOSTNAME=`hostname` -FQDN=aaf.api.simpledemo.onap.org -HOST_IP=$(cat /opt/config/local_ip.txt) - -docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO +if [ -e /opt/authz/auth/docker/d.props ]; then + NEXUS_DOCKER_REPO=`grep "DOCKER_REPOSITORY=" /opt/authz/auth/docker/d.props` +else + NEXUS_DOCKER_REPO="DOCKER_REPOSITORY=" +fi -cd /opt/authz -git pull +if [ "$NEXUS_DOCKER_REPO" = "DOCKER_REPOSITORY=" ]; then + NEXUS_DOCKER_REPO=$(cat /opt/config/nexus_docker_repo.txt) +else + NEXUS_DOCKER_REPO=${NEXUS_DOCKER_REPO#DOCKER_REPOSITORY=} +fi +echo $NEXUS_DOCKER_REPO +HOSTNAME=`hostname -f` +FQDN=aaf.api.simpledemo.onap.org +HOST_IP=$(cat /opt/config/local_ip.txt) cd /opt/authz/auth/auth-cass/docker if [ "`docker container ls | grep aaf_cass`" = "" ]; then # Cassandra Install echo Phase 1 Cassandra Install - ./dinstall.sh + bash ./dinstall.sh fi +if [ ! -e /opt/authz/auth/docker/d.props ]; then + cp /opt/authz/auth/docker/d.props.init /opt/authz/auth/docker/d.props +fi + +VERSION=$(grep VERSION /opt/authz/auth/docker/d.props) +VERSION=${VERSION#VERSION=} CASS_IP=`docker inspect aaf_cass | grep '"IPAddress' | head -1 | cut -d '"' -f 4` CASS_HOST="cass.aaf.osaaf.org:"$CASS_IP - -sed -i "s/DOCKER_REPOSITORY=.*/DOCKER_REPOSITORY="$NEXUS_DOCKER_REPO"/g" /opt/authz/auth/docker/d.props -#sed -i "s/VERSION=.*/VERSION="$DOCKER_IMAGE_VERSION"/g" /opt/authz/auth/docker/d.props -sed -i "s/HOSTNAME=.*/HOSTNAME="$HOSTNAME"/g" /opt/authz/auth/docker/d.props -sed -i "s/HOST_IP=.*/HOST_IP="$HOST_IP"/g" /opt/authz/auth/docker/d.props -sed -i "s/CASS_HOST=.*/CASS_HOST="$CASS_HOST"/g" /opt/authz/auth/docker/d.props - -if [ ! -e "/opt/app/osaaf/etc" ]; then - # Nothing installed, install sample - mkdir -p /opt/app/osaaf/logs - cd /opt/app/osaaf/logs - mkdir fs cm gui hello locate oauth service - cd /opt - cp -Rf /opt/authz/auth/sample/* /opt/app/osaaf +if [ ! -e /opt/authz/auth/docker/cass.props ]; then + cp /opt/authz/auth/docker/cass.props.init /opt/authz/auth/docker/cass.props fi -# Set Location information -# Need new Deployment system properties + +sed -i "s/CASS_HOST=.*/CASS_HOST="$CASS_HOST"/g" /opt/authz/auth/docker/cass.props +# TODO Pull from Config Dir CADI_LATITUDE=37.781 CADI_LONGITUDE=-122.261 -CADI_TRUST_MASKS="${HOST_IP%\.[0-9]*}\\/24,${CASS_IP%\.[0-9]*}\\/24" -sed -i "s/cadi_latitude=.*/cadi_latitude="$CADI_LATITUDE"/g" /opt/app/osaaf/local/org.osaaf.location.props -sed -i "s/cadi_longitude=.*/cadi_longitude="$CADI_LONGITUDE"/g" /opt/app/osaaf/local/org.osaaf.location.props -sed -i "s/cadi_registration_hostname=.*/cadi_registration_hostname="$FQDN"/g" /opt/app/osaaf/local/org.osaaf.location.props -sed -i "s/cadi_trust_masks=.*/cadi_trust_masks="$CADI_TRUST_MASKS"/g" /opt/app/osaaf/local/org.osaaf.location.props +sed -i "s/DOCKER_REPOSITORY=.*/DOCKER_REPOSITORY=$NEXUS_DOCKER_REPO/g" /opt/authz/auth/docker/d.props +sed -i "s/VERSION=.*/VERSION=$VERSION/g" /opt/authz/auth/docker/d.props +sed -i "s/HOSTNAME=.*/HOSTNAME=$HOSTNAME/g" /opt/authz/auth/docker/d.props +sed -i "s/HOST_IP=.*/HOST_IP=$HOST_IP/g" /opt/authz/auth/docker/d.props +sed -i "s/LATITUDE=.*/LATITUDE=$CADI_LATITUDE/g" /opt/authz/auth/docker/d.props +sed -i "s/LONGITUDE=.*/LONGITUDE=$CADI_LONGITUDE/g" /opt/authz/auth/docker/d.props + +SIGNER_P12="$CURRENT_DIR/sample_ca/aaf.signer.p12" +AAF_P12="$CURRENT_DIR/sample_ca/aaf.bootstrap.p12" +P12_PASSWORD="something easy" + +if [ ! -e "$AAF_P12" ]; then + mkdir -p $CURRENT_DIR/sample_ca + cd /opt/authz/conf/CA + /bin/bash bootstrap.sh $SIGNER_P12 "$P12_PASSWORD" + if [ ! -e "aaf.bootstrap.p12" ]; then + echo "Certificates NOT created. Stopping installation" + exit + else + mv aaf.bootstrap.p12 $AAF_P12 + fi + cd - +fi + +if [ -e "$AAF_P12" ]; then + sed -i "s/AAF_INITIAL_X509_P12=.*/AAF_INITIAL_X509_P12=${AAF_P12//\//\\/}/g" /opt/authz/auth/docker/d.props + sed -i "s/AAF_INITIAL_X509_PASSWORD=.*/AAF_INITIAL_X509_PASSWORD=\"$P12_PASSWORD\"/g" /opt/authz/auth/docker/d.props +fi + +if [ -e "$SIGNER_P12" ]; then + if [ -e "/opt/config/cadi_x509_issuers.txt" ]; then + ISSUERS=$(cat "/opt/config/cadi_x509_issuers.txt")":" + fi + # Pick the REAL subject off the P12 + SUBJECT=$(echo "$P12_PASSWORD" | openssl pkcs12 -info -clcerts -in $SIGNER_P12 -nokeys -passin stdin | grep subject) + SUBJECT=${SUBJECT//\// } + SUBJECT=${SUBJECT/subject= /} + # Needs to be reversed, separated by ", " + for S in $SUBJECT ; do + if [ "$RSUBJECT" = "" ]; then + RSUBJECT=$S + else + RSUBJECT="$S, $RSUBJECT" + fi + done + ISSUERS="$ISSUERS$RSUBJECT" + sed -i "s/CADI_X509_ISSUERS=.*/CADI_X509_ISSUERS=\"$ISSUERS\"/g" /opt/authz/auth/docker/d.props + sed -i "s/AAF_SIGNER_P12=.*/AAF_SIGNER_P12=${SIGNER_P12//\//\\/}/g" /opt/authz/auth/docker/d.props + sed -i "s/AAF_SIGNER_PASSWORD=.*/AAF_SIGNER_PASSWORD=\"$P12_PASSWORD\"/g" /opt/authz/auth/docker/d.props +fi cd /opt/authz/auth/docker -./dbuild.sh -sleep 5 -./drun.sh +# Need new Deployment system properties +bash ./aaf.sh + +# run it +bash ./drun.sh |