|  | #!/bin/bash | 
|  | # Licensed to the Apache Software Foundation (ASF) under one | 
|  | # or more contributor license agreements.  See the NOTICE file | 
|  | # distributed with this work for additional information | 
|  | # regarding copyright ownership.  The ASF licenses this file | 
|  | # to you 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. | 
|  |  | 
|  | usage() { | 
|  | printf "Usage: %s:\n | 
|  | [-t path to tests ]  \n | 
|  | [-m mgmt-server ] \n | 
|  | [-h hypervisor (xen|kvm) ] \n | 
|  | [-p hypervisor root password ] \n | 
|  | [-d db node url ]\n" $(basename $0) >&2 | 
|  | } | 
|  |  | 
|  | failed() { | 
|  | exit $1 | 
|  | } | 
|  |  | 
|  | #defaults | 
|  | TESTDIR="/root/cloudstack/test/" | 
|  | MGMT_SVR="localhost" | 
|  | DB_SVR="localhost" | 
|  | HV_PASSWD="password" | 
|  |  | 
|  | while getopts 't:d:m:p:h:' OPTION | 
|  | do | 
|  | case $OPTION in | 
|  | d)    dflag=1 | 
|  | DB_SVR="$OPTARG" | 
|  | ;; | 
|  | t)    tflag=1 | 
|  | TESTDIR="$OPTARG" | 
|  | ;; | 
|  | m)    mflag=1 | 
|  | MGMT_SVR="$OPTARG" | 
|  | ;; | 
|  | h)    hflag=1 | 
|  | HV="$OPTARG" | 
|  | ;; | 
|  | p)    pflag=1 | 
|  | HV_PASSWD="$OPTARG" | 
|  | ;; | 
|  | ?)	usage | 
|  | failed 2 | 
|  | ;; | 
|  | esac | 
|  | done | 
|  |  | 
|  | #Damn Small Linux ISO type | 
|  | if [[ $HV == "kvm" ]]; then | 
|  | ostypeid=$(mysql -ucloud -Dcloud -pcloud -h$DB_SVR -s -N -r -e"select uuid from guest_os where display_name='CentOS 5.5 (64-bit)'") | 
|  | else | 
|  | ostypeid=$(mysql -ucloud -Dcloud -pcloud -h$DB_SVR -s -N -r -e"select uuid from guest_os where display_name='CentOS 5.3 (64-bit)'") | 
|  | fi | 
|  | if [[ $ostypeid == "" ]]; then | 
|  | echo "Unable to contact DB server @ $DB_SVR" | 
|  | exit 2 | 
|  | fi | 
|  |  | 
|  | nc -z $MGMT_SVR 8096 | 
|  | if [[ $? -ne 0 ]]; then | 
|  | echo "$MGMT_SVR doesn't have port 8096 open" | 
|  | exit 2 | 
|  | fi | 
|  |  | 
|  | if [[ ! -d $TESTDIR ]]; then | 
|  | echo "No directory $TESTDIR found" | 
|  | exit 2 | 
|  | fi | 
|  | for file in `find $TESTDIR -name *.py -type f` | 
|  | do | 
|  | old_ostypeid=$(grep ostypeid $file | head -1 | cut -d: -f2 | tr -d " ,'") | 
|  | if [[ $old_ostypeid != "" ]] | 
|  | then | 
|  | echo "replacing:" $old_ostypeid, "with:" $ostypeid,"in " $file | 
|  | sed -i "s/$old_ostypeid/$ostypeid/g" $file | 
|  | #sed -i "s/http:\/\/iso.linuxquestions.org\/download\/504\/1819\/http\/gd4.tuwien.ac.at\/dsl-4.4.10.iso/http:\/\/nfs1.lab.vmops.com\/isos_32bit\/dsl-4.4.10.iso/g" $file | 
|  | sed -i "s/fr3sca/$HV_PASSWD/g" $file | 
|  | fi | 
|  | done | 
|  |  | 
|  | #Python version check | 
|  | version_tuple=$(python -c 'import sys; print(sys.version_info[:2])') | 
|  | if [[ $version_tuple == "(2, 7)" ]] | 
|  | then | 
|  | echo "Done" | 
|  | else | 
|  | echo "WARN: Python version 2.7 not detected on system." | 
|  | fi |