update MAAS url in deploy_site output
[yaml_builds.git] / tools / deploy_site.sh
index 2db8214..a8dd66b 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/bash
 ##############################################################################
-# Copyright © 2018 AT&T Intellectual Property. All rights reserved.          #
+# Copyright (c) 2018 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.                   #
 
 
 set -x
+TIMESTAMP=$(date +"%Y%m%d%H%M")
+LOGFILE=/var/log/deploy_site_$TIMESTAMP.log
+echo "logging to $LOGFILE"
+exec 1> >(tee -a $LOGFILE)
+exec 2>&1
 
-# Regional Server specific variables
-KEYSTONE_IMAGE=
-SHIPYARD_IMAGE=
 # Site specific variables
-DRYDOCK_PASSWORD=
-SHIPYARD_PASSWORD=
+export OS_AUTH_URL=
+export OS_USERNAME=shipyard
+export OS_PASSWORD=
 REGION_NAME=
+MAAS_URL=
+AIRFLOW_URL=
 
+sleep 900
 
-clean_configdocs(){
-  ## clean site YAMLs from Deckhand
-  TOKEN=`sudo docker run --rm --net=host -e OS_AUTH_URL=http://keystone-api.ucp.svc.cluster.local:80/v3 -e OS_PROJECT_DOMAIN_NAME=default -e OS_USER_DOMAIN_NAME=default -e OS_PROJECT_NAME=service -e OS_REGION_NAME=RegionOne -e OS_USERNAME=drydock -e OS_PASSWORD=${DRYDOCK_PASSWORD} -e OS_IDENTITY_API_VERSION=3 ${KEYSTONE_IMAGE} openstack token issue -f value -c id`
+tools/airship shipyard create configdocs ${REGION_NAME} --directory=/target/configs/promenade
 
-  curl -v -X DELETE -H "X-AUTH-TOKEN: $TOKEN" -H 'Content-Type: application/x-yaml' http://deckhand-int.ucp.svc.cluster.local:9000/api/v1.0/revisions
-}
+tools/airship shipyard commit configdocs
 
-create_configdocs(){
-  sudo docker run -v $(pwd):/target -e 'OS_AUTH_URL=http://keystone-api.ucp.svc.cluster.local:80/v3' -e OS_PASSWORD=${SHIPYARD_PASSWORD} -e 'OS_PROJECT_DOMAIN_NAME=default' -e 'OS_PROJECT_NAME=service' -e 'OS_USERNAME=shipyard' -e 'OS_USER_DOMAIN_NAME=default' -e 'OS_IDENTITY_API_VERSION=3' --rm --net=host ${SHIPYARD_IMAGE} create configdocs ${REGION_NAME} --directory=/target/configs/promenade
+tools/airship shipyard create action deploy_site
 
-  sleep 5
-}
+tools/airship shipyard get actions
 
-renderedconfigdocs(){
-  sudo docker run -v $(pwd):/target -e 'OS_AUTH_URL=http://keystone-api.ucp.svc.cluster.local:80/v3' -e OS_PASSWORD=${SHIPYARD_PASSWORD} -e 'OS_PROJECT_DOMAIN_NAME=default' -e 'OS_PROJECT_NAME=service' -e 'OS_USERNAME=shipyard' -e 'OS_USER_DOMAIN_NAME=default' -e 'OS_IDENTITY_API_VERSION=3' --rm --net=host ${SHIPYARD_IMAGE} get renderedconfigdocs --committed > /tmp/renderedconfigdocs.yaml
+SHIPYARD_ACTION=$(tools/airship shipyard get actions | awk '/deploy_site/ {print $2};')
 
-  sleep 5
-}
+tools/airship shipyard describe $SHIPYARD_ACTION
 
-commit_configdocs(){
-  sudo docker run -v $(pwd):/target -e 'OS_AUTH_URL=http://keystone-api.ucp.svc.cluster.local:80/v3' -e OS_PASSWORD=${SHIPYARD_PASSWORD} -e 'OS_PROJECT_DOMAIN_NAME=default' -e 'OS_PROJECT_NAME=service' -e 'OS_USERNAME=shipyard' -e 'OS_USER_DOMAIN_NAME=default' -e 'OS_IDENTITY_API_VERSION=3' --rm --net=host ${SHIPYARD_IMAGE} commit configdocs
-
-  sleep 5
-}
-
-deploy_site(){
-  sudo docker run -e 'OS_AUTH_URL=http://keystone-api.ucp.svc.cluster.local:80/v3' -e OS_PASSWORD=${SHIPYARD_PASSWORD} -e 'OS_PROJECT_DOMAIN_NAME=default' -e 'OS_PROJECT_NAME=service' -e 'OS_USERNAME=shipyard' -e 'OS_USER_DOMAIN_NAME=default' -e 'OS_IDENTITY_API_VERSION=3' --rm --net=host ${SHIPYARD_IMAGE} create action deploy_site
-}
-
-update_site(){
-  sudo docker run -e 'OS_AUTH_URL=http://keystone-api.ucp.svc.cluster.local:80/v3' -e OS_PASSWORD=${SHIPYARD_PASSWORD} -e 'OS_PROJECT_DOMAIN_NAME=default' -e 'OS_PROJECT_NAME=service' -e 'OS_USERNAME=shipyard' -e 'OS_USER_DOMAIN_NAME=default' -e 'OS_IDENTITY_API_VERSION=3' --rm --net=host ${SHIPYARD_IMAGE} create action update_site
-}
-
-
-getactions(){
-  sudo docker run -v $(pwd):/target -e 'OS_AUTH_URL=http://keystone-api.ucp.svc.cluster.local:80/v3' -e OS_PASSWORD=${SHIPYARD_PASSWORD} -e 'OS_PROJECT_DOMAIN_NAME=default' -e 'OS_PROJECT_NAME=service' -e 'OS_USERNAME=shipyard' -e 'OS_USER_DOMAIN_NAME=default' -e 'OS_IDENTITY_API_VERSION=3' --rm --net=host ${SHIPYARD_IMAGE} get actions
-
-  sleep 5
-}
-
-#clean_configdocs
-#create_configdocs
-#commit_configdocs
-renderedconfigdocs
-
-#deploy_site
-getactions
-#update_site
-
-##
-#"Look at.. for progress"
-#'MaaS GUI -> http://{{yaml.genesis.host}}:30001/MAAS/#/nodes'
-#'Airflow GUI -> http://{{yaml.genesis.host}}:30004/admin/taskinstance/'
+echo "## Airship deployment has been started..."
+echo "##"
+echo "## To monitor progress check:"
+echo "## MaaS GUI    -> $MAAS_URL"
+echo "## Airflow GUI -> $AIRFLOW_URL"
 
+exec 2>&-
+exec 1>&-
+exit 0