try to fix :/
All checks were successful
Test and Publish Templates / test-and-publish (push) Successful in 40s
All checks were successful
Test and Publish Templates / test-and-publish (push) Successful in 40s
This commit is contained in:
@@ -2,21 +2,38 @@
|
||||
source "${AGENT_PATH}/common.sh"
|
||||
_check_required_env_vars "CONTAINER_NAME"
|
||||
|
||||
# Check if docker compose services exist and are running
|
||||
if ! docker compose ps 2>/dev/null | grep -q "${CONTAINER_NAME}"; then
|
||||
# For verbose mode (when called directly, not from install script)
|
||||
if [ "$1" = "-v" ] || [ "$1" = "--verbose" ]; then
|
||||
VERBOSE=true
|
||||
else
|
||||
VERBOSE=false
|
||||
fi
|
||||
|
||||
# Check if containers exist
|
||||
if ! docker ps -a --format "{{.Names}}" | grep -q "^${CONTAINER_NAME}_"; then
|
||||
echo "Unknown"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Check individual service status
|
||||
elasticsearch_status=$(docker compose ps elasticsearch 2>/dev/null | grep -c "Up")
|
||||
logstash_status=$(docker compose ps logstash 2>/dev/null | grep -c "Up")
|
||||
kibana_status=$(docker compose ps kibana 2>/dev/null | grep -c "Up")
|
||||
# Check individual service status using docker directly (more reliable)
|
||||
es_running=$(docker ps --format "{{.Names}}" | grep -c "^${CONTAINER_NAME}_elasticsearch$" || echo 0)
|
||||
ls_running=$(docker ps --format "{{.Names}}" | grep -c "^${CONTAINER_NAME}_logstash$" || echo 0)
|
||||
kb_running=$(docker ps --format "{{.Names}}" | grep -c "^${CONTAINER_NAME}_kibana$" || echo 0)
|
||||
|
||||
if [ "$elasticsearch_status" -eq 1 ] && [ "$logstash_status" -eq 1 ] && [ "$kibana_status" -eq 1 ]; then
|
||||
if [ "$VERBOSE" = "true" ]; then
|
||||
echo "Elasticsearch: $([ $es_running -eq 1 ] && echo "Running" || echo "Not running")"
|
||||
echo "Logstash: $([ $ls_running -eq 1 ] && echo "Running" || echo "Not running")"
|
||||
echo "Kibana: $([ $kb_running -eq 1 ] && echo "Running" || echo "Not running")"
|
||||
fi
|
||||
|
||||
# Return overall status
|
||||
if [ "$es_running" -eq 1 ] && [ "$ls_running" -eq 1 ] && [ "$kb_running" -eq 1 ]; then
|
||||
echo "Running"
|
||||
elif [ "$elasticsearch_status" -eq 0 ] && [ "$logstash_status" -eq 0 ] && [ "$kibana_status" -eq 0 ]; then
|
||||
elif [ "$es_running" -eq 0 ] && [ "$ls_running" -eq 0 ] && [ "$kb_running" -eq 0 ]; then
|
||||
echo "Stopped"
|
||||
else
|
||||
echo "Error"
|
||||
# At least one service is having issues
|
||||
if [ "$VERBOSE" = "false" ]; then
|
||||
echo "Starting" # More accurate than "Error" during startup
|
||||
fi
|
||||
fi
|
Reference in New Issue
Block a user