You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by ke...@apache.org on 2021/08/23 10:18:14 UTC

[skywalking] branch test/ci/fasten created (now 97f7e52)

This is an automated email from the ASF dual-hosted git repository.

kezhenxu94 pushed a change to branch test/ci/fasten
in repository https://gitbox.apache.org/repos/asf/skywalking.git.


      at 97f7e52  Split CI workflow to fasten the waiting time

This branch includes the following new commits:

     new 97f7e52  Split CI workflow to fasten the waiting time

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


[skywalking] 01/01: Split CI workflow to fasten the waiting time

Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

kezhenxu94 pushed a commit to branch test/ci/fasten
in repository https://gitbox.apache.org/repos/asf/skywalking.git

commit 97f7e5233437c1ef8107ad28dad9f504a5108b3a
Author: kezhenxu94 <ke...@apache.org>
AuthorDate: Mon Aug 23 18:17:09 2021 +0800

    Split CI workflow to fasten the waiting time
---
 .github/workflows/ci-it.yaml              | 102 +++++-------------------------
 .github/workflows/dependency-license.yaml |  63 ++++++++++++++++++
 2 files changed, 80 insertions(+), 85 deletions(-)

diff --git a/.github/workflows/ci-it.yaml b/.github/workflows/ci-it.yaml
index 4c2dceb..ee7f893 100644
--- a/.github/workflows/ci-it.yaml
+++ b/.github/workflows/ci-it.yaml
@@ -17,6 +17,9 @@
 name: CI AND IT
 
 on:
+  push:
+    branches:
+      - test/ci/*
   pull_request:
   schedule:
     - cron: '0 18 * * *'  # TimeZone: UTC 0
@@ -32,8 +35,13 @@ concurrency:
 jobs:
   CI:
     if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking') || (github.event_name != 'schedule')
-    runs-on: ubuntu-latest
+    runs-on: ${{ matrix.os }}
     timeout-minutes: 90
+    strategy:
+      matrix:
+        os: [ "ubuntu-latest", "macos-latest", "windows-latest" ]
+        jdk: [ "8", "11" ]
+        profile: [ "agent", "backend", "ui" ]
     steps:
       - uses: actions/checkout@v2
         with:
@@ -57,92 +65,16 @@ jobs:
         if: env.SKIP_CI != 'true'
         with:
           java-version: 8
-      - name: 'Check Javaagent Plugin List'
+      - name: Check Javaagent Plugin List
         if: env.SKIP_CI != 'true'
         run: tools/plugin/check-javaagent-plugin-list.sh
-      - name: 'Install & Test'
-        if: env.SKIP_CI != 'true'
-        run: |
-          ./mvnw -q --batch-mode -P"agent,backend,ui,dist,CI-with-IT" clean cobertura:cobertura verify install javadoc:javadoc
-          bash <(curl -s https://codecov.io/bash)
-      - name: 'Check Dependencies Licenses'
-        if: env.SKIP_CI != 'true'
-        run: tools/dependencies/check-LICENSE.sh
-
-  CI-on-JDK11:
-    if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking') || (github.event_name != 'schedule')
-    runs-on: ubuntu-latest
-    timeout-minutes: 90
-    steps:
-      - uses: actions/checkout@v2
-        with:
-          submodules: true
-      - name: Set Skip Env Var
-        uses: ./.github/actions/skip
-      - name: Check License Header
-        if: env.SKIP_CI != 'true'
-        uses: apache/skywalking-eyes@9bd5feb86b5817aa6072b008f9866a2c3bbc8587
-      - name: Cache local Maven repository
-        if: env.SKIP_CI != 'true'
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2/repository
-          key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
-          restore-keys: |
-            ${{ runner.os }}-maven-
-      - uses: actions/setup-java@v1
-        if: env.SKIP_CI != 'true'
-        with:
-          java-version: 11
-      - name: 'Install & Test'
-        if: env.SKIP_CI != 'true'
-        run: ./mvnw -q --batch-mode -P"agent,backend,ui,dist" clean verify install
-
-  CI-on-Windows:
-    if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking') || (github.event_name != 'schedule')
-    runs-on: windows-latest
-    timeout-minutes: 90
-    steps:
-      - uses: actions/checkout@v2
-        with:
-          submodules: true
-      - name: Set Skip Env Var
-        uses: ./.github/actions/skip
-      - uses: actions/setup-java@v1
-        if: env.SKIP_CI != 'true'
-        with:
-          java-version: 8
-      - name: 'Install & Test'
-        if: env.SKIP_CI != 'true'
-        run: |
-          ./mvnw -q --batch-mode -P"agent,backend,ui,dist" clean verify install
-
-
-  CI-on-MacOS:
-    if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking') || (github.event_name != 'schedule')
-    runs-on: macos-latest
-    timeout-minutes: 90
-    steps:
-      - uses: actions/checkout@v2
-        with:
-          submodules: true
-      - name: Set Skip Env Var
-        uses: ./.github/actions/skip
-      - name: Cache local Maven repository
-        if: env.SKIP_CI != 'true'
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2/repository
-          key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
-          restore-keys: |
-            ${{ runner.os }}-maven-
       - uses: actions/setup-java@v1
         if: env.SKIP_CI != 'true'
         with:
-          java-version: 8
-      - name: 'Install & Test'
-        if: env.SKIP_CI != 'true'
-        run: |
-          # Given packaging on Mac has a high possibility to fail, we retry one more time here
-          ./mvnw -q --batch-mode -P"agent,backend,ui,dist" clean verify install || \
-          ./mvnw -q --batch-mode -P"agent,backend,ui,dist" clean verify install
+          java-version: ${{ matrix.jdk }}
+      - name: Install & Test
+        if: env.SKIP_CI != 'true' && matrix.os == 'ubuntu-latest'
+        run: ./mvnw -q --batch-mode -P"${{ matrix.profile }},CI-with-IT" clean verify install javadoc:javadoc
+      - name: Install & Test
+        if: env.SKIP_CI != 'true' && matrix.os != 'ubuntu-latest'
+        run: ./mvnw -q --batch-mode -P"${{ matrix.profile }}" clean verify install javadoc:javadoc
diff --git a/.github/workflows/dependency-license.yaml b/.github/workflows/dependency-license.yaml
new file mode 100644
index 0000000..cca5f6d
--- /dev/null
+++ b/.github/workflows/dependency-license.yaml
@@ -0,0 +1,63 @@
+# 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: Dependency License
+
+on:
+  push:
+    branches:
+      - test/ci/*
+  pull_request:
+
+concurrency:
+  group: dependency-license-${{ github.event.pull_request.number || github.ref }}
+  cancel-in-progress: true
+
+jobs:
+  dependency-license:
+    if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking') || (github.event_name != 'schedule')
+    runs-on: ubuntu-latest
+    name: Dependency Liense
+    timeout-minutes: 30
+    steps:
+      - uses: actions/checkout@v2
+        with:
+          submodules: true
+      - name: Set Skip Env Var
+        uses: ./.github/actions/skip
+      - name: Check License Header
+        if: env.SKIP_CI != 'true'
+        uses: apache/skywalking-eyes@9bd5feb86b5817aa6072b008f9866a2c3bbc8587
+        env:
+          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+      - name: Cache local Maven repository
+        if: env.SKIP_CI != 'true'
+        uses: actions/cache@v2
+        with:
+          path: ~/.m2/repository
+          key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
+          restore-keys: |
+            ${{ runner.os }}-maven-
+      - uses: actions/setup-java@v1
+        if: env.SKIP_CI != 'true'
+        with:
+          java-version: 8
+      - name: Build Distribution Tar
+        if: env.SKIP_CI != 'true'
+        run: ./mvnw -q --batch-mode -P"all,dist" -Dmaven.test.skip -Dcheckstyle.skip clean install
+      - name: Check Dependencies Licenses
+        if: env.SKIP_CI != 'true'
+        run: tools/dependencies/check-LICENSE.sh