Skip to content

Commit c72a20b

Browse files
committed
Add retries
1 parent 528e687 commit c72a20b

File tree

1 file changed

+37
-43
lines changed

1 file changed

+37
-43
lines changed

.github/workflows/pr-mit-integration-tests.yml

Lines changed: 37 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -315,49 +315,43 @@ jobs:
315315
316316
# NOTE: Use pre-ping/null to reduce flakiness due to dropped connections
317317
- name: Run Integration Tests for ${{ matrix.test-dir.name }}
318-
run: |
319-
echo "Running integration tests for ${{ matrix.test-dir.path }}..."
320-
docker run --rm --network onyx-stack_default \
321-
--name test-runner \
322-
-e POSTGRES_HOST=relational_db \
323-
-e POSTGRES_USER=postgres \
324-
-e POSTGRES_PASSWORD=password \
325-
-e POSTGRES_DB=postgres \
326-
-e DB_READONLY_USER=db_readonly_user \
327-
-e DB_READONLY_PASSWORD=password \
328-
-e POSTGRES_POOL_PRE_PING=true \
329-
-e POSTGRES_USE_NULL_POOL=true \
330-
-e VESPA_HOST=index \
331-
-e REDIS_HOST=cache \
332-
-e API_SERVER_HOST=api_server \
333-
-e OPENAI_API_KEY=${OPENAI_API_KEY} \
334-
-e SLACK_BOT_TOKEN=${SLACK_BOT_TOKEN} \
335-
-e CONFLUENCE_TEST_SPACE_URL=${CONFLUENCE_TEST_SPACE_URL} \
336-
-e CONFLUENCE_USER_NAME=${CONFLUENCE_USER_NAME} \
337-
-e CONFLUENCE_ACCESS_TOKEN=${CONFLUENCE_ACCESS_TOKEN} \
338-
-e JIRA_BASE_URL=${JIRA_BASE_URL} \
339-
-e JIRA_USER_EMAIL=${JIRA_USER_EMAIL} \
340-
-e JIRA_API_TOKEN=${JIRA_API_TOKEN} \
341-
-e PERM_SYNC_SHAREPOINT_CLIENT_ID=${PERM_SYNC_SHAREPOINT_CLIENT_ID} \
342-
-e PERM_SYNC_SHAREPOINT_PRIVATE_KEY="${PERM_SYNC_SHAREPOINT_PRIVATE_KEY}" \
343-
-e PERM_SYNC_SHAREPOINT_CERTIFICATE_PASSWORD=${PERM_SYNC_SHAREPOINT_CERTIFICATE_PASSWORD} \
344-
-e PERM_SYNC_SHAREPOINT_DIRECTORY_ID=${PERM_SYNC_SHAREPOINT_DIRECTORY_ID} \
345-
-e TEST_WEB_HOSTNAME=test-runner \
346-
-e MOCK_CONNECTOR_SERVER_HOST=mock_connector_server \
347-
-e MOCK_CONNECTOR_SERVER_PORT=8001 \
348-
onyxdotapp/onyx-integration:test \
349-
/app/tests/integration/${{ matrix.test-dir.path }}
350-
continue-on-error: true
351-
id: run_tests
352-
353-
- name: Check test results
354-
run: |
355-
if [ ${{ steps.run_tests.outcome }} == 'failure' ]; then
356-
echo "Integration tests failed. Exiting with error."
357-
exit 1
358-
else
359-
echo "All integration tests passed successfully."
360-
fi
318+
uses: nick-fields/retry@v3
319+
with:
320+
timeout_minutes: 20
321+
max_attempts: 3
322+
retry_wait_seconds: 10
323+
command: |
324+
echo "Running integration tests for ${{ matrix.test-dir.path }}..."
325+
docker run --rm --network onyx-stack_default \
326+
--name test-runner \
327+
-e POSTGRES_HOST=relational_db \
328+
-e POSTGRES_USER=postgres \
329+
-e POSTGRES_PASSWORD=password \
330+
-e POSTGRES_DB=postgres \
331+
-e DB_READONLY_USER=db_readonly_user \
332+
-e DB_READONLY_PASSWORD=password \
333+
-e POSTGRES_POOL_PRE_PING=true \
334+
-e POSTGRES_USE_NULL_POOL=true \
335+
-e VESPA_HOST=index \
336+
-e REDIS_HOST=cache \
337+
-e API_SERVER_HOST=api_server \
338+
-e OPENAI_API_KEY=${OPENAI_API_KEY} \
339+
-e SLACK_BOT_TOKEN=${SLACK_BOT_TOKEN} \
340+
-e CONFLUENCE_TEST_SPACE_URL=${CONFLUENCE_TEST_SPACE_URL} \
341+
-e CONFLUENCE_USER_NAME=${CONFLUENCE_USER_NAME} \
342+
-e CONFLUENCE_ACCESS_TOKEN=${CONFLUENCE_ACCESS_TOKEN} \
343+
-e JIRA_BASE_URL=${JIRA_BASE_URL} \
344+
-e JIRA_USER_EMAIL=${JIRA_USER_EMAIL} \
345+
-e JIRA_API_TOKEN=${JIRA_API_TOKEN} \
346+
-e PERM_SYNC_SHAREPOINT_CLIENT_ID=${PERM_SYNC_SHAREPOINT_CLIENT_ID} \
347+
-e PERM_SYNC_SHAREPOINT_PRIVATE_KEY="${PERM_SYNC_SHAREPOINT_PRIVATE_KEY}" \
348+
-e PERM_SYNC_SHAREPOINT_CERTIFICATE_PASSWORD=${PERM_SYNC_SHAREPOINT_CERTIFICATE_PASSWORD} \
349+
-e PERM_SYNC_SHAREPOINT_DIRECTORY_ID=${PERM_SYNC_SHAREPOINT_DIRECTORY_ID} \
350+
-e TEST_WEB_HOSTNAME=test-runner \
351+
-e MOCK_CONNECTOR_SERVER_HOST=mock_connector_server \
352+
-e MOCK_CONNECTOR_SERVER_PORT=8001 \
353+
onyxdotapp/onyx-integration:test \
354+
/app/tests/integration/${{ matrix.test-dir.path }}
361355
362356
# ------------------------------------------------------------
363357
# Always gather logs BEFORE "down":

0 commit comments

Comments
 (0)