Skip to content

Commit

Permalink
Add a github workflow action for running Kinesis integration tests
Browse files Browse the repository at this point in the history
  • Loading branch information
sbose2k21 committed Oct 3, 2024
1 parent 7bac644 commit 46ae116
Showing 1 changed file with 82 additions and 0 deletions.
82 changes: 82 additions & 0 deletions .github/workflows/kinesis-source-integration-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: kinesis-source-integration-tests

on:
push:
paths:
- 'data-prepper-plugins/kinesis-source/**'
- '*gradle*'
pull_request:
paths:
- 'data-prepper-plugins/kinesis-source/**'
- '*gradle*'

workflow_dispatch:

jobs:
build:
strategy:
matrix:
java: [ 11, 17, 21, docker ]
fail-fast: false

runs-on: ubuntu-latest

steps:

- name: Git clone the repository
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: configure aws credentials
id: creds
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.TEST_IAM_ROLE_ARN }}
aws-region: ${{ secrets.TEST_REGION }}
output-credentials: true

- name: get caller identity 1
run: |
aws sts get-caller-identity
- name: Configure AWS Credentials file
run: |
aws configure set default.region ${{ secrets.TEST_REGION }}
aws configure set default.aws_access_key_id ${{ steps.creds.outputs.aws-access-key-id }}
aws configure set default.aws_secret_access_key ${{ steps.creds.outputs.aws-secret-access-key }}
aws configure set default.aws_session_token ${{ steps.creds.outputs.aws-session-token }}
- 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 Kinesis Source integration tests
run: |
./gradlew data-prepper-plugins:kinesis-source:integrationTest \
-Dtests.kinesis.source.aws.region=us-east-1 --tests KinesisSourceIT
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@v3
with:
name: data-prepper-kinesis-source-integration-tests-java-${{ matrix.java }}
path: '**/test-results/**/*.xml'

publish-test-results:
name: "Publish Unit Tests Results"
needs: build
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"

0 comments on commit 46ae116

Please sign in to comment.