From d86ca29cd561d49bb00ee64ee120a1ff042ae18a Mon Sep 17 00:00:00 2001 From: Damani Date: Mon, 29 Jun 2020 21:07:55 -0700 Subject: [PATCH 1/9] Reset Agent Certificate --- .../verify/CDM/default/410_use_replica_cdm_cluster_cert.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh index 7f18f27aff..582e093264 100644 --- a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh +++ b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh @@ -39,5 +39,8 @@ StopIfError "Could not copy replica CDM cluster certificate" /usr/bin/chmod $v 600 ${CDM_KEYS_DIR}/rubrik.crt +mv $v ${CDM_KEYS_DIR}/agent.crt ${CDM_KEYS_DIR}/agent.crt.orig +mv $v ${CDM_KEYS_DIR}/agent.pem ${CDM_KEYS_DIR}/agent.pem.orig +/etc/rubrik/rba-keygen.sh LogPrint "Replica Rubrik (CDM) cluster certificate installed." From 955e18a9055d8773e2dd22c84512b2144da01159 Mon Sep 17 00:00:00 2001 From: Damani Date: Mon, 29 Jun 2020 21:10:11 -0700 Subject: [PATCH 2/9] Redundant with 450_start_cdm_rbs.sh --- .../rear/verify/CDM/default/400_verify_cdm.sh | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 usr/share/rear/verify/CDM/default/400_verify_cdm.sh diff --git a/usr/share/rear/verify/CDM/default/400_verify_cdm.sh b/usr/share/rear/verify/CDM/default/400_verify_cdm.sh deleted file mode 100644 index 7c13585ef0..0000000000 --- a/usr/share/rear/verify/CDM/default/400_verify_cdm.sh +++ /dev/null @@ -1,19 +0,0 @@ -# 400_verify_cdm.sh -# Start the Rubrik (CDM) client after resetting the UUID - -RBA_DIR=/etc/rubrik -AGENT_UUID=${RBA_DIR}/conf/uuid -RBA_BIN_DIR=/usr/bin/rubrik - -mv ${AGENT_UUID} ${AGENT_UUID}.old -/usr/bin/uuidgen > ${AGENT_UUID} - -BOOTSTRAP_DAEMON_OPTS="`cat ${RBA_DIR}/conf/bootstrap_flags.conf`" -AGENT_DAEMON_OPTS="`cat ${RBA_DIR}/conf/agent_flags.conf`" -BOOTSTRAP_DAEMON=$RBA_BIN_DIR/bootstrap_agent_main -AGENT_DAEMON=$RBA_BIN_DIR/backup_agent_main - -$BOOTSTRAP_DAEMON $BOOTSTRAP_DAEMON_OPTS -$AGENT_DAEMON $AGENT_DAEMON_OPTS - -Log "Rubrik (CDM) agent started" From 9cad41b829e442aa05d45159442c4ea530c17e2e Mon Sep 17 00:00:00 2001 From: Damani Date: Mon, 29 Jun 2020 22:37:18 -0700 Subject: [PATCH 3/9] Download proper file from newer Rubrik Clusters. --- .../default/410_use_replica_cdm_cluster_cert.sh | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh index 582e093264..ce17b6fa88 100644 --- a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh +++ b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh @@ -25,12 +25,18 @@ while true; do done CDM_SUNOS_TAR=rubrik-agent-sunos5.10.sparc.tar.gz +CDM_SOLARIS_TAR=rubrik-agent-solaris.sparc.tar.gz +CDM_TAR_FILE=$CDM_SUNOS_TAR cd /tmp -/usr/bin/curl $v -kLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_SUNOS_TAR} -StopIfError "Could not download https://${CDM_CLUSTER_IP}/connector/${CDM_SUNOS_TAR}" - -/usr/bin/tar $v -xzf $CDM_SUNOS_TAR -StopIfError "Could not extract $CDM_SUNOS_TAR" +/usr/bin/curl $v -fskLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} +if [[ $? -gt 0 ]]; then + CDM_TAR_FILE=$CDM_SOLARIS_TAR + /usr/bin/curl $v -fkLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} +fi +StopIfError "Could not download cluster certificate extraction." + +/usr/bin/tar $v -xzf $CDM_TAR_FILE +StopIfError "Could not extract $CDM_TAR_FILE" CDM_CERT_FILE=$(find ./ -name "rubrik.crt") mv $v ${CDM_KEYS_DIR}/rubrik.crt ${CDM_KEYS_DIR}/rubrik.crt.orig From 7b1e26b9b8c43934e46d8a1f95c8b85168a807df Mon Sep 17 00:00:00 2001 From: Damani Date: Tue, 30 Jun 2020 12:23:26 -0700 Subject: [PATCH 4/9] Added comments and updated error message --- .../verify/CDM/default/410_use_replica_cdm_cluster_cert.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh index ce17b6fa88..bf238db117 100644 --- a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh +++ b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh @@ -24,6 +24,11 @@ while true; do PrintError "Please enter a non-empty CDM cluster IP." done +# The name of the tar file that is being downloaded has changed in Rubrik CDM v5.1. +# Before Rubrik CDM v5.1 it was rubrik-agent-sunos5.10.sparc.tar.gz +# since Rubrik CDM v5.1 it is rubrik-agent-solaris.sparc.tar.gz +# cf. https://github.com/rear/rear/issues/2441 + CDM_SUNOS_TAR=rubrik-agent-sunos5.10.sparc.tar.gz CDM_SOLARIS_TAR=rubrik-agent-solaris.sparc.tar.gz CDM_TAR_FILE=$CDM_SUNOS_TAR @@ -33,7 +38,7 @@ if [[ $? -gt 0 ]]; then CDM_TAR_FILE=$CDM_SOLARIS_TAR /usr/bin/curl $v -fkLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} fi -StopIfError "Could not download cluster certificate extraction." +StopIfError "Could not download Rubrik agent from https://${CDM_CLUSTER_IP}/connector/${CDM_SUNOS_TAR} or https://${CDM_CLUSTER_IP}/connector/${CDM_SOLARIS_TAR}." /usr/bin/tar $v -xzf $CDM_TAR_FILE StopIfError "Could not extract $CDM_TAR_FILE" From 24a2182452f8d8600f7c3700cf2bd7dcfbfaf1c6 Mon Sep 17 00:00:00 2001 From: Johannes Meixner Date: Tue, 21 Jul 2020 14:07:58 +0200 Subject: [PATCH 5/9] Update 410_use_replica_cdm_cluster_cert.sh --- .../410_use_replica_cdm_cluster_cert.sh | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh index bf238db117..9fd473ea0a 100644 --- a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh +++ b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh @@ -18,7 +18,7 @@ while true ; do UserOutput "Please answer 'y' or 'n'" done -while true; do +while true ; do CDM_CLUSTER_IP="$(UserInput -I USER_INPUT_CDM_CLUSTER_IP -r -t 0 -p "Enter one of the IP addresses for the replica CDM cluster: ")" [[ -n "$CDM_CLUSTER_IP" ]] && break PrintError "Please enter a non-empty CDM cluster IP." @@ -32,23 +32,27 @@ done CDM_SUNOS_TAR=rubrik-agent-sunos5.10.sparc.tar.gz CDM_SOLARIS_TAR=rubrik-agent-solaris.sparc.tar.gz CDM_TAR_FILE=$CDM_SUNOS_TAR +# FIXME: 'cd /tmp' changes the working directory hardcoded to /tmp but why not to $TMPDIR ? +# cf. https://github.com/rear/rear/pull/2445/files#r448155637 +# Additionally I am missing the counterpart that changes the working directory +# back to what it was before, i.e. via 'pushd $TMPDIR' plus 'popd' at the end of the script +# e.g. as in output/ISO/Linux-ppc64le/820_create_iso_image.sh +# (careful in case of 'return' after 'pushd': must call the matching 'popd' before 'return'): cd /tmp -/usr/bin/curl $v -fskLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} -if [[ $? -gt 0 ]]; then +if ! curl $v -fskLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} ; then CDM_TAR_FILE=$CDM_SOLARIS_TAR - /usr/bin/curl $v -fkLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} + if ! curl $v -fkLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} ; then + Error "Could not download Rubrik agent from https://${CDM_CLUSTER_IP}/connector/${CDM_SUNOS_TAR} or https://${CDM_CLUSTER_IP}/connector/${CDM_SOLARIS_TAR}." + fi fi -StopIfError "Could not download Rubrik agent from https://${CDM_CLUSTER_IP}/connector/${CDM_SUNOS_TAR} or https://${CDM_CLUSTER_IP}/connector/${CDM_SOLARIS_TAR}." -/usr/bin/tar $v -xzf $CDM_TAR_FILE -StopIfError "Could not extract $CDM_TAR_FILE" +tar $v -xzf $CDM_TAR_FILE || Error "Could not extract $CDM_TAR_FILE" CDM_CERT_FILE=$(find ./ -name "rubrik.crt") mv $v ${CDM_KEYS_DIR}/rubrik.crt ${CDM_KEYS_DIR}/rubrik.crt.orig -cp $v $CDM_CERT_FILE $CDM_KEYS_DIR -StopIfError "Could not copy replica CDM cluster certificate" +cp $v $CDM_CERT_FILE $CDM_KEYS_DIR || Error "Could not copy replica CDM cluster certificate" -/usr/bin/chmod $v 600 ${CDM_KEYS_DIR}/rubrik.crt +chmod $v 600 ${CDM_KEYS_DIR}/rubrik.crt mv $v ${CDM_KEYS_DIR}/agent.crt ${CDM_KEYS_DIR}/agent.crt.orig mv $v ${CDM_KEYS_DIR}/agent.pem ${CDM_KEYS_DIR}/agent.pem.orig From 8e6f2131e846c0bbcc382da925c8e83fb22a2047 Mon Sep 17 00:00:00 2001 From: Johannes Meixner Date: Wed, 22 Jul 2020 11:42:10 +0200 Subject: [PATCH 6/9] Update 410_use_replica_cdm_cluster_cert.sh Tried a smaller fix for https://github.com/rear/rear/pull/2445#discussion_r448156937 but things became almost a rewrite now --- .../410_use_replica_cdm_cluster_cert.sh | 95 +++++++++++-------- 1 file changed, 55 insertions(+), 40 deletions(-) diff --git a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh index 9fd473ea0a..99fcc522b5 100644 --- a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh +++ b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh @@ -1,61 +1,76 @@ # 410_use_replica_cdm_cluster_cert.sh # If restoring from a replica Rubrik (CDM) cluster use it's cert for RBS. +LogPrint "If restoring from a replica Rubrik (CDM) cluster it's cert will be downloaded and used for RBS" + CDM_RBA_DIR=/etc/rubrik CDM_KEYS_DIR=${CDM_RBA_DIR}/keys # When USER_INPUT_CDM_REPLICA_CLUSTER has any 'true' value be liberal in what you accept and assume exactly 'y' was actually meant: -LogPrint "" is_true "$USER_INPUT_CDM_REPLICA_CLUSTER" && USER_INPUT_CDM_REPLICA_CLUSTER="y" +local prompt="Is the data being restored from the original CDM Cluster?" +local input_value="" +local wilful_input="" while true ; do # Find out if the restore is being done from the original CDM cluster or a Replica - # the default (i.e. the automated response after the timeout) should be 'n': - answer="$( UserInput -I CDM_REPLICA_CLUSTER -p "Is the data being restored from the original CDM Cluster? (y/n)" -D 'y' -t 300 )" - is_true "$answer" && return 0 - if is_false "$answer" ; then + # the default (i.e. the automated response after the timeout) should be 'no': + input_value="$( UserInput -I CDM_REPLICA_CLUSTER -p "$prompt" -D 'no' )" && wilful_input="yes" || wilful_input="no" + if is_false "$input_value" ; then + if is_true "$wilful_input" ; then + LogPrint "User confirmed the data is not being restored from the original CDM Cluster" + else + LogPrint "Assuming the data is not being restored from the original CDM Cluster" + fi break fi - UserOutput "Please answer 'y' or 'n'" -done - -while true ; do - CDM_CLUSTER_IP="$(UserInput -I USER_INPUT_CDM_CLUSTER_IP -r -t 0 -p "Enter one of the IP addresses for the replica CDM cluster: ")" - [[ -n "$CDM_CLUSTER_IP" ]] && break - PrintError "Please enter a non-empty CDM cluster IP." + is_true "$input_value" ; then + LogPrint "User confirmed the data is being restored from the original CDM Cluster" + return 0 + fi done +LogPrint "Downloading cert from replica CDM cluster" # The name of the tar file that is being downloaded has changed in Rubrik CDM v5.1. # Before Rubrik CDM v5.1 it was rubrik-agent-sunos5.10.sparc.tar.gz # since Rubrik CDM v5.1 it is rubrik-agent-solaris.sparc.tar.gz # cf. https://github.com/rear/rear/issues/2441 - CDM_SUNOS_TAR=rubrik-agent-sunos5.10.sparc.tar.gz CDM_SOLARIS_TAR=rubrik-agent-solaris.sparc.tar.gz -CDM_TAR_FILE=$CDM_SUNOS_TAR -# FIXME: 'cd /tmp' changes the working directory hardcoded to /tmp but why not to $TMPDIR ? -# cf. https://github.com/rear/rear/pull/2445/files#r448155637 -# Additionally I am missing the counterpart that changes the working directory -# back to what it was before, i.e. via 'pushd $TMPDIR' plus 'popd' at the end of the script -# e.g. as in output/ISO/Linux-ppc64le/820_create_iso_image.sh -# (careful in case of 'return' after 'pushd': must call the matching 'popd' before 'return'): -cd /tmp -if ! curl $v -fskLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} ; then - CDM_TAR_FILE=$CDM_SOLARIS_TAR - if ! curl $v -fkLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} ; then - Error "Could not download Rubrik agent from https://${CDM_CLUSTER_IP}/connector/${CDM_SUNOS_TAR} or https://${CDM_CLUSTER_IP}/connector/${CDM_SOLARIS_TAR}." +pushd $TMPDIR +while true ; do + prompt="Enter one of the IP addresses for the replica CDM cluster (or 'no' to cancel): " + CDM_CLUSTER_IP="$( UserInput -I USER_INPUT_CDM_CLUSTER_IP -r -t 0 -p "$prompt" )" + test $CDM_CLUSTER_IP || continue + if is_false "$CDM_CLUSTER_IP" ; then + LogPrint "User canceled downloading cert from replica CDM cluster (data restore may fail now)" + popd + return 0 fi -fi - -tar $v -xzf $CDM_TAR_FILE || Error "Could not extract $CDM_TAR_FILE" - -CDM_CERT_FILE=$(find ./ -name "rubrik.crt") -mv $v ${CDM_KEYS_DIR}/rubrik.crt ${CDM_KEYS_DIR}/rubrik.crt.orig -cp $v $CDM_CERT_FILE $CDM_KEYS_DIR || Error "Could not copy replica CDM cluster certificate" - -chmod $v 600 ${CDM_KEYS_DIR}/rubrik.crt - -mv $v ${CDM_KEYS_DIR}/agent.crt ${CDM_KEYS_DIR}/agent.crt.orig -mv $v ${CDM_KEYS_DIR}/agent.pem ${CDM_KEYS_DIR}/agent.pem.orig -/etc/rubrik/rba-keygen.sh - -LogPrint "Replica Rubrik (CDM) cluster certificate installed." + for CDM_TAR_FILE in $CDM_SOLARIS_TAR $CDM_SUNOS_TAR '' ; do + curl $v -fskLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} && break + done + if ! test -s "$CDM_TAR_FILE" ; then + LogPrintError "Could not download Rubrik agent from https://${CDM_CLUSTER_IP}/connector/${CDM_SOLARIS_TAR} or https://${CDM_CLUSTER_IP}/connector/${CDM_SUNOS_TAR}" + continue + fi + if ! tar $v -xzf $CDM_TAR_FILE ; then + LogPrintError "Could not extract $CDM_TAR_FILE" + continue + fi + CDM_CERT_FILE=$(find ./ -name "rubrik.crt") + mv $v ${CDM_KEYS_DIR}/rubrik.crt ${CDM_KEYS_DIR}/rubrik.crt.orig + if ! cp $v $CDM_CERT_FILE $CDM_KEYS_DIR ; then + LogPrintError "Could not copy replica CDM cluster certificate" + continue + fi + chmod $v 600 ${CDM_KEYS_DIR}/rubrik.crt + mv $v ${CDM_KEYS_DIR}/agent.crt ${CDM_KEYS_DIR}/agent.crt.orig + mv $v ${CDM_KEYS_DIR}/agent.pem ${CDM_KEYS_DIR}/agent.pem.orig + # FIXME: Why is there no test whether or not /etc/rubrik/rba-keygen.sh succeeded? + # Is it perhaps only optional? + # cf. https://github.com/rear/rear/pull/2445#discussion_r448217873 + /etc/rubrik/rba-keygen.sh + break +done +popd +LogPrint "Replica Rubrik (CDM) cluster certificate installed" From c357aca36c8cf99a1f2bdd0d0f8483bf359bc984 Mon Sep 17 00:00:00 2001 From: Johannes Meixner Date: Wed, 22 Jul 2020 11:44:28 +0200 Subject: [PATCH 7/9] Update 410_use_replica_cdm_cluster_cert.sh syntax error fix --- .../rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh index 99fcc522b5..51248593a1 100644 --- a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh +++ b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh @@ -23,7 +23,7 @@ while true ; do fi break fi - is_true "$input_value" ; then + if is_true "$input_value" ; then LogPrint "User confirmed the data is being restored from the original CDM Cluster" return 0 fi From 9534d49bce117c925c64786a457936949e335486 Mon Sep 17 00:00:00 2001 From: Johannes Meixner Date: Wed, 22 Jul 2020 13:53:45 +0200 Subject: [PATCH 8/9] Update 410_use_replica_cdm_cluster_cert.sh Added generic URL download method so the user has a better chance to succeed when the already known hardcoded vaules in ReraR don't work in his particular case. --- .../410_use_replica_cdm_cluster_cert.sh | 30 +++++++++++++------ 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh index 51248593a1..fc92c6d1a6 100644 --- a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh +++ b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh @@ -6,8 +6,6 @@ LogPrint "If restoring from a replica Rubrik (CDM) cluster it's cert will be dow CDM_RBA_DIR=/etc/rubrik CDM_KEYS_DIR=${CDM_RBA_DIR}/keys -# When USER_INPUT_CDM_REPLICA_CLUSTER has any 'true' value be liberal in what you accept and assume exactly 'y' was actually meant: -is_true "$USER_INPUT_CDM_REPLICA_CLUSTER" && USER_INPUT_CDM_REPLICA_CLUSTER="y" local prompt="Is the data being restored from the original CDM Cluster?" local input_value="" local wilful_input="" @@ -38,23 +36,37 @@ CDM_SUNOS_TAR=rubrik-agent-sunos5.10.sparc.tar.gz CDM_SOLARIS_TAR=rubrik-agent-solaris.sparc.tar.gz pushd $TMPDIR while true ; do - prompt="Enter one of the IP addresses for the replica CDM cluster (or 'no' to cancel): " - CDM_CLUSTER_IP="$( UserInput -I USER_INPUT_CDM_CLUSTER_IP -r -t 0 -p "$prompt" )" + prompt="Enter one of the IP addresses for the replica CDM cluster (or 'no' to cancel)" + CDM_CLUSTER_IP="$( UserInput -I CDM_CLUSTER_IP -r -t 0 -p "$prompt" )" test $CDM_CLUSTER_IP || continue if is_false "$CDM_CLUSTER_IP" ; then LogPrint "User canceled downloading cert from replica CDM cluster (data restore may fail now)" popd return 0 fi + # When curl fails for all files continue with an empty CDM_TAR_FILE to denote that nothing was downloaded: for CDM_TAR_FILE in $CDM_SOLARIS_TAR $CDM_SUNOS_TAR '' ; do + test $CDM_TAR_FILE || continue curl $v -fskLOJ https://${CDM_CLUSTER_IP}/connector/${CDM_TAR_FILE} && break done if ! test -s "$CDM_TAR_FILE" ; then LogPrintError "Could not download Rubrik agent from https://${CDM_CLUSTER_IP}/connector/${CDM_SOLARIS_TAR} or https://${CDM_CLUSTER_IP}/connector/${CDM_SUNOS_TAR}" - continue + while true ; do + prompt="Enter URL to download Rubrik agent tar archive (or 'no' to cancel)" + CDM_AGENT_URL="$( UserInput -I CDM_AGENT_URL -r -t 0 -p "$prompt" )" + test $CDM_AGENT_URL || continue + if is_false "$CDM_AGENT_URL" ; then + LogPrint "User canceled downloading Rubrik agent (data restore may fail now)" + popd + return 0 + fi + curl $v -fskLOJ $CDM_AGENT_URL && break + LogPrintError "Could not download Rubrik agent from $CDM_AGENT_URL" + done + CDM_TAR_FILE=$( basename "$CDM_AGENT_URL" ) fi if ! tar $v -xzf $CDM_TAR_FILE ; then - LogPrintError "Could not extract $CDM_TAR_FILE" + LogPrintError "Could not extract Rubrik agent (failed to 'tar -xzf $CDM_TAR_FILE')" continue fi CDM_CERT_FILE=$(find ./ -name "rubrik.crt") @@ -66,10 +78,10 @@ while true ; do chmod $v 600 ${CDM_KEYS_DIR}/rubrik.crt mv $v ${CDM_KEYS_DIR}/agent.crt ${CDM_KEYS_DIR}/agent.crt.orig mv $v ${CDM_KEYS_DIR}/agent.pem ${CDM_KEYS_DIR}/agent.pem.orig - # FIXME: Why is there no test whether or not /etc/rubrik/rba-keygen.sh succeeded? - # Is it perhaps only optional? + # TODO: Actually do something if /etc/rubrik/rba-keygen.sh failed. + # Is /etc/rubrik/rba-keygen.sh perhaps only optional? # cf. https://github.com/rear/rear/pull/2445#discussion_r448217873 - /etc/rubrik/rba-keygen.sh + /etc/rubrik/rba-keygen.sh || LogPrintError "/etc/rubrik/rba-keygen.sh failed (data restore may also fail)" break done popd From 774a9c502ba2d05729e9f6b65229fb4db30f4547 Mon Sep 17 00:00:00 2001 From: Johannes Meixner Date: Wed, 22 Jul 2020 13:58:10 +0200 Subject: [PATCH 9/9] Update 410_use_replica_cdm_cluster_cert.sh Typo fix from "it's" (which would mean "it is") to "its" --- .../verify/CDM/default/410_use_replica_cdm_cluster_cert.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh index fc92c6d1a6..518387e331 100644 --- a/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh +++ b/usr/share/rear/verify/CDM/default/410_use_replica_cdm_cluster_cert.sh @@ -1,7 +1,7 @@ # 410_use_replica_cdm_cluster_cert.sh -# If restoring from a replica Rubrik (CDM) cluster use it's cert for RBS. +# If restoring from a replica Rubrik (CDM) cluster use its cert for RBS. -LogPrint "If restoring from a replica Rubrik (CDM) cluster it's cert will be downloaded and used for RBS" +LogPrint "If restoring from a replica Rubrik (CDM) cluster its cert will be downloaded and used for RBS" CDM_RBA_DIR=/etc/rubrik CDM_KEYS_DIR=${CDM_RBA_DIR}/keys