Skip to content

Do not send empty lists to the DLQ when all items share the same retryable failure #1553

Do not send empty lists to the DLQ when all items share the same retryable failure

Do not send empty lists to the DLQ when all items share the same retryable failure #1553

# This workflow will build a Java project with Gradle
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
name: Data Prepper OpenSearchSink integration tests with OpenSearch
on:
push:
paths:
- 'data-prepper-plugins/opensearch/**'
- '*gradle*'
pull_request:
paths:
- 'data-prepper-plugins/opensearch/**'
- '*gradle*'
workflow_dispatch:
jobs:
integration-tests:
strategy:
matrix:
java: [11]
opensearch: [1.0.1, 1.1.0, 1.2.4, 1.3.13, 2.0.1, 2.1.0, 2.3.0, 2.5.0, 2.7.0, 2.9.0, 2.11.0]
fail-fast: false
runs-on: ubuntu-latest
steps:
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- name: Checkout Data Prepper
uses: actions/checkout@v2
- name: Run OpenSearch docker
run: |
docker pull opensearchproject/opensearch:${{ matrix.opensearch }}
docker run -p 9200:9200 -p 9600:9600 -e "discovery.type=single-node" -d opensearchproject/opensearch:${{ matrix.opensearch }}
sleep 90
- name: Run OpenSearch tests
run: |
./gradlew :data-prepper-plugins:opensearch:integrationTest --tests "org.opensearch.dataprepper.plugins.sink.opensearch.OpenSearchIT" -Dtests.opensearch.host=localhost:9200 -Dtests.opensearch.user=admin -Dtests.opensearch.password=admin
./gradlew :data-prepper-plugins:opensearch:integrationTest -Dtests.opensearch.host=localhost:9200 -Dtests.opensearch.user=admin -Dtests.opensearch.password=admin -Dtests.opensearch.bundle=true -Dtests.opensearch.version=opensearch:${{ matrix.opensearch }}
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@v3
with:
name: data-prepper-opensearch-integration-tests-opensearch-${{ matrix.opensearch }}-java-${{ matrix.java }}
path: '**/test-results/**/*.xml'
publish-test-results:
name: "Publish Unit Tests Results"
needs: integration-tests
runs-on: ubuntu-latest
if: always()
steps:
- name: Download Artifacts
uses: actions/download-artifact@v3
with:
path: test-results
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@v1
with:
files: "test-results/**/*.xml"