Skip to content

Modify EventHandle to be created for every event and support internal and external origination times #2553

Modify EventHandle to be created for every event and support internal and external origination times

Modify EventHandle to be created for every event and support internal and external origination times #2553

# 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 Open Distro
on:
push:
branches: [ main ]
paths:
- 'data-prepper-plugins/opensearch/**'
- '*gradle*'
pull_request:
paths:
- 'data-prepper-plugins/opensearch/**'
- '*gradle*'
workflow_dispatch:
jobs:
integration-tests:
strategy:
matrix:
java: [11]
opendistro: [0.10.0, 1.3.0, 1.6.0, 1.8.0, 1.9.0, 1.11.0, 1.12.0, 1.13.3]
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 Open Distro docker
run: |
docker pull amazon/opendistro-for-elasticsearch:${{ matrix.opendistro }}
docker run -p 9200:9200 -p 9600:9600 -e "discovery.type=single-node" -d amazon/opendistro-for-elasticsearch:${{ matrix.opendistro }}
sleep 90
- name: Run Open Distro 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=opendistro:${{ matrix.opendistro }}
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@v3
with:
name: data-prepper-opensearch-integration-tests-opendistro-${{ matrix.opendistro }}-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"