#!/bin/bash
#
# Copyright 2014 Hewlett-Packard Development Company, L.P.
# 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.

set -eux

cd /

# We want to map the DC network into the VMs:
export OVERCLOUD_HYPERVISOR_PUBLIC_INTERFACE=eth2

# API endpoint for host file injection
export OVERCLOUD_NAME=ci-overcloud.hp1.tripleo.org

# How many machines (46 machines in theory)
export OVERCLOUD_CONTROLSCALE=3
export OVERCLOUD_COMPUTESCALE=16
# testenv count = 25, 3:2 memory ratio between testenv needs and CI slaves.

# And a unique name for the thing we're deploying.
export STACKNAME=ci-overcloud

#export OVERCLOUD_DIB_EXTRA_ARGS="pypi"
export NODE_ARCH=amd64
# We need to inject a static mapping to the API endpoint.
export DIB_COMMON_ELEMENTS="stackuser hosts use-ephemeral"
#export DIB_COMMON_ELEMENTS="pypi-openstack pip-cache stackuser hosts"
#source /opt/stack/tripleo-incubator/scripts/refresh-env /opt/stack
#source /opt/stack/tripleo-incubator/scripts/devtest_variables.sh
#source /root/stackrc

export OVERCLOUD_NTP_SERVER=10.10.16.134
set +e
OVERCLOUD_LIBVIRT_TYPE="kvm" \
    devtest_overcloud.sh eth2 "" "" "" 138.35.77.13 \
    138.35.77.126 138.35.77.0/25 \
    $TRIPLEO_ROOT/tripleo-incubator/tripleo-cloud/tripleo-cd-admins \
    $TRIPLEO_ROOT/tripleo-incubator/tripleo-cloud/tripleo-cd-users \
    $STACKNAME /home/shared/ssl/ci-overcloud.hp1.tripleo.org \
    ci-overcloud.hp1.tripleo.org
RESULT=$?
set -e

if [ $RESULT == 0 ] ; then
    set +e
    export TE_DATAFILE=$TRIPLEO_ROOT/testenv.json
    source $TRIPLEO_ROOT/tripleo-incubator/overcloudrc
    $TRIPLEO_ROOT/tripleo-image-elements/elements/tripleo-cd/bin/prepare-ci-overcloud \
        $TRIPLEO_ROOT/tripleo-image-elements/elements/tripleo-cd/configs/te_hp1rc
    RESULT=$?
    set -e
fi

MSG=$(echo "************** $STACKNAME complete status=$RESULT ************")
echo "$MSG"
set -x
send-irc tripleo $STACKNAME "$MSG"
