This is an automated email from the ASF dual-hosted git repository. albumenj pushed a commit to branch 1021_fast in repository https://gitbox.apache.org/repos/asf/dubbo.git
commit fed62929bf9b0ebd603e4fc6c05b37b6b51fb8d4 Author: Albumen Kevin <[email protected]> AuthorDate: Fri Oct 21 11:52:47 2022 +0800 try fast --- .github/workflows/build-and-test-3.2.yml | 37 +++++++++++++++++++++++++--- unit-test.sh | 42 ++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-and-test-3.2.yml b/.github/workflows/build-and-test-3.2.yml index 465ecbf827..772e702f7d 100644 --- a/.github/workflows/build-and-test-3.2.yml +++ b/.github/workflows/build-and-test-3.2.yml @@ -77,15 +77,13 @@ jobs: echo "dubbo version: $REVISION" unit-test-prepare: - name: " Preparation for Unit Test On ${{ matrix.os }} (JDK: ${{ matrix.jdk }})" + name: " Preparation for Unit Test On ${{ matrix.os }}" runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ ubuntu-20.04, windows-2019 ] - jdk: [ 8, 11, 17 ] env: - DISABLE_FILE_SYSTEM_TEST: true ZOOKEEPER_VERSION: 3.6.3 steps: - uses: actions/cache@v2 @@ -162,6 +160,39 @@ jobs: - name: "Upload coverage to Codecov" uses: codecov/codecov-action@v1 + + unit-test-fast: + needs: [build-source, unit-test-prepare] + name: "Unit Test On ubuntu-20.04 (JDK: 17)" + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + case-role: [0, 1, 2, 3, 4, 5] + env: + DISABLE_FILE_SYSTEM_TEST: true + CURRENT_ROLE: ${{ matrix.case-role }} + CASE_RANGE: 6 + steps: + - uses: actions/checkout@v2 + - name: "Set up JDK ${{ matrix.jdk }}" + uses: actions/setup-java@v1 + with: + java-version: 17 + - uses: actions/cache@v2 + name: "Cache local Maven repository" + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven- + - name: "Test with Maven with Integration Tests" + timeout-minutes: 70 + if: ${{ startsWith( matrix.os, 'ubuntu') }} + run: bash unit-test.sh + - name: "Upload coverage to Codecov" + uses: codecov/codecov-action@v1 + unit-test-fastjson2: needs: [build-source, unit-test-prepare] name: "Unit Test On ${{ matrix.os }} (JDK: ${{ matrix.jdk }}, Serialization: fastjson2)" diff --git a/unit-test.sh b/unit-test.sh new file mode 100644 index 0000000000..d3a27f4f3a --- /dev/null +++ b/unit-test.sh @@ -0,0 +1,42 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +data=$(find . -name pom.xml | cut -c 3- | rev | cut -c 9- | rev | sort) + +submodules=($data) +CASE_RAGE=6 +CURRENT_ROLE=0 +case_count=0 +case_rage=$CASE_RAGE +current_role=$CURRENT_ROLE + +for (( i = 0; i < ${#submodules[@]}; i++ )); do + if [ ${submodules[$i]} != "" ]; then + if [ $case_count -eq $current_role ]; then + echo "execute ${submodules[$i]} test cases" + ./mvnw -pl ${submodules[$i]} -o --batch-mode --no-snapshot-updates -e --no-transfer-progress --fail-fast clean test verify -Pjacoco -DskipTests=false -DskipIntegrationTests=false -Dcheckstyle.skip=false -Dcheckstyle_unix.skip=false -Drat.skip=false -Dmaven.javadoc.skip=true -DembeddedZookeeperPath=$(pwd)/.tmp/zookeeper + if [ $? -ne 0 ]; then + exit $? + fi + fi + case_count=$((case_count + 1)) + case_count=$((case_count % case_rage)) + fi +done
