Bump dependencies #3936
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: Test report | |
| on: | |
| workflow_dispatch: | |
| paths-ignore: | |
| - '**.md' | |
| pull_request: | |
| paths-ignore: | |
| - '**.md' | |
| push: | |
| paths-ignore: | |
| - '**.md' | |
| env: | |
| MAVEN_OPTS: -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3 -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 | |
| permissions: read-all | |
| jobs: | |
| tests: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 60 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| # Java 17 tests | |
| - name: "Unit tests - Java 17" | |
| java_version: 17 | |
| test_suite: 'test -Djava.version=17 jacoco:report' | |
| - name: "Style check - Java 17" | |
| java_version: 17 | |
| test_suite: 'test-compile -Djava.version=17 com.mycila:license-maven-plugin:check pmd:pmd pmd:cpd pmd:check pmd:cpd-check javadoc:jar' | |
| - name: "Standalone integration 4.1 - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P standalone-integration-tests -Dit.cassandra.version=4.1 -Djava.version=17 -DskipUTs' | |
| artifacts_dir: "standalone-integration/target" | |
| - name: "Standalone integration 5.0 - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P standalone-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -DskipUTs' | |
| artifacts_dir: "standalone-integration/target" | |
| - name: "Python integration - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P python-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Topology integration - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P topology-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "DatacenterAware Multi-Agent integration tests - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P multi-agent-datacenter-aware-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| # Java 21 tests | |
| - name: "Unit tests - Java 21" | |
| java_version: 21 | |
| test_suite: 'test -Dnet.bytebuddy.experimental=true -Djava.version=21 jacoco:report' | |
| - name: "Style check - Java 21" | |
| java_version: 21 | |
| test_suite: 'test-compile -Djava.version=21 com.mycila:license-maven-plugin:check pmd:pmd pmd:cpd pmd:check pmd:cpd-check javadoc:jar' | |
| - name: "Standalone integration 4.1 - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P standalone-integration-tests -Dit.cassandra.version=4.1 -Djava.version=21 -DskipUTs' | |
| artifacts_dir: "standalone-integration/target" | |
| - name: "Standalone integration 5.0 - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P standalone-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -DskipUTs' | |
| artifacts_dir: "standalone-integration/target" | |
| - name: "Python integration - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P python-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Topology integration - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P topology-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "DatacenterAware Multi-Agent integration tests - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P multi-agent-datacenter-aware-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| # Java 17 Jolokia tests | |
| - name: "Jolokia Standalone integration 5.0 - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P standalone-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -Dit.jolokia.enabled=true -DskipUTs' | |
| artifacts_dir: "standalone-integration/target" | |
| - name: "Jolokia Python integration - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P python-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -Dit.jolokia.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia Python integration - Java 17 - PEM" | |
| java_version: 17 | |
| test_suite: 'verify -P python-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -Dit.jolokia.enabled=true -Dit.jmx.pem.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia Topology integration - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P topology-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -Dit.jolokia.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia Topology integration - Java 17 - PEM" | |
| java_version: 17 | |
| test_suite: 'verify -P topology-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -Dit.jolokia.enabled=true -Dit.jmx.pem.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia DatacenterAware Multi-Agent integration tests - Java 17" | |
| java_version: 17 | |
| test_suite: 'verify -P multi-agent-datacenter-aware-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -Dit.jolokia.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia DatacenterAware Multi-Agent integration tests - Java 17 - PEM" | |
| java_version: 17 | |
| test_suite: 'verify -P multi-agent-datacenter-aware-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=17 -Dit.jolokia.enabled=true -Dit.jmx.pem.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| # Java 21 Jolokia tests | |
| - name: "Jolokia Standalone integration 5.0 - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P standalone-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -Dit.jolokia.enabled=true -DskipUTs' | |
| artifacts_dir: "standalone-integration/target" | |
| - name: "Jolokia Python integration - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P python-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -Dit.jolokia.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia Python integration - Java 21 - PEM" | |
| java_version: 21 | |
| test_suite: 'verify -P python-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -Dit.jolokia.enabled=true -Dit.jmx.pem.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia Topology integration - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P topology-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -Dit.jolokia.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia Topology integration - Java 21 - PEM" | |
| java_version: 21 | |
| test_suite: 'verify -P topology-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -Dit.jolokia.enabled=true -Dit.jmx.pem.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia DatacenterAware Multi-Agent integration tests - Java 21" | |
| java_version: 21 | |
| test_suite: 'verify -P multi-agent-datacenter-aware-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -Dit.jolokia.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| - name: "Jolokia DatacenterAware Multi-Agent integration tests - Java 21 - PEM" | |
| java_version: 17 | |
| test_suite: 'verify -P multi-agent-datacenter-aware-integration-tests -Dit.cassandra.version=5.0.4 -Djava.version=21 -Dit.jolokia.enabled=true -Dit.jmx.pem.enabled=true -DskipUTs' | |
| artifacts_dir: "ecchronos-binary/target" | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Cache local Maven repository | |
| uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3 | |
| with: | |
| path: ~/.m2/repository | |
| key: build-${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} | |
| restore-keys: | | |
| build-${{ runner.os }}-maven- | |
| - name: Set up JDK ${{ matrix.java_version }} | |
| uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 | |
| with: | |
| java-version: ${{ matrix.java_version }} | |
| distribution: 'temurin' | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Set up Python 3 | |
| uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 | |
| with: | |
| python-version: 3.13 | |
| - name: Install black | |
| run: python -m pip install black==24.10.0 | |
| - name: Run black in the check mode | |
| run: black --check --verbose --line-length 120 ./ecchronos-binary/src | |
| - name: install dependencies | |
| run: mvn install -Pbuild-cassandra-test-jar -DskipTests=true | |
| - name: Set Cassandra memory limits for topology tests | |
| if: contains(matrix.name, 'Topology') | |
| run: | | |
| echo "MAX_HEAP_SIZE=1536M" >> $GITHUB_ENV | |
| echo "HEAP_NEWSIZE=200M" >> $GITHUB_ENV | |
| - name: Set up Docker Compose | |
| uses: KengoTODA/actions-setup-docker-compose@477353946803dd64eaa44008b865b6bfc88cab4e # v1.2.4 | |
| with: | |
| version: '2.31.0' | |
| - run: mvn $TEST_SUITE -B | |
| id: tests | |
| env: | |
| TEST_SUITE: ${{ matrix.test_suite }} | |
| - name: Upload artifacts | |
| if: ${{ failure() && steps.tests.conclusion == 'failure' }} | |
| uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 | |
| with: | |
| name: ${{ matrix.name }}-ecchronos-logs | |
| path: ./ecchronos-binary/target/test/ecchronos-binary-agent-1.0.0-SNAPSHOT/logs/ | |
| if-no-files-found: 'ignore' | |
| - name: Upload coverage to Codecov | |
| uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| fail_ci_if_error: false | |
| files: > | |
| ./rest/target/site/jacoco/jacoco.xml, | |
| ./application/target/site/jacoco/jacoco.xml, | |
| ./core/target/site/jacoco/jacoco.xml, | |
| ./fault.manager.impl/target/site/jacoco/jacoco.xml, | |
| ./connection.impl/target/site/jacoco/jacoco.xml, | |
| ./core.impl/target/site/jacoco/jacoco.xml, | |
| ./data/target/site/jacoco/jacoco.xml, | |
| ./utils/target/site/jacoco/jacoco.xml |