plugins-test.2.yaml 3.1 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
# 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.

name: PluginsTest

on:
  pull_request:
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
    paths:
      - '.github/workflows/plugins-*.yaml'
      - 'apm-application-toolkit/**'
      - 'apm-commons/**'
      - 'apm-protocol/**'
      - 'apm-sniffer/**'
      - 'test/plugin/**'
      - '**/pom.xml'
      - '!test/e2e/**'
      - '!apm-webapp/**'
      - '!apm-dist/**'
      - '!apm-dist-es7/**'
      - '!apm-docker/**'
      - '!oap-server/**'
      - '!**.md'
36 37 38 39 40 41 42 43 44 45

jobs:
  PluginsTest:
    name: Plugin
    runs-on: ubuntu-18.04
    timeout-minutes: 90
    strategy:
      fail-fast: true
      matrix:
        case:
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
          - okhttp-scenario
          - play-scenario
          - postgresql-scenario
          - pulsar-scenario
          - rabbitmq-scenario
          - redisson-scenario
          - resttemplate-4.x-scenario
          - servicecomb-0.x-scenario
          - servicecomb-1.x-scenario
          - shardingsphere-3.x-scenario
          - shardingsphere-4.x-RC1-RC2-scenario
          - shardingsphere-4.x-RC3-scenario
          - shardingsphere-4.0.x-scenario
          - shardingsphere-4.x-scenario
          - sofarpc-scenario
          - solrj-7.x-scenario
          - spring-3.0.x-scenario
          - spring-cloud-feign-1.1.x-scenario
          - spring-cloud-feign-1.2.x-scenario
          - spring-cloud-feign-2.x-scenario
          - spring-tx-scenario
          - struts2.3-scenario
          - struts2.5-scenario
69
          - cxf-scenario
70 71
    steps:
      - uses: actions/checkout@v2
72 73
        with:
          submodules: true
74 75 76 77 78 79 80
      - name: Cache local Maven repository
        uses: actions/cache@v2
        with:
          path: ~/.m2/repository
          key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
          restore-keys: |
            ${{ runner.os }}-maven-
81 82 83
      - uses: actions/setup-java@v1
        with:
          java-version: 8
84 85
      - name: Add checkstyle-plugin
        run: sed -i '/<\/sourceDirectories>/i <sourceDirectory>scenarios\/'"${{ matrix.case }}"'<\/sourceDirectory>' test/plugin/pom.xml
86 87 88
      - name: Build SkyWalking Agent
        run: ./mvnw --batch-mode clean package -DskipTests -Pagent
      - name: Build Docker image
89
        run: ./mvnw --batch-mode -f test/plugin/pom.xml clean package -DskipTests
90 91
      - name: ${{ matrix.case }}
        run: bash test/plugin/run.sh ${{ matrix.case }}
92 93
      - name: Report Coverage
        run: bash -x tools/coverage/report.sh