Skip to content

Preserve test runner argLine when configuring agent #1741

Preserve test runner argLine when configuring agent

Preserve test runner argLine when configuring agent #1741

# Pull request Maven plugin gate: runs Maven E2E matrices, inspections, and GraalVM dev-build functional tests.
# §AR-repository-ci.1.4; §maven/E2E-functional-tests
name: "Test native-maven-plugin"
on:
pull_request:
paths:
- 'native-maven-plugin/**'
- 'samples/**'
- 'common/**'
- '.github/actions/**'
- '.github/workflows/test-native-maven-plugin.yml'
- 'gradle/libs.versions.toml'
workflow_dispatch:
permissions:
contents: read
concurrency:
group: "workflow = ${{ github.workflow }}, ref = ${{ github.event.ref }}, pr = ${{ github.event.pull_request.id }}"
cancel-in-progress: ${{ github.event_name == 'pull_request' || github.repository != 'graalvm/native-build-tools' }}
jobs:
populate-matrix:
name: "Set matrix"
runs-on: "ubuntu-22.04"
timeout-minutes: 5
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- name: "☁️ Checkout repository"
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: "🔧 Prepare environment"
uses: graalvm/setup-graalvm@60c26726de13f8b90771df4bc1641a52a3159994 # v1
with:
java-version: '17'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: "🕸️ Populate matrix"
id: set-matrix
run: |
./gradlew -PmatrixType=maven :native-maven-plugin:dumpFunctionalTestList
test-native-maven-plugin:
name: "🧪 Maven: ${{ matrix.test }} on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
timeout-minutes: 60
needs: populate-matrix
strategy:
fail-fast: false
matrix: ${{fromJson(needs.populate-matrix.outputs.matrix)}}
steps:
- name: "☁️ Checkout repository"
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: "🔧 Prepare environment"
uses: ./.github/actions/prepare-environment
with:
java-version: ${{ matrix.java-version }}
graal-java-version: '25'
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: "❓ Check and test the plugin"
run: ./gradlew :native-maven-plugin:functionalTest --no-daemon --fail-fast --tests ${{ matrix.test }}
- name: "📜 Upload unit test results"
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: maven-functional-tests-results-${{ strategy.job-index }}-${{ matrix.os }}-${{ matrix.test }}
path: native-maven-plugin/build/reports/tests/
inspect-native-maven-plugin:
name: "Inspections"
runs-on: "ubuntu-22.04"
timeout-minutes: 20
steps:
- name: "☁️ Checkout repository"
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: "🔧 Prepare environment"
uses: ./.github/actions/prepare-environment
with:
java-version: '17.0.12'
graal-java-version: ''
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: "❓ Run inspections"
run: >
./gradlew :graalvm-reachability-metadata:publishAllPublicationsToCommonRepository
:native-maven-plugin:publishAllPublicationsToCommonRepository
:native-maven-plugin:inspections --no-parallel
functional-testing-maven-plugin-dev:
name: "Functional testing (GraalVM Dev Build)"
runs-on: ${{ matrix.os }}
env:
IS_GRAALVM_DEV_BUILD: 'true'
strategy:
fail-fast: false
matrix:
java-version: [ 17.0.12 ]
os: [ ubuntu-22.04 ]
steps:
- name: "☁️ Checkout repository"
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: "🔧 Prepare environment"
uses: ./.github/actions/prepare-environment
with:
java-version: ${{ matrix.java-version }}
graal-java-version: ''
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: "🔧 Install GraalVM (dev)"
uses: graalvm/setup-graalvm@60c26726de13f8b90771df4bc1641a52a3159994 # v1
with:
java-version: 'latest-ea'
distribution: 'graalvm'
github-token: ${{ inputs.github-token }}
set-java-home: 'false'
- name: "❓ Check and test the plugin"
run: ./gradlew :native-maven-plugin:functionalTest
- name: "📜 Upload functional tests results"
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: functional-tests-results-graalvm-dev-${{ strategy.job-index }}-${{ matrix.os }}-${{ matrix.test }}
path: native-maven-plugin/build/reports/tests/functionalTest/