Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 14 additions & 11 deletions br-testing-automation/auto-br-oadp.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ set -o errtrace
OUTPUT_FILE="env-oadp.properties"
WRITE="false"
RESTORE_SINGLETONS="false"
BACKUP_CLU_USERNAME="kubeadmin"
RESTORE_CLU_USERNAME="kubeadmin"
DEBUG=1

BASE_DIR=$(cd $(dirname "$0")/$(dirname "$(readlink $0)") && pwd -P)
Expand All @@ -35,9 +37,9 @@ function main() {
check_for_oadp
fi
if [[ $SETUP_RESTORE == "true" ]] && [[ $TARGET_CLUSTER_TYPE == "diff" ]]; then
login $RESTORE_CLU_SERVER $RESTORE_CLU_TOKEN
login $RESTORE_CLU_SERVER $RESTORE_CLU_USERNAME $RESTORE_CLU_PASSWORD
check_for_oadp
login $BACKUP_CLU_SERVER $BACKUP_CLU_TOKEN
login $BACKUP_CLU_SERVER $BACKUP_CLU_USERNAME $BACKUP_CLU_PASSWORD
else
check_for_oadp
fi
Expand All @@ -48,7 +50,7 @@ function main() {
fi
if [[ $RESTORE == "true" ]]; then
if [[ $TARGET_CLUSTER_TYPE == "diff" ]]; then
login $RESTORE_CLU_SERVER $RESTORE_CLU_TOKEN
login $RESTORE_CLU_SERVER $RESTORE_CLU_USERNAME $RESTORE_CLU_PASSWORD
if [[ $BACKUP == "true" ]]; then
#in full e2e BR scenarios where we are restoring to a different cluster
#it takes a few minutes for the backup to be present on the new cluster once completed
Expand All @@ -61,7 +63,7 @@ function main() {
fi
restore_cpfs
if [[ $TARGET_CLUSTER_TYPE == "diff" ]]; then
login $BACKUP_CLU_SERVER $BACKUP_CLU_TOKEN
login $BACKUP_CLU_SERVER $BACKUP_CLU_USERNAME $BACKUP_CLU_PASSWORD
fi
fi
}
Expand Down Expand Up @@ -243,7 +245,7 @@ function prereq() {

#write env variables to output file
if [[ $WRITE == "true" ]]; then
write_specific_env_vars_to_file $OUTPUT_FILE "OC YQ OPERATOR_NS SERVICES_NS TETHERED_NS BACKUP RESTORE SETUP OADP_INSTALL OADP_RESOURCE_CREATION OADP_NS BACKUP_STORAGE_LOCATION_NAMESTORAGE_BUCKET_NAME S3_URL STORAGE_SECRET_ACCESS_KEY STORAGE_SECRET_ACCESS_KEY_ID IM_ENABLED ZEN_ENABLED NSS_ENABLED UMS_ENABLED MCSP_ENABLED CERT_MANAGER_NAMESPACE LICENSING_NAMESPACE LSR_NAMESPACE CPFS_VERSION ZENSERVICE_NAME ZEN_NAMESPACE ENABLE_CERT_MANAGER ENABLE_LICENSING ENABLE_LSR ENABLE_PRIVATE_CATALOG ENABLE_DEFAULT_CS ADDITIONAL_SOURCES CONTROL_NS BACKUP_CLU_SERVER BACKUP_CLU_TOKEN RESTORE_CLU_SERVER RESTORE_CLU_TOKEN TARGET_CLUSTER_TYPE BACKUP_NAME"
write_specific_env_vars_to_file $OUTPUT_FILE "OC YQ OPERATOR_NS SERVICES_NS TETHERED_NS BACKUP RESTORE SETUP OADP_INSTALL OADP_RESOURCE_CREATION OADP_NS BACKUP_STORAGE_LOCATION_NAMESTORAGE_BUCKET_NAME S3_URL STORAGE_SECRET_ACCESS_KEY STORAGE_SECRET_ACCESS_KEY_ID IM_ENABLED ZEN_ENABLED NSS_ENABLED UMS_ENABLED MCSP_ENABLED CERT_MANAGER_NAMESPACE LICENSING_NAMESPACE LSR_NAMESPACE CPFS_VERSION ZENSERVICE_NAME ZEN_NAMESPACE ENABLE_CERT_MANAGER ENABLE_LICENSING ENABLE_LSR ENABLE_PRIVATE_CATALOG ENABLE_DEFAULT_CS ADDITIONAL_SOURCES CONTROL_NS BACKUP_CLU_SERVER BACKUP_CLU_USERNAME BACKUP_CLU_PASSWORD RESTORE_CLU_SERVER RESTORE_CLU_USERNAME RESTORE_CLU_PASSWORD TARGET_CLUSTER_TYPE BACKUP_NAME"
fi
}

Expand All @@ -257,13 +259,13 @@ function check_cluster_credentials() {
error "TARGET_CLUSTER_TYPE value not set. Make sure it is either set in the parameters file or as an env variable."
else
if [[ $TARGET_CLUSTER_TYPE == "diff" ]]; then
if [[ $BACKUP_CLU_SERVER == "" ]] || [[ $BACKUP_CLU_TOKEN == "" ]] || [[ $RESTORE_CLU_SERVER == "" ]] || [[ $RESTORE_CLU_TOKEN == "" ]]; then
error "If interacting with a different cluster (either restore or setup), all of BACKUP_CLU_SERVER, BACKUP_CLU_TOKEN, RESTORE_CLU_SERVER, and RESTORE_CLU_TOKEN must be defined either in the parameters file or as an env variable."
if [[ $BACKUP_CLU_SERVER == "" ]] || [[ $BACKUP_CLU_USERNAME == "" ]] || [[ $BACKUP_CLU_PASSWORD == "" ]] || [[ $RESTORE_CLU_SERVER == "" ]] || [[ $BACKUP_CLU_USERNAME == "" ]] || [[ $RESTORE_CLU_PASSWORD == "" ]]; then
error "If interacting with a different cluster (either restore or setup), all of BACKUP_CLU_SERVER BACKUP_CLU_USERNAME BACKUP_CLU_PASSWORD RESTORE_CLU_SERVER RESTORE_CLU_USERNAME and RESTORE_CLU_PASSWORD must be defined either in the parameters file or as an env variable."
else
info "Different cluster selected. Validating login credentials work..."
${OC} login --token=$RESTORE_CLU_TOKEN --server=$RESTORE_CLU_SERVER --insecure-skip-tls-verify=true
${OC} login -u $RESTORE_CLU_USERNAME -p $RESTORE_CLU_PASSWORD --server=$RESTORE_CLU_SERVER --insecure-skip-tls-verify=true
info "Logging back into home cluster..."
${OC} login --token=$BACKUP_CLU_TOKEN --server=$BACKUP_CLU_SERVER --insecure-skip-tls-verify=true
${OC} login -u $BACKUP_CLU_USERNAME -p $BACKUP_CLU_PASSWORD --server=$BACKUP_CLU_SERVER --insecure-skip-tls-verify=true
fi
fi
success "Backup and Restore cluster login credentials verified."
Expand Down Expand Up @@ -956,10 +958,11 @@ function wait_for_backup() {

function login() {
server=$1
token=$2
username=$2
password=$3
title "Logging in to server $server"
#oc login to spoke cluster
${OC} login --token=$token --server=$server --insecure-skip-tls-verify=true
${OC} login -u $username -p $password --server=$server --insecure-skip-tls-verify=true
}


Expand Down
6 changes: 4 additions & 2 deletions br-testing-automation/env-fusion.properties
Original file line number Diff line number Diff line change
Expand Up @@ -49,9 +49,11 @@ CONTROL_NS="" # Pass the control namespace if it is needed to be backed up

#variables for just spoke setup
#these values can be found by copying the login token and server values for an openshift cluster
HUB_OC_TOKEN=
HUB_USERNAME="kubeadmin"
HUB_PASSWORD=
HUB_SERVER=
SPOKE_OC_TOKEN=
SPOKE_USERNAME="kubeadmin"
SPOKE_PASSWORD=
SPOKE_SERVER=

# ==============================================================================
Expand Down
6 changes: 4 additions & 2 deletions br-testing-automation/env-oadp.properties
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,10 @@ CONTROL_NS="" # Pass the control namespace if it is needed to be backed up
# ==============================================================================
# variables for auto-br script
BACKUP_CLU_SERVER=""
BACKUP_CLU_TOKEN=""
BACKUP_CLU_USERNAME="kubeadmin"
BACKUP_CLU_PASSWORD=""
RESTORE_CLU_SERVER=""
RESTORE_CLU_TOKEN=""
RESTORE_CLU_USERNAME="kubeadmin"
RESTORE_CLU_PASSWORD=""
TARGET_CLUSTER_TYPE="same" # determines if restoring to the same cluster or to a different cluster. Values are "same" and "diff"
BACKUP_NAME="" # always necessary for either backup or restore
18 changes: 9 additions & 9 deletions br-testing-automation/fusion-backup-setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -147,8 +147,8 @@ function prereq() {
error "Missing value for one or more of OPERATOR_NAMESPACE, SERVICES_NS, BACKUP_STORAGE_LOCATION_NAME, STORAGE_BUCKET_NAME, S3_URL, STORAGE_SECRET_ACCESS_KEY, STORAGE_SECRET_ACCESS_KEY_ID, CERT_MANAGER_NAMESPACE, LICENSING_NAMESPACE, LSR_NAMESPACE, CPFS_VERSION, ZENSERVICE_NAME. Please update env.properties file with correct parameters and rerun."
fi
elif [[ $RESTORE_SETUP == "true" ]]; then
if [[ -z $HUB_OC_TOKEN ]] || [[ -z $HUB_SERVER ]] || [[ -z $SPOKE_OC_TOKEN ]] || [[ -z $SPOKE_SERVER ]]; then
error "Missing value for one or more of HUB_OC_TOKEN, HUB_SERVER, SPOKE_OC_TOKEN, SPOKE_SERVER. Please update env.properties file with correct parameters and rerun."
if [[ -z $HUB_USERNAME ]] || [[ -z $HUB_PASSWORD ]] || [[ -z $HUB_SERVER ]] || [[ -z $SPOKE_USERNAME ]] || [[ -z $SPOKE_PASSWORD ]] || [[ -z $SPOKE_SERVER ]]; then
error "Missing value for one or more of HUB_USERNAME, HUB_PASSWORD, HUB_SERVER, SPOKE_USERNAME, SPOKE_PASSWORD, SPOKE_SERVER. Please update env.properties file with correct parameters and rerun."
fi
fi
fi
Expand Down Expand Up @@ -221,16 +221,16 @@ function install_sf_br(){
error="false"
info "Connecting to spoke cluster $SPOKE_SERVER"
#oc login to spoke cluster
${OC} login --token=$SPOKE_OC_TOKEN --server=$SPOKE_SERVER --insecure-skip-tls-verify=true
${OC} login -u $SPOKE_USERNAME -p $SPOKE_PASSWORD --server=$SPOKE_SERVER --insecure-skip-tls-verify=true
validate_sc
./cmd-line-install/install/install-isf-br.sh -s $catalog_image -n $SF_NAMESPACE || error="true"
if [[ $error == "true" ]]; then
${OC} login --token=$HUB_OC_TOKEN --server=$HUB_SERVER --insecure-skip-tls-verify=true
${OC} login -u $HUB_USERNAME -p $HUB_PASSWORD --server=$HUB_SERVER --insecure-skip-tls-verify=true
error "SF install script failed to install on spoke cluster. Logging back into hub cluster $HUB_SERVER."
fi
info "Connecting to hub cluster $HUB_SERVER"
#oc login to the hub cluster
${OC} login --token=$HUB_OC_TOKEN --server=$HUB_SERVER --insecure-skip-tls-verify=true
${OC} login -u $HUB_USERNAME -p $HUB_PASSWORD --server=$HUB_SERVER --insecure-skip-tls-verify=true
apiurl=$(oc whoami --show-server)
cluster=$(echo $apiurl | cut -d":" -f2 | tr -d /)
file=spokes_$cluster.yaml
Expand All @@ -240,12 +240,12 @@ function install_sf_br(){

info "Re-connecting to spoke cluster $SPOKE_SERVER"
#oc login to spoke cluster
${OC} login --token=$SPOKE_OC_TOKEN --server=$SPOKE_SERVER --insecure-skip-tls-verify=true
${OC} login -u $SPOKE_USERNAME -p $SPOKE_PASSWORD --server=$SPOKE_SERVER --insecure-skip-tls-verify=true
info "Applying spoke yaml..."
#apply generated yaml file
${OC} apply -f $work_dir/$file || error="true"
if [[ $error == "true" ]]; then
${OC} login --token=$HUB_OC_TOKEN --server=$HUB_SERVER --insecure-skip-tls-verify=true
${OC} login -u $HUB_USERNAME -p $HUB_PASSWORD --server=$HUB_SERVER --insecure-skip-tls-verify=true
error "Failed to apply spoke yaml on spoke cluster $SPOKE_SERVER. Logging back into hub cluster $HUB_SERVER."
fi
info "Waiting for BR Agent service to install on spoke cluster $SPOKE_SERVER..."
Expand All @@ -265,13 +265,13 @@ function install_sf_br(){
fi
done
if [[ $(${OC} get fusionserviceinstance ibm-backup-restore-agent-service-instance -n $SF_NAMESPACE -o jsonpath='{.status.installStatus.status}') != "Completed" ]] && [[ $retries == 0 ]]; then
${OC} login --token=$HUB_OC_TOKEN --server=$HUB_SERVER --insecure-skip-tls-verify=true
${OC} login -u $HUB_USERNAME -p $HUB_PASSWORD --server=$HUB_SERVER --insecure-skip-tls-verify=true
error "Timed out waiting for agent service install to come ready on spoke cluster $SPOKE_SERVER. Reconnecting to hub cluster $HUB_SERVER."
fi

info "Re-connecting to hub cluster $HUB_SERVER"
#oc login to the hub cluster
${OC} login --token=$HUB_OC_TOKEN --server=$HUB_SERVER --insecure-skip-tls-verify=true
${OC} login -u $HUB_USERNAME -p $HUB_PASSWORD --server=$HUB_SERVER --insecure-skip-tls-verify=true
success "Spectrum Fusion and Backup and Restore Spoke Service installed."
fi

Expand Down
Loading