Merge pull request #1577 from daizhenyu/develop-xds-integration #1868
This file contains 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: Dubbo Integration Test | |
env: | |
sermantVersion: 1.0.0 | |
on: | |
push: | |
pull_request: | |
branches: | |
- '*' | |
paths: | |
- 'sermant-agentcore/**' | |
- 'sermant-integration-tests/**' | |
- 'sermant-plugins/sermant-dynamic-config/**' | |
- 'sermant-plugins/sermant-flowcontrol/**' | |
- 'sermant-plugins/sermant-loadbalancer/**' | |
- 'sermant-plugins/sermant-router/**' | |
- 'sermant-plugins/sermant-service-registry/**' | |
- 'sermant-plugins/sermant-springboot-registry/**' | |
- 'sermant-plugins/sermant-monitor/**' | |
- 'sermant-plugins/sermant-service-visibility/**' | |
- '.github/workflows/dubbo_integration*.yml' | |
- '.github/actions/**' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}-${{ github.head_ref }} | |
cancel-in-progress: true | |
jobs: | |
download-midwares-and-cache: | |
name: download and cache middlewares | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: cache middlewares | |
uses: actions/cache@v3 | |
with: | |
path: | | |
apache-zookeeper-*/ | |
Local-CSE-2.1.3-linux-amd64.zip | |
key: ${{ runner.os }}-middlewares-${{ github.run_id }} | |
- name: download middlewares | |
run: | | |
export ROOT_PATH=$(pwd) | |
bash ./sermant-integration-tests/scripts/tryDownloadMidware.sh zk | |
tar -zxf apache-zookeeper-3.6.3-bin.tar.gz | |
bash ./sermant-integration-tests/scripts/tryDownloadMidware.sh | |
build-agent-and-cache: | |
name: package and cache agent | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '8' | |
distribution: 'adopt' | |
cache: maven | |
- name: cache agent | |
uses: actions/cache@v3 | |
with: | |
path: sermant-agent-*/ | |
key: ${{ runner.os }}-agent-${{ github.run_id }} | |
- name: package agent | |
run: | | |
sed -i '/sermant-backend-lite/d' pom.xml | |
sed -i '/sermant-integration-tests/d' pom.xml | |
sed -i '/sermant-injector/d' pom.xml | |
mvn package -DskipTests -Ptest --file pom.xml | |
test-for-dubbo: | |
name: Test for dubbo | |
runs-on: ubuntu-latest | |
needs: [download-midwares-and-cache, build-agent-and-cache] | |
strategy: | |
matrix: | |
dubbo-version: ['2-5','2-6','2-7'] | |
dubbo-versions: ['0','3','6','9','12'] | |
include: | |
- dubbo-version: '2-5' | |
dubbo-versions: '10' | |
- dubbo-version: '2-7' | |
dubbo-versions: '15' | |
exclude: | |
- dubbo-version: '2-5' | |
dubbo-versions: '9' | |
- dubbo-version: '2-5' | |
dubbo-versions: '12' | |
- dubbo-version: '2-7' | |
dubbo-versions: '3' | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 100 | |
- name: set java version to environment | |
run: | | |
echo "javaVersion=8" >> $GITHUB_ENV | |
- name: common operations | |
uses: ./.github/actions/common/dubbo | |
- name: (dubbo router) test for ${{ matrix.dubbo-version }}-${{ matrix.dubbo-versions }} | |
if: env.enableDubboRouter == 'true' | |
uses: ./.github/actions/scenarios/dubbo/router | |
- name: monitor test for ${{ matrix.dubbo-version }}-${{ matrix.dubbo-versions }} | |
if: env.enableMonitor == 'true' | |
uses: ./.github/actions/scenarios/dubbo/monitor | |
- name: visibility test for ${{ matrix.dubbo-version }}-${{ matrix.dubbo-versions }} | |
if: env.enableVisibility == 'true' | |
uses: ./.github/actions/scenarios/dubbo/visibility | |
- name: (dubbo common) test for ${{ matrix.dubbo-version }}-${{ matrix.dubbo-versions }} | |
if: env.enableDubboCommon == 'true' | |
uses: ./.github/actions/scenarios/dubbo/dubbo-common | |
- name: (dubbo lane) test for ${{ matrix.dubbo-version }}-${{ matrix.dubbo-versions }} | |
if: env.enableDubboLane == 'true' | |
uses: ./.github/actions/scenarios/dubbo/lane | |
- name: removal test for ${{ matrix.dubbo-version }}-${{ matrix.dubbo-versions }} | |
if: env.enableRemoval == 'true' | |
uses: ./.github/actions/scenarios/dubbo/removal | |
test-for-dubbo3: | |
name: Test for dubbo3.x | |
runs-on: ubuntu-latest | |
needs: [ download-midwares-and-cache, build-agent-and-cache ] | |
strategy: | |
matrix: | |
registry-model: [ 'all','interface','instance' ] | |
dubbo-version: [ '3-0','3-1','3-2' ] | |
dubbo-versions: [ '0','3','6','9','12' ] | |
include: | |
- dubbo-version: '3-0' | |
dubbo-versions: '15' | |
registry-model: 'all' | |
- dubbo-version: '3-0' | |
dubbo-versions: '15' | |
registry-model: 'interface' | |
- dubbo-version: '3-0' | |
dubbo-versions: '15' | |
registry-model: 'instance' | |
- dubbo-version: '3-1' | |
dubbo-versions: '11' | |
registry-model: 'all' | |
- dubbo-version: '3-1' | |
dubbo-versions: '11' | |
registry-model: 'interface' | |
- dubbo-version: '3-1' | |
dubbo-versions: '11' | |
registry-model: 'instance' | |
- dubbo-version: '3-2' | |
dubbo-versions: '11' | |
registry-model: 'all' | |
- dubbo-version: '3-2' | |
dubbo-versions: '11' | |
registry-model: 'interface' | |
- dubbo-version: '3-2' | |
dubbo-versions: '11' | |
registry-model: 'instance' | |
exclude: | |
- dubbo-version: '3-0' | |
dubbo-versions: '0' | |
registry-model: 'all' | |
- dubbo-version: '3-0' | |
dubbo-versions: '0' | |
registry-model: 'interface' | |
- dubbo-version: '3-0' | |
dubbo-versions: '0' | |
registry-model: 'instance' | |
- dubbo-version: '3-0' | |
dubbo-versions: '3' | |
registry-model: 'all' | |
- dubbo-version: '3-0' | |
dubbo-versions: '3' | |
registry-model: 'interface' | |
- dubbo-version: '3-0' | |
dubbo-versions: '3' | |
registry-model: 'instance' | |
- dubbo-version: '3-1' | |
dubbo-versions: '12' | |
registry-model: 'all' | |
- dubbo-version: '3-1' | |
dubbo-versions: '12' | |
registry-model: 'interface' | |
- dubbo-version: '3-1' | |
dubbo-versions: '12' | |
registry-model: 'instance' | |
- dubbo-version: '3-2' | |
dubbo-versions: '12' | |
registry-model: 'all' | |
- dubbo-version: '3-2' | |
dubbo-versions: '12' | |
registry-model: 'interface' | |
- dubbo-version: '3-2' | |
dubbo-versions: '12' | |
registry-model: 'instance' | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 100 | |
- name: set java version to environment | |
run: | | |
echo "javaVersion=8" >> $GITHUB_ENV | |
- name: common operations | |
uses: ./.github/actions/common/dubbo | |
- name: (dubbo3.x router) test for ${{ matrix.dubbo-version }}-${{ matrix.dubbo-versions }} | |
if: env.enableDubboRouter == 'true' | |
uses: ./.github/actions/scenarios/dubbo/router-dubbo3 | |
- name: (dubbo3.x lane) test for ${{ matrix.dubbo-version }}-${{ matrix.dubbo-versions }} | |
if: env.enableDubboLane == 'true' | |
uses: ./.github/actions/scenarios/dubbo/lane-dubbo3 |