diff options
Diffstat (limited to 'boot')
-rwxr-xr-x[-rw-r--r--] | boot/dcae2_install.sh | 71 | ||||
-rwxr-xr-x | boot/dcae2_vm_init.sh | 80 |
2 files changed, 96 insertions, 55 deletions
diff --git a/boot/dcae2_install.sh b/boot/dcae2_install.sh index 3c84c62d..b59f06f2 100644..100755 --- a/boot/dcae2_install.sh +++ b/boot/dcae2_install.sh @@ -100,25 +100,52 @@ chmod 777 /opt/app/config/key # move keystone url file #cp /opt/config/keystone_url.txt /opt/app/config/keystone_url.txt -# download blueprint input template files -rm -rf /opt/app/inputs-templates -mkdir -p /opt/app/inputs-templates -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/inputs.yaml -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/cdapinputs.yaml -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/phinputs.yaml -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/dhinputs.yaml -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/invinputs.yaml -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/vesinput.yaml -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/tcainputs.yaml -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/he-ip.yaml -wget -P /opt/app/inputs-templates https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.blueprints/releases/input-templates/hr-ip.yaml - - -# generate blueprint input files -pip install --upgrade jinja2 -wget https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.deployments/releases/scripts/detemplate-bpinputs.py && (python detemplate-bpinputs.py /opt/config /opt/app/inputs-templates /opt/app/config; rm detemplate-bpinputs.py) - - -# Run docker containers -cd /opt -./dcae2_vm_init.sh + +URL_ROOT='nexus.onap.org/service/local/repositories/raw/content' +REPO_BLUEPRINTS='org.onap.dcaegen2.platform.blueprints' +REPO_DEPLOYMENTS='org.onap.dcaegen2.deployments' + +if [ -e /opt/config/dcae_deployment_profile.txt ]; then + DEPLOYMENT_PROFILE=$(cat /opt/config/dcae_deployment_profile.txt) +fi +DEPLOYMENT_PROFILE=${DEPLOYMENT_PROFILE:-R1} +if [ "$DEPLOYMENT_PROFILE" == "R1" ]; then + RELEASE_TAG='releases' + # download blueprint input template files + rm -rf /opt/app/inputs-templates + mkdir -p /opt/app/inputs-templates + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/inputs.yaml + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/cdapinputs.yaml + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/phinputs.yaml + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/dhinputs.yaml + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/invinputs.yaml + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/vesinput.yaml + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/tcainputs.yaml + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/he-ip.yaml + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_BLUEPRINTS}/${RELEASE_TAG}/input-templates/hr-ip.yaml + + + # generate blueprint input files + pip install --upgrade jinja2 + wget https://${URL_ROOT}/${REPO_DEPLOYMENTS}/${RELEASE_TAG}/scripts/detemplate-bpinputs.py && \ + (python detemplate-bpinputs.py /opt/config /opt/app/inputs-templates /opt/app/config; rm detemplate-bpinputs.py) + + # Run docker containers + cd /opt + ./dcae2_vm_init.sh +fi + +if [ "$DEPLOYMENT_PROFILE" == "R2MVP" ]; then + RELEASE_TAG='R2' + rm -rf /opt/app/inputs-templates + mkdir -p /opt/app/inputs-templates + wget -P /opt/app/inputs-templates https://${URL_ROOT}/${REPO_DEPLOYMENTS}/${RELEASE_TAG}/heat/${DEPLOYMENT_PROFILE}/docker-compose.yaml + + pip install --upgrade jinja2 + wget https://${URL_ROOT}/${REPO_DEPLOYMENTS}/${RELEASE_TAG}/scripts/detemplate-bpinputs.py && \ + (python detemplate-bpinputs.py /opt/config /opt/app/inputs-templates /opt/app/config; rm detemplate-bpinputs.py) + + cd /opt + ./dcae2_vm_init.sh +fi + diff --git a/boot/dcae2_vm_init.sh b/boot/dcae2_vm_init.sh index c8ab317e..581c0bf1 100755 --- a/boot/dcae2_vm_init.sh +++ b/boot/dcae2_vm_init.sh @@ -597,7 +597,13 @@ list_dns_zone() - +URL_ROOT='nexus.onap.org/service/local/repositories/raw/content' +REPO_BLUEPRINTS='org.onap.dcaegen2.platform.blueprints' +REPO_DEPLOYMENTS='org.onap.dcaegen2.deployments' +if [ -e /opt/config/dcae_deployment_profile.txt ]; then + DEPLOYMENT_PROFILE=$(cat /opt/config/dcae_deployment_profile.txt) +fi +DEPLOYMENT_PROFILE=${DEPLOYMENT_PROFILE:-R1} NEXUS_USER=$(cat /opt/config/nexus_username.txt) NEXUS_PASSWORD=$(cat /opt/config/nexus_password.txt) @@ -610,14 +616,18 @@ MYLOCALIP=$(cat /opt/config/dcae_ip_addr.txt) # start docker image pulling while we are waiting for A&AI to come online docker login -u "$NEXUS_USER" -p "$NEXUS_PASSWORD" "$NEXUS_DOCKER_REPO" -docker pull "$NEXUS_DOCKER_REPO/onap/org.onap.dcaegen2.deployments.bootstrap:$DOCKER_VERSION" && docker pull nginx & -######################################### -# Wait for then register with A&AI -######################################## -DNSAAS_PROXYED=$(tr '[:upper:]' '[:lower:]' < /opt/config/dnsaas_config_enabled.txt) -if [ "$DNSAAS_PROXYED" == 'true' ]; then + +if [ "$DEPLOYMENT_PROFILE" == "R1" ]; then + docker pull "$NEXUS_DOCKER_REPO/onap/org.onap.dcaegen2.deployments.bootstrap:$DOCKER_VERSION" && docker pull nginx & + + ######################################### + # Wait for then register with A&AI + ######################################## + + DNSAAS_PROXYED=$(tr '[:upper:]' '[:lower:]' < /opt/config/dnsaas_config_enabled.txt) + if [ "$DNSAAS_PROXYED" == 'true' ]; then echo "Using proxyed DNSaaS service, performing additional registration and configuration" wait_for_aai_ready @@ -629,40 +639,35 @@ if [ "$DNSAAS_PROXYED" == 'true' ]; then wait_for_multicloud_ready register_dns_zone_proxied_designate "$ZONE" echo "Registration and configuration for proxying DNSaaS completed." -else + else echo "Using Designate DNSaaS service, performing additional registration and configuration" register_dns_zone_designate "$ZONE" -fi - - - + fi + ######################################### + # Start DCAE Bootstrap container + ######################################### -######################################### -# Start DCAE Bootstrap container -######################################### + chmod 777 /opt/app/config + rm -f /opt/config/runtime.ip.consul + rm -f /opt/config/runtime.ip.cm -chmod 777 /opt/app/config -rm -f /opt/config/runtime.ip.consul -rm -f /opt/config/runtime.ip.cm + #docker login -u "$NEXUS_USER" -p "$NEXUS_PASSWORD" "$NEXUS_DOCKER_REPO" + #docker pull "$NEXUS_DOCKER_REPO/onap/org.onap.dcaegen2.deployments.bootstrap:$DOCKER_VERSION" + docker run -d --name boot -v /opt/app/config:/opt/app/installer/config -e "LOCATION=$ZONE" "$NEXUS_DOCKER_REPO/onap/org.onap.dcaegen2.deployments.bootstrap:$DOCKER_VERSION" -#docker login -u "$NEXUS_USER" -p "$NEXUS_PASSWORD" "$NEXUS_DOCKER_REPO" -#docker pull "$NEXUS_DOCKER_REPO/onap/org.onap.dcaegen2.deployments.bootstrap:$DOCKER_VERSION" -docker run -d --name boot -v /opt/app/config:/opt/app/installer/config -e "LOCATION=$ZONE" "$NEXUS_DOCKER_REPO/onap/org.onap.dcaegen2.deployments.bootstrap:$DOCKER_VERSION" + # waiting for bootstrap to complete then starting nginx for proxying healthcheck calls + echo "Waiting for Consul to become accessible" + while [ ! -f /opt/app/config/runtime.ip.consul ]; do echo "."; sleep 30; done -# waiting for bootstrap to complete then starting nginx for proxying healthcheck calls -echo "Waiting for Consul to become accessible" -while [ ! -f /opt/app/config/runtime.ip.consul ]; do echo "."; sleep 30; done + # start proxy for consul's health check + CONSULIP=$(head -1 /opt/app/config/runtime.ip.consul | sed 's/[[:space:]]//g') + echo "Consul is available at $CONSULIP" - -# start proxy for consul's health check -CONSULIP=$(head -1 /opt/app/config/runtime.ip.consul | sed 's/[[:space:]]//g') -echo "Consul is available at $CONSULIP" - -cat >./nginx.conf <<EOL + cat >./nginx.conf <<EOL server { listen 80; server_name dcae.simpledemo.onap.org; @@ -671,6 +676,15 @@ server { } } EOL -docker run --name dcae-proxy -p 8080:80 -v "$(pwd)/nginx.conf:/etc/nginx/conf.d/default.conf" -d nginx -echo "Healthcheck API available at http://${MYFLOATIP}:8080/healthcheck" -echo " or http://${MYLOCALIP}:8080/healthcheck" + docker run --name dcae-proxy -p 8080:80 -v "$(pwd)/nginx.conf:/etc/nginx/conf.d/default.conf" -d nginx + echo "Healthcheck API available at http://${MYFLOATIP}:8080/healthcheck" + echo " or http://${MYLOCALIP}:8080/healthcheck" + +fi + + +if [ "$DEPLOYMENT_PROFILE" == "R2MVP" ]; then + cd /opt/app/config + /opt/docker/docker-compose up -d +fi + |