mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Detail: Integration tests use these libraries (base,utils,common) for simplifying the usage of the API. These define the verbs of each entity's usage (create, delete, add etc). For the CLI to present the simplified API we'll leverage the integration libraries. + Fixes to setup-test-data.sh - kvm and xen each use a different version of the built-in Cent OS template, 5.5 and 5.3 namely. At a later point the setup-test-data script needs to be obsoleted. ostypeids in tests should directly be determined from listOsTypes API calls Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1351520707 +0530
103 lines
2.7 KiB
Bash
Executable File
103 lines
2.7 KiB
Bash
Executable File
#!/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
|