[main] Forward port from 2.0.x #303
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Drools Ansible RuleBook Integration Check | |
| on: | |
| pull_request: | |
| types: [opened, synchronize, reopened, ready_for_review] | |
| paths-ignore: | |
| - 'LICENSE' | |
| - '**/.gitignore' | |
| - '**.md' | |
| - '**.adoc' | |
| - '*.txt' | |
| - 'docsimg/**' | |
| - '.ci/jenkins/**' | |
| jobs: | |
| drools-ansible: | |
| concurrency: | |
| group: pr-drools_ansible_${{ matrix.os }}_${{ matrix.java-version }}_${{ matrix.maven-version }}_${{ github.head_ref }} | |
| cancel-in-progress: true | |
| timeout-minutes: 120 | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest] | |
| java-version: [17, 21, 25] | |
| maven-version: ['3.9.11'] | |
| fail-fast: false | |
| runs-on: ${{ matrix.os }} | |
| name: Ansible Integration / ${{ matrix.os }} / Java-${{ matrix.java-version }} / Maven-${{ matrix.maven-version }} | |
| steps: | |
| - name: Clean Disk Space | |
| uses: kiegroup/kie-ci/.ci/actions/ubuntu-disk-space@main | |
| if: ${{ matrix.os == 'ubuntu-latest' }} | |
| - name: Support long paths | |
| if: ${{ matrix.os == 'windows-latest' }} | |
| uses: kiegroup/kie-ci/.ci/actions/long-paths@main | |
| - name: Java and Maven Setup | |
| uses: kiegroup/kie-ci/.ci/actions/maven@main | |
| with: | |
| java-version: ${{ matrix.java-version }} | |
| maven-version: ${{ matrix.maven-version }} | |
| cache-key-prefix: ${{ runner.os }}-${{ matrix.java-version }}-maven${{ matrix.maven-version }} | |
| - name: Build Chain | |
| uses: kiegroup/kie-ci/.ci/actions/build-chain@main | |
| with: | |
| definition-file: https://raw.githubusercontent.com/${GROUP:kiegroup}/drools-ansible-rulebook-integration/${BRANCH:main}/.ci/pull-request-config.yaml | |
| annotations-prefix: ${{ runner.os }}-${{ matrix.java-version }}/${{ matrix.maven-version }} | |
| github-token: "${{ secrets.GITHUB_TOKEN }}" | |
| - name: Build for PostgreSQL HA tests | |
| run: | | |
| cd kiegroup_drools-ansible-rulebook-integration | |
| mvn --batch-mode --update-snapshots install -DskipTests | |
| - name: Verify HA with PostgreSQL | |
| run: | | |
| cd kiegroup_drools-ansible-rulebook-integration/drools-ansible-rulebook-integration-ha | |
| mvn --batch-mode --update-snapshots verify -Dtest.db.type=postgres | |
| - name: Run migration tests | |
| run: | | |
| cd kiegroup_drools-ansible-rulebook-integration/drools-ansible-rulebook-integration-migration-tests | |
| chmod +x migration_test.sh lib/common.sh | |
| ./migration_test.sh | |
| - name: Upload migration test logs | |
| uses: actions/upload-artifact@v4 | |
| if: always() | |
| with: | |
| name: migration-test-results-${{ matrix.os }}-java${{ matrix.java-version }} | |
| path: | | |
| kiegroup_drools-ansible-rulebook-integration/drools-ansible-rulebook-integration-migration-tests/out_*.log | |
| retention-days: 30 | |
| memory-leak-test: | |
| concurrency: | |
| group: pr-memory-leak_${{ matrix.java-version }}_${{ github.head_ref }} | |
| cancel-in-progress: true | |
| timeout-minutes: 30 | |
| strategy: | |
| matrix: | |
| # Note: Java 25 is not yet supported on drools. Just for testing purpose. | |
| java-version: [17, 21, 25] | |
| fail-fast: false | |
| runs-on: ubuntu-latest | |
| name: Memory Leak Test / Java-${{ matrix.java-version }} | |
| steps: | |
| - name: Clean Disk Space | |
| uses: kiegroup/kie-ci/.ci/actions/ubuntu-disk-space@main | |
| - name: Java and Maven Setup | |
| uses: kiegroup/kie-ci/.ci/actions/maven@main | |
| with: | |
| java-version: ${{ matrix.java-version }} | |
| maven-version: '3.9.11' | |
| - name: Build Chain | |
| uses: kiegroup/kie-ci/.ci/actions/build-chain@main | |
| with: | |
| definition-file: https://raw.githubusercontent.com/${GROUP:kiegroup}/drools-ansible-rulebook-integration/${BRANCH:main}/.ci/pull-request-config.yaml | |
| github-token: "${{ secrets.GITHUB_TOKEN }}" | |
| - name: Run MemoryLeakTest | |
| run: | | |
| cd kiegroup_drools-ansible-rulebook-integration | |
| mvn test -Pmemoryleak-tests | |
| - name: Build load test module | |
| run: | | |
| cd kiegroup_drools-ansible-rulebook-integration | |
| mvn --batch-mode --update-snapshots -pl drools-ansible-rulebook-integration-load-tests -am package -DskipTests | |
| - name: Run HA PostgreSQL load tests | |
| run: | | |
| cd kiegroup_drools-ansible-rulebook-integration/drools-ansible-rulebook-integration-load-tests | |
| chmod +x \ | |
| load_test_match_unmatch_noHA_HA-PG.sh \ | |
| load_test_retention_noHA_HA-PG.sh \ | |
| load_test_temporal_HA-PG.sh \ | |
| load_test_failover_HA-PG.sh | |
| ./load_test_match_unmatch_noHA_HA-PG.sh | |
| ./load_test_retention_noHA_HA-PG.sh | |
| ./load_test_temporal_HA-PG.sh | |
| ./load_test_failover_HA-PG.sh | |
| - name: Upload load test results | |
| uses: actions/upload-artifact@v6 | |
| if: always() | |
| with: | |
| name: memory-leak-test-results-java${{ matrix.java-version }} | |
| path: | | |
| kiegroup_drools-ansible-rulebook-integration/drools-ansible-rulebook-integration-load-tests/result_*.txt | |
| kiegroup_drools-ansible-rulebook-integration/drools-ansible-rulebook-integration-load-tests/out_*.log | |
| retention-days: 30 |