From 863c7abc8b288f124ad7bc9f89e2470fc892f77b Mon Sep 17 00:00:00 2001 From: Josh Patterson Date: Mon, 23 Feb 2026 11:36:20 -0500 Subject: [PATCH 1/4] fix soup failure if salt-relay isn't running --- salt/manager/tools/sbin/soup | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/salt/manager/tools/sbin/soup b/salt/manager/tools/sbin/soup index 2dffd083b..e70760d5f 100755 --- a/salt/manager/tools/sbin/soup +++ b/salt/manager/tools/sbin/soup @@ -2289,7 +2289,12 @@ main() { (wait_for_salt_minion "$MINIONID" "120" "4" "$SOUP_LOG" || fail "Salt minion was not running or ready.") 2>&1 | tee -a "$SOUP_LOG" # Stop long-running scripts to allow potentially updated scripts to load on the next execution. - killall salt-relay.sh + if pgrep salt-relay.sh > /dev/null 2>&1; then + echo "Stopping salt-relay.sh" + killall salt-relay.sh + else + echo "salt-relay.sh is not running" + fi # ensure the mine is updated and populated before highstates run, following the salt-master restart update_salt_mine From bf16de7bfdca26775b046af3e4bbb679a925fb98 Mon Sep 17 00:00:00 2001 From: Josh Patterson Date: Mon, 23 Feb 2026 12:07:04 -0500 Subject: [PATCH 2/4] fix duplicate log lines in soup log --- salt/manager/tools/sbin/soup | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/salt/manager/tools/sbin/soup b/salt/manager/tools/sbin/soup index e70760d5f..b7ff6af4a 100755 --- a/salt/manager/tools/sbin/soup +++ b/salt/manager/tools/sbin/soup @@ -2073,7 +2073,7 @@ apply_hotfix() { mv /etc/pki/managerssl.crt /etc/pki/managerssl.crt.old mv /etc/pki/managerssl.key /etc/pki/managerssl.key.old systemctl_func "start" "salt-minion" - (wait_for_salt_minion "$MINIONID" "120" "4" "$SOUP_LOG" || fail "Salt minion was not running or ready.") 2>&1 | tee -a "$SOUP_LOG" + wait_for_salt_minion "$MINIONID" "120" "4" "$SOUP_LOG" || fail "Salt minion was not running or ready." fi else echo "No actions required. ($INSTALLEDVERSION/$HOTFIXVERSION)" @@ -2195,7 +2195,7 @@ main() { else update_registry set +e - update_docker_containers 'soup' '' '' '/dev/stdout' 2>&1 | tee -a "$SOUP_LOG" + update_docker_containers 'soup' '' '' '/dev/stdout' 2>&1 set -e fi @@ -2273,7 +2273,7 @@ main() { echo "" echo "Running a highstate. This could take several minutes." set +e - (wait_for_salt_minion "$MINIONID" "120" "4" "$SOUP_LOG" || fail "Salt minion was not running or ready.") 2>&1 | tee -a "$SOUP_LOG" + wait_for_salt_minion "$MINIONID" "120" "4" "$SOUP_LOG" || fail "Salt minion was not running or ready." highstate set -e @@ -2286,7 +2286,7 @@ main() { check_saltmaster_status echo "Running a highstate to complete the Security Onion upgrade on this manager. This could take several minutes." - (wait_for_salt_minion "$MINIONID" "120" "4" "$SOUP_LOG" || fail "Salt minion was not running or ready.") 2>&1 | tee -a "$SOUP_LOG" + wait_for_salt_minion "$MINIONID" "120" "4" "$SOUP_LOG" || fail "Salt minion was not running or ready." # Stop long-running scripts to allow potentially updated scripts to load on the next execution. if pgrep salt-relay.sh > /dev/null 2>&1; then From 1a9a087af2925cc46a52b3a34ca145d90d6c6d8d Mon Sep 17 00:00:00 2001 From: Josh Patterson Date: Mon, 23 Feb 2026 13:17:38 -0500 Subject: [PATCH 3/4] redirect not found if key isn't found --- salt/manager/tools/sbin/soup | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/salt/manager/tools/sbin/soup b/salt/manager/tools/sbin/soup index b7ff6af4a..b6d19a241 100755 --- a/salt/manager/tools/sbin/soup +++ b/salt/manager/tools/sbin/soup @@ -702,7 +702,7 @@ post_to_2.4.210() { /sbin/so-elastic-agent-gen-installers # migrate elasticsearch:managed_integrations pillar to manager:managed_integrations - if managed_integrations=$(/usr/sbin/so-yaml.py get /opt/so/saltstack/local/pillar/elasticsearch/soc_elasticsearch.sls elasticsearch.managed_integrations); then + if managed_integrations=$(/usr/sbin/so-yaml.py get /opt/so/saltstack/local/pillar/elasticsearch/soc_elasticsearch.sls elasticsearch.managed_integrations 2>/dev/null); then local managed_integrations_old_pillar="/tmp/elasticsearch-managed_integrations.yaml" echo "Migrating managed_integrations pillar" From 2375061cfae1f11ef47cd314258265b35021c027 Mon Sep 17 00:00:00 2001 From: Josh Patterson Date: Mon, 23 Feb 2026 13:19:03 -0500 Subject: [PATCH 4/4] so-yaml.py tell which key not found --- salt/manager/tools/sbin/so-yaml.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/salt/manager/tools/sbin/so-yaml.py b/salt/manager/tools/sbin/so-yaml.py index 13ece5062..fd5d8b056 100755 --- a/salt/manager/tools/sbin/so-yaml.py +++ b/salt/manager/tools/sbin/so-yaml.py @@ -343,7 +343,7 @@ def get(args): content = loadYaml(filename) output = getKeyValue(content, key) if output is None: - print("Not found", file=sys.stderr) + print(f"Key '{key}' not found by so-yaml.py", file=sys.stderr) return 2 print(yaml.safe_dump(output))