diff --git a/salt/elasticfleet/tools/sbin/so-elastic-fleet-common b/salt/elasticfleet/tools/sbin/so-elastic-fleet-common index 66f1dcf7a..42e563562 100644 --- a/salt/elasticfleet/tools/sbin/so-elastic-fleet-common +++ b/salt/elasticfleet/tools/sbin/so-elastic-fleet-common @@ -39,7 +39,7 @@ elastic_fleet_integration_create() { JSON_STRING=$1 - if ! curl -K /opt/so/conf/elasticsearch/curl.config -L -X POST "localhost:5601/api/fleet/package_policies" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d "$JSON_STRING" --retry 3 --fail 2>/dev/null; then + if ! curl -sK /opt/so/conf/elasticsearch/curl.config -L -X POST "localhost:5601/api/fleet/package_policies" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d "$JSON_STRING" --retry 3 --fail 2>/dev/null; then return 1 fi } @@ -67,7 +67,9 @@ elastic_fleet_integration_update() { JSON_STRING=$2 - curl -K /opt/so/conf/elasticsearch/curl.config -L -X PUT "localhost:5601/api/fleet/package_policies/$UPDATE_ID" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d "$JSON_STRING" + if ! curl -sK /opt/so/conf/elasticsearch/curl.config -L -X PUT "localhost:5601/api/fleet/package_policies/$UPDATE_ID" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d "$JSON_STRING" --retry 3 --fail 2>/dev/null; then + return 1 + fi } elastic_fleet_integration_policy_upgrade() { diff --git a/salt/elasticfleet/tools/sbin/so-elastic-fleet-integration-policy-elastic-fleet-server b/salt/elasticfleet/tools/sbin/so-elastic-fleet-integration-policy-elastic-fleet-server index 8f7c8b8b4..caa684829 100644 --- a/salt/elasticfleet/tools/sbin/so-elastic-fleet-integration-policy-elastic-fleet-server +++ b/salt/elasticfleet/tools/sbin/so-elastic-fleet-integration-policy-elastic-fleet-server @@ -25,5 +25,9 @@ for POLICYNAME in $POLICY; do .name = $name' /opt/so/conf/elastic-fleet/integrations/fleet-server/fleet-server.json) # Now update the integration policy using the modified JSON - elastic_fleet_integration_update "$INTEGRATION_ID" "$UPDATED_INTEGRATION_POLICY" + if ! elastic_fleet_integration_update "$INTEGRATION_ID" "$UPDATED_INTEGRATION_POLICY"; then + # exit 1 on failure to update fleet integration policies, let salt handle retries + echo "Failed to update $POLICYNAME.." + exit 1 + fi done \ No newline at end of file diff --git a/salt/elasticfleet/tools/sbin/so-elastic-fleet-integration-policy-load b/salt/elasticfleet/tools/sbin/so-elastic-fleet-integration-policy-load index b26b79695..8427b47bc 100644 --- a/salt/elasticfleet/tools/sbin/so-elastic-fleet-integration-policy-load +++ b/salt/elasticfleet/tools/sbin/so-elastic-fleet-integration-policy-load @@ -13,7 +13,7 @@ if [ ! -f /opt/so/state/eaintegrations.txt ]; then /usr/sbin/so-elastic-fleet-package-upgrade # Second, update Fleet Server policies - /sbin/so-elastic-fleet-integration-policy-elastic-fleet-server + /usr/sbin/so-elastic-fleet-integration-policy-elastic-fleet-server # Third, configure Elastic Defend Integration seperately /usr/sbin/so-elastic-fleet-integration-policy-elastic-defend @@ -25,7 +25,10 @@ if [ ! -f /opt/so/state/eaintegrations.txt ]; then elastic_fleet_integration_check "endpoints-initial" "$INTEGRATION" if [ -n "$INTEGRATION_ID" ]; then printf "\n\nIntegration $NAME exists - Updating integration\n" - elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION" + if ! elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION"; then + echo -e "\nFailed to update integration for ${INTEGRATION##*/}" + exit 1 + fi else printf "\n\nIntegration does not exist - Creating integration\n" if ! elastic_fleet_integration_create "@$INTEGRATION"; then @@ -42,7 +45,10 @@ if [ ! -f /opt/so/state/eaintegrations.txt ]; then elastic_fleet_integration_check "so-grid-nodes_general" "$INTEGRATION" if [ -n "$INTEGRATION_ID" ]; then printf "\n\nIntegration $NAME exists - Updating integration\n" - elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION" + if ! elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION"; then + echo -e "\nFailed to update integration for ${INTEGRATION##*/}" + exit 1 + fi else printf "\n\nIntegration does not exist - Creating integration\n" if ! elastic_fleet_integration_create "@$INTEGRATION"; then @@ -62,7 +68,10 @@ if [ ! -f /opt/so/state/eaintegrations.txt ]; then elastic_fleet_integration_check "so-grid-nodes_heavy" "$INTEGRATION" if [ -n "$INTEGRATION_ID" ]; then printf "\n\nIntegration $NAME exists - Updating integration\n" - elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION" + if ! elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION"; then + echo -e "\nFailed to update integration for ${INTEGRATION##*/}" + exit 1 + fi else printf "\n\nIntegration does not exist - Creating integration\n" if [ "$NAME" != "elasticsearch-logs" ]; then @@ -86,7 +95,10 @@ if [ ! -f /opt/so/state/eaintegrations.txt ]; then elastic_fleet_integration_check "$FLEET_POLICY" "$INTEGRATION" if [ -n "$INTEGRATION_ID" ]; then printf "\n\nIntegration $NAME exists - Updating integration\n" - elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION" + if ! elastic_fleet_integration_update "$INTEGRATION_ID" "@$INTEGRATION"; then + echo -e "\nFailed to update integration for ${INTEGRATION##*/}" + exit 1 + fi else printf "\n\nIntegration does not exist - Creating integration\n" if [ "$NAME" != "elasticsearch-logs" ]; then