X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=tools%2Fdeploy_site.sh;h=f297cb96b755a01c3b29f2272dd658a594ce5cbb;hb=4c341d3fc54fec7b62269da3390fd0f5d8f779ce;hp=e9583986284f862f305ad9f94b4549bdf8bc2566;hpb=97817abb34505c81cc69a91f842e7e4077bb5a2b;p=yaml_builds.git diff --git a/tools/deploy_site.sh b/tools/deploy_site.sh index e958398..f297cb9 100755 --- a/tools/deploy_site.sh +++ b/tools/deploy_site.sh @@ -23,72 +23,42 @@ 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` - - 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 -} - -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 - - sleep 5 -} - -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 - - sleep 5 -} - -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 -} +tools/airship shipyard create configdocs ${REGION_NAME} --directory=/target/configs/promenade +tools/airship shipyard commit configdocs -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 +tools/airship shipyard create action deploy_site - sleep 5 -} +tools/airship shipyard get actions -sleep 900 -clean_configdocs -create_configdocs -commit_configdocs -renderedconfigdocs - -deploy_site -#getactions -#update_site +SHIPYARD_ACTION=$(tools/airship shipyard get actions | awk '/deploy_site/ {print $2};') +SHIPYARD_CLI="tools/airship shipyard describe $SHIPYARD_ACTION" echo "## Airship deployment has been started..." echo "##" echo "## To monitor progress check:" -echo "## MaaS GUI -> http://{{yaml.genesis.host}}:30001/MAAS/#/nodes" -echo "## Airflow GUI -> http://{{yaml.genesis.host}}:30004/admin/taskinstance/" +echo "## MaaS GUI -> $MAAS_URL" +echo "## Shipyard cli-> $SHIPYARD_CLI" +#echo "## Airflow GUI -> $AIRFLOW_URL" + +while ( ! $SHIPYARD_CLI | grep -qe '^Lifecycle.*Complete' && ! $SHIPYARD_CLI | grep -qe '^step.*failed' && ! $SHIPYARD_CLI | grep -qe '^Usage:' ); do + $SHIPYARD_CLI + echo "## Sleeping for 10 mins" + sleep 600 +done +$SHIPYARD_CLI exec 2>&- exec 1>&- -exit 0 - +$SHIPYARD_CLI 2>&1 | grep -qPe 'failed|Usage:' +exit $((! $?))