-
Notifications
You must be signed in to change notification settings - Fork 20
/
run-integration.sh
executable file
·71 lines (54 loc) · 2.29 KB
/
run-integration.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/usr/bin/env bash
set -e
source bosh-cpi-src/ci/tasks/utils.sh
: ${ALICLOUD_ACCESS_KEY_ID:?}
: ${ALICLOUD_ACCESS_KEY_SECRET:?}
: ${METADATA_FILE:=environment/metadata}
# Stemcell stuff
export CPI_STEMCELL_VERSION=`cat stemcell/version`
export CPI_STEMCELL_FILE=`pwd`/stemcell/image.tgz
pushd stemcell
tar -zxvf stemcell.tgz
cp image image.tgz
tar -xzvf image
stemcell_image="$(echo ${PWD}/root.*)"
stemcell_image_name="$(basename ${stemcell_image})"
export CPI_STEMCELL_OSS_OBJECT=${stemcell_image_name}
popd
echo "get metadata from output..."
cat ${METADATA_FILE}
exportMetadata2Env(){
value=$(cat ${METADATA_FILE} | grep '^"'$2 | awk -F : '{print $2}' | grep -o "[^ ]\+\( \+[^ ]\+\)*")
value2=${value//,/}
export $1=${value2//\"/}
}
export CPI_ACCESS_KEY_ID=${ALICLOUD_ACCESS_KEY_ID}
export CPI_ACCESS_KEY_SECRET=${ALICLOUD_ACCESS_KEY_SECRET}
exportMetadata2Env CPI_REGION region
exportMetadata2Env CPI_ZONE zone
exportMetadata2Env CPI_SECURITY_GROUP_ID security_group_id
exportMetadata2Env CPI_VSWITCH_ID vswitch_id
exportMetadata2Env CPI_INTERNAL_CIDR internal_cidr
exportMetadata2Env CPI_INTERNAL_IP internal_ip
exportMetadata2Env CPI_INTERNAL_GW internal_gw
exportMetadata2Env CPI_EXTERNAL_IP external_ip
exportMetadata2Env CPI_STEMCELL_OSS_BUCKET integration_bucket
exportMetadata2Env CPI_SLB_ID slb
exportMetadata2Env CPI_SLB_SERVER_GROUP_ID server_group_slb
exportMetadata2Env RAM_ROLE_NAME ram_role
export CIDR_NOTATION=$(getCidrNotation $CPI_INTERNAL_CIDR)
export CPI_INTERNAL_NETMASK=$(cdr2mask $CIDR_NOTATION)
echo "Uploading raw image ${stemcell_image_name} to ${CPI_STEMCELL_OSS_BUCKET}..."
aliyun oss cp ${stemcell_image} oss://${CPI_STEMCELL_OSS_BUCKET}/${stemcell_image_name} --access-key-id ${CPI_ACCESS_KEY_ID} --access-key-secret ${CPI_ACCESS_KEY_SECRET} --region ${CPI_REGION} --force
# Setup Go and run tests
echo "set go path..."
export GOPATH=${PWD}/bosh-cpi-src
export PATH=${GOPATH}/bin:$PATH
echo "go version..."
check_go_version $GOPATH
echo "do integration test..."
cd ${PWD}/bosh-cpi-src
env
make testintci
echo "Deleting raw image ${stemcell_image_name} from ${CPI_STEMCELL_OSS_BUCKET}..."
aliyun oss rm oss://${CPI_STEMCELL_OSS_BUCKET}/${stemcell_image_name} -r -f --access-key-id ${CPI_ACCESS_KEY_ID} --access-key-secret ${CPI_ACCESS_KEY_SECRET} --region ${CPI_REGION}