From 71cac0764bc8776d218ab3a65cb6eff3ad749d6e Mon Sep 17 00:00:00 2001 From: oviner Date: Mon, 8 Jan 2024 16:50:17 +0200 Subject: [PATCH] Add option to collect logs in hub cluster Signed-off-by: oviner --- collection-scripts/gather_dr_resources | 31 ++++++++++++++++++-------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/collection-scripts/gather_dr_resources b/collection-scripts/gather_dr_resources index 9df6a95..ade3671 100755 --- a/collection-scripts/gather_dr_resources +++ b/collection-scripts/gather_dr_resources @@ -4,9 +4,22 @@ # If it is not defined, use PWD instead BASE_COLLECTION_PATH=${BASE_COLLECTION_PATH:-"$(pwd)"} -# Make a global variable for namespace +# Get all namespaces +NAMESPACES=$(oc get namespace | awk '{print $1}') -RAMEN_NAMESPACE=openshift-dr-system +# Items to check for +NAMESPACE_DR_SYSTEM="openshift-dr-system" +NAMESPACE_OPERATORS="openshift-operators" + +# Check if item1 exists in the output +if [[ $NAMESPACES =~ $NAMESPACE_DR_SYSTEM ]]; then + NAMESPACE=$NAMESPACE_DR_SYSTEM +elif [[ $NAMESPACES =~ $NAMESPACE_OPERATORS ]]; then + NAMESPACE=$NAMESPACE_OPERATORS +else + echo "Neither $NAMESPACE_DR_SYSTEM nor $NAMESPACE_OPERATORS exists in the namespaces" + exit 0 +fi #collect openshift-dr-system namespaced resources dr_resources=() @@ -15,20 +28,20 @@ dr_resources+=(configmap) dr_resources+=(pods -owide) dbglog "collecting dump of openshift-dr-system namespace" -{ oc adm --dest-dir="${BASE_COLLECTION_PATH}" inspect ns/"${RAMEN_NAMESPACE}" --"${SINCE_TIME}" 2>&1; } | dbglog +{ oc adm --dest-dir="${BASE_COLLECTION_PATH}" inspect ns/"${NAMESPACE}" --"${SINCE_TIME}" 2>&1; } | dbglog # Create the dir for oc_output for openshift-dr-system namespace -mkdir -p "${BASE_COLLECTION_PATH}/namespaces/${RAMEN_NAMESPACE}/oc_output/" +mkdir -p "${BASE_COLLECTION_PATH}/namespaces/${NAMESPACE}/oc_output/" # Run the Collection of Resources to list for dr_resource in "${dr_resources[@]}"; do dbglog "collecting oc command ${dr-resource}" - COMMAND_OUTPUT_FILE=${BASE_COLLECTION_PATH}/namespaces/${RAMEN_NAMESPACE}/oc_output/${dr_resource// /_} + COMMAND_OUTPUT_FILE=${BASE_COLLECTION_PATH}/namespaces/${NAMESPACE}/oc_output/${dr_resource// /_} # shellcheck disable=SC2086 - { oc get ${dr_resource} -n ${RAMEN_NAMESPACE}; } >>"${COMMAND_OUTPUT_FILE}" + { oc get ${dr_resource} -n ${NAMESPACE}; } >>"${COMMAND_OUTPUT_FILE}" done # Run collection of oc describe command for config map -dbglog "collecting oc describe configmap -n ${RAMEN_NAMESPACE}" -COMMAND_OUTPUT_FILE=${BASE_COLLECTION_PATH}/namespaces/${RAMEN_NAMESPACE}/oc_output/desc_configmap +dbglog "collecting oc describe configmap -n ${NAMESPACE}" +COMMAND_OUTPUT_FILE=${BASE_COLLECTION_PATH}/namespaces/${NAMESPACE}/oc_output/desc_configmap # shellcheck disable=SC2086 -{ oc describe configmap -n ${RAMEN_NAMESPACE}; } >>"${COMMAND_OUTPUT_FILE}" +{ oc describe configmap -n ${NAMESPACE}; } >>"${COMMAND_OUTPUT_FILE}"