github.com/verrazzano/verrazzano@v1.7.1/tests/e2e/config/scripts/create-test-oci-config-secret.sh (about) 1 #!/bin/bash 2 # 3 # Copyright (c) 2020, 2022, Oracle and/or its affiliates. 4 # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 5 # 6 7 set -e 8 9 TMP_DIR=$(mktemp -d) 10 trap 'rc=$?; rm -rf ${TMP_DIR} || true' EXIT 11 12 if [ "${OCI_DNS_AUTH}" != "instance_principal" ]; then 13 # perform these validations when instance principal is not used 14 # Validate expected environment variables exist 15 if [ -z "${OCI_CLI_REGION}" ]; then 16 echo "OCI_CLI_REGION environment variable must be set" 17 exit 1 18 fi 19 if [ -z "${OCI_CLI_TENANCY}" ]; then 20 echo "OCI_CLI_TENANCY environment variable must be set" 21 exit 1 22 fi 23 if [ -z "${OCI_CLI_USER}" ]; then 24 echo "OCI_CLI_USER environment variable must be set" 25 exit 1 26 fi 27 if [ -z "${OCI_CLI_FINGERPRINT}" ]; then 28 echo "OCI_CLI_FINGERPRINT environment variable must be set" 29 exit 1 30 fi 31 if [ -z "${OCI_CLI_KEY_FILE}" ]; then 32 echo "OCI_CLI_KEY_FILE environment variable must be set" 33 exit 1 34 fi 35 fi 36 37 if [ -z "$WORKSPACE" ] ; then 38 echo "This script must only be called from Jenkins and requires environment variable WORKSPACE is set" 39 exit 1 40 fi 41 42 # Copy/download the create_oci_config_secret.sh to WORKSPACE and run it as a standalone script 43 cp ${WORKSPACE}/platform-operator/scripts/install/create_oci_config_secret.sh ${WORKSPACE}/create_oci_config_secret.sh 44 chmod +x ${WORKSPACE}/create_oci_config_secret.sh 45 46 if [ "${OCI_DNS_AUTH}" != "instance_principal" ]; then 47 OUTPUT_FILE="$TMP_DIR/oci_config" 48 KEY_FILE="$TMP_DIR/oci_key" 49 echo "[DEFAULT]" > $OUTPUT_FILE 50 echo "#region=someregion.region.com" >> $OUTPUT_FILE 51 echo "#tenancy=OCID of the tenancy" >> $OUTPUT_FILE 52 echo "#user=" >> $OUTPUT_FILE 53 echo "region=${OCI_CLI_REGION}" >> $OUTPUT_FILE 54 echo "tenancy=${OCI_CLI_TENANCY}" >> $OUTPUT_FILE 55 echo "user=${OCI_CLI_USER}" >> $OUTPUT_FILE 56 echo "fingerprint=${OCI_CLI_FINGERPRINT}" >> $OUTPUT_FILE 57 if [[ ! -z "${OCI_PRIVATE_KEY_PASSPHRASE}" ]]; then 58 echo " passphrase: ${OCI_PRIVATE_KEY_PASSPHRASE}" >> $OUTPUT_FILE 59 fi 60 echo "key_file=$KEY_FILE" >> $OUTPUT_FILE 61 cat ${OCI_CLI_KEY_FILE} > $KEY_FILE 62 echo "Creating the secret with auth_type user_principal" 63 ${WORKSPACE}/create_oci_config_secret.sh -o ${OUTPUT_FILE} 64 else 65 echo "Creating the secret with auth_type instance_principal" 66 ${WORKSPACE}/create_oci_config_secret.sh -a instance_principal 67 fi