Skip to content

Commit cf5863c

Browse files
Add retry mechanism for Streaming Endpoint test in Quarkus-LangChain4j workflow
1 parent 18f1cd5 commit cf5863c

1 file changed

Lines changed: 34 additions & 12 deletions

File tree

.github/workflows/integration-quarkus-langchain4j.yml

Lines changed: 34 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -209,19 +209,41 @@ jobs:
209209
# Step 7: Run test 2
210210
- name: Trigger Streaming Endpoint
211211
run: |
212-
# Trigger endpoint
213-
HTTP_RESPONSE=$(timeout 10s curl -s -w "%{http_code}" http://localhost:$QUARKUS_PORT/chat/streaming)
214-
HTTP_RESPONSE_CODE="${HTTP_RESPONSE: -3}"
215-
HTTP_RESPONSE_BODY="$HTTP_RESPONSE%???}"
212+
MAX_ATTEMPTS=3
213+
ATTEMPT=1
214+
SUCCESS=false
216215
217-
# Check response code
218-
if [ "$HTTP_RESPONSE_CODE" != "200" ]; then
219-
echo "ERROR: Streaming endpoint returned HTTP code $HTTP_RESPONSE_CODE"
220-
exit 1
221-
else
222-
echo "SUCCESS: Streaming endpoint returned HTTP code: ${HTTP_RESPONSE: -3}"
223-
echo "HTTP Response body: $HTTP_RESPONSE_BODY"
224-
fi
216+
while [ $ATTEMPT -le $MAX_ATTEMPTS ]; do
217+
echo "Attempt $ATTEMPT of $MAX_ATTEMPTS for streaming endpoint..."
218+
219+
# Trigger endpoint
220+
HTTP_RESPONSE=$(timeout 10s curl -s -w "%{http_code}" http://localhost:$QUARKUS_PORT/chat/streaming)
221+
HTTP_RESPONSE_CODE="${HTTP_RESPONSE: -3}"
222+
#HTTP_RESPONSE_BODY="$HTTP_RESPONSE%???}"
223+
224+
# Check response code
225+
if [ "$HTTP_RESPONSE_CODE" == "200" ]; then
226+
echo "SUCCESS: Streaming endpoint returned HTTP code: ${HTTP_RESPONSE: -3}"
227+
# do not show ugly streaming response body
228+
#echo "HTTP Response body: $HTTP_RESPONSE_BODY"
229+
SUCCESS=true
230+
break
231+
else
232+
echo "Attempt $ATTEMPT failed: Streaming endpoint returned HTTP code $HTTP_RESPONSE_CODE"
233+
234+
if [ $ATTEMPT -lt $MAX_ATTEMPTS ]; then
235+
echo "Retrying in 2 seconds..."
236+
sleep 2
237+
fi
238+
fi
239+
240+
ATTEMPT=$((ATTEMPT + 1))
241+
done
242+
243+
if [ "$SUCCESS" = false ]; then
244+
echo "ERROR: Streaming endpoint failed after $MAX_ATTEMPTS attempts"
245+
exit 1
246+
fi
225247
226248
# Step 8: Cleanup & Shutdown
227249
- name: Cleanup & Shutdown

0 commit comments

Comments
 (0)