Skip to content

Commit bac7cf3

Browse files
authored
Integrate running VPC e2e tests with Boskos (#1026)
1 parent 31d5a80 commit bac7cf3

File tree

2 files changed

+18
-10
lines changed

2 files changed

+18
-10
lines changed

hack/boskos.sh

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ set -o pipefail
2121
REPO_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
2222

2323
USER="cluster-api-provider-ibmcloud"
24-
RESOURCE_TYPE="${RESOURCE_TYPE:-"powervs-service"}"
2524

2625
release_account(){
2726
url="http://${BOSKOS_HOST}/release?name=${BOSKOS_RESOURCE_NAME}&dest=dirty&owner=${USER}"
@@ -34,14 +33,19 @@ release_account(){
3433
}
3534

3635
checkout_account(){
37-
url="http://${BOSKOS_HOST}/acquire?type=${RESOURCE_TYPE}&state=free&dest=busy&owner=${USER}"
36+
resource_type=$1
37+
url="http://${BOSKOS_HOST}/acquire?type=${resource_type}&state=free&dest=busy&owner=${USER}"
3838
output=$(curl -X POST ${url})
3939
[ $? = 0 ] && status_code=200
4040

4141
if [[ ${status_code} == 200 ]]; then
4242
echo "export BOSKOS_RESOURCE_NAME=$(echo ${output} | jq -r '.name')"
43-
echo "export BOSKOS_RESOURCE_ID=$(echo ${output} | jq -r '.userdata["service-instance-id"]')"
4443
echo "export IBMCLOUD_API_KEY=$(echo ${output} | jq -r '.userdata["api-key"]')"
44+
echo "export BOSKOS_RESOURCE_GROUP=$(echo ${output} | jq -r '.userdata["resource-group"]')"
45+
echo "export BOSKOS_REGION=$(echo ${output} | jq -r '.userdata["region"]')"
46+
if [[ ${resource_type} == "powervs-service" ]]; then
47+
echo "export BOSKOS_RESOURCE_ID=$(echo ${output} | jq -r '.userdata["service-instance-id"]')"
48+
fi
4549
else
4650
echo "Got invalid response- ${status_code}"
4751
exit 1

scripts/ci-e2e.sh

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ REPO_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
2222
cd "${REPO_ROOT}" || exit 1
2323
GOPATH_BIN="$(go env GOPATH)/bin/"
2424
export PATH="${GOPATH_BIN}:${PATH}"
25+
RESOURCE_TYPE="${RESOURCE_TYPE:-"powervs-service"}"
2526

2627
# shellcheck source=../hack/ensure-go.sh
2728
source "${REPO_ROOT}/hack/ensure-go.sh"
@@ -35,8 +36,8 @@ mkdir -p "${ARTIFACTS}/logs/"
3536

3637
ARCH=$(uname -m)
3738
OS=$(uname -s)
38-
IBMCLOUD_CLI_VERSION=${IBMCLOUD_CLI_VERSION:-"2.12.0"}
39-
PVSADM_VERSION=${PVSADM_VERSION:-"v0.1.7"}
39+
IBMCLOUD_CLI_VERSION=${IBMCLOUD_CLI_VERSION:-"2.13.0"}
40+
PVSADM_VERSION=${PVSADM_VERSION:-"v0.1.9"}
4041
E2E_FLAVOR=${E2E_FLAVOR:-}
4142
REGION=${REGION:-"us-south"}
4243

@@ -113,10 +114,10 @@ prerequisites_powervs(){
113114

114115
prerequisites_vpc(){
115116
# Assigning VPC variables
116-
export IBMVPC_REGION=${REGION}
117-
export IBMVPC_ZONE="${REGION}-1"
118-
export IBMVPC_RESOURCEGROUP=${IBMVPC_RESOURCEGROUP:-"fa5405a58226402f9a5818cb9b8a5a8a"}
119-
export IBMVPC_NAME="capi-vpc-$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | head --bytes 5)"
117+
export IBMVPC_REGION=${BOSKOS_REGION:-"jp-tok"}
118+
export IBMVPC_ZONE="${BOSKOS_REGION:-}-1"
119+
export IBMVPC_RESOURCEGROUP=${BOSKOS_RESOURCE_GROUP:-"fa5405a58226402f9a5818cb9b8a5a8a"}
120+
export IBMVPC_NAME=${BOSKOS_RESOURCE_NAME:-"capi-vpc-e2e"}
120121
export IBMVPC_IMAGE_NAME=${IBMVPC_IMAGE_NAME:-"capibm-vpc-ubuntu-2004-kube-v1-25-2"}
121122
export IBMVPC_PROFILE=${IBMVPC_PROFILE:-"bx2-4x16"}
122123
export IBMVPC_SSHKEY_NAME=${IBMVPC_SSHKEY_NAME:-"vpc-cloud-bot-key"}
@@ -125,12 +126,15 @@ prerequisites_vpc(){
125126
}
126127

127128
main(){
129+
130+
[ "${E2E_FLAVOR}" = "vpc" ] && RESOURCE_TYPE="vpc-service"
131+
128132
# If BOSKOS_HOST is set then acquire an IBM Cloud resource from Boskos.
129133
if [ -n "${BOSKOS_HOST:-}" ]; then
130134
# Check out the resource from Boskos and store the produced environment
131135
# variables in a temporary file.
132136
account_env_var_file="$(mktemp)"
133-
checkout_account 1> "${account_env_var_file}"
137+
checkout_account ${RESOURCE_TYPE} 1> "${account_env_var_file}"
134138
checkout_account_status="${?}"
135139

136140
# If the checkout process was a success then load the

0 commit comments

Comments
 (0)