mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2025-12-06 17:22:49 +01:00
Add retry logic around salt key acceptance during setup
This commit is contained in:
@@ -141,6 +141,25 @@ get_random_value() {
|
|||||||
head -c 5000 /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w $length | head -n 1
|
head -c 5000 /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w $length | head -n 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
retry() {
|
||||||
|
maxAttempts=$1
|
||||||
|
sleepDelay=$2
|
||||||
|
cmd=$3
|
||||||
|
attempt=0
|
||||||
|
while [[ $attempt -lt $maxAttempts ]]; do
|
||||||
|
attempt=$((attempt+1))
|
||||||
|
logCmd "$cmd"
|
||||||
|
exitcode=$?
|
||||||
|
if [[ $exitcode -eq 0 ]]; then
|
||||||
|
return $exitCode
|
||||||
|
fi
|
||||||
|
info "Command failed with exit code $exitcode; will retry in $sleepDelay seconds ($attempt / $maxAttempts)..."
|
||||||
|
sleep $sleepDelay
|
||||||
|
done
|
||||||
|
error "Command continues to fail; giving up."
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
wait_for_apt() {
|
wait_for_apt() {
|
||||||
local progress_callback=$1
|
local progress_callback=$1
|
||||||
|
|
||||||
|
|||||||
@@ -1972,7 +1972,7 @@ set_progress_str() {
|
|||||||
|
|
||||||
printf '%s\n' \
|
printf '%s\n' \
|
||||||
'----'\
|
'----'\
|
||||||
"$percentage% - ${progress_bar_text^^}"\
|
info "$percentage% - ${progress_bar_text^^}"\
|
||||||
"----" >> "$setup_log" 2>&1
|
"----" >> "$setup_log" 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -637,12 +637,12 @@ set_redirect >> $setup_log 2>&1
|
|||||||
|
|
||||||
if [[ $is_minion ]]; then
|
if [[ $is_minion ]]; then
|
||||||
set_progress_str 20 'Accepting Salt key on manager'
|
set_progress_str 20 'Accepting Salt key on manager'
|
||||||
accept_salt_key_remote >> $setup_log 2>&1
|
retry 20 10 accept_salt_key_remote
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $is_manager || $is_import || $is_helix ]]; then
|
if [[ $is_manager || $is_import || $is_helix ]]; then
|
||||||
set_progress_str 20 'Accepting Salt key'
|
set_progress_str 20 'Accepting Salt key'
|
||||||
salt-key -ya "$MINION_ID" >> $setup_log 2>&1
|
retry 20 10 "salt-key -ya $MINION_ID"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
set_progress_str 21 'Copying minion pillars to manager'
|
set_progress_str 21 'Copying minion pillars to manager'
|
||||||
|
|||||||
Reference in New Issue
Block a user