You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by ke...@apache.org on 2022/04/06 01:33:46 UTC

[dolphinscheduler] branch dev updated: [Improve][CI] improve ci checking (#9325)

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

kezhenxu94 pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git


The following commit(s) were added to refs/heads/dev by this push:
     new 40b73f7962 [Improve][CI] improve ci checking (#9325)
40b73f7962 is described below

commit 40b73f7962206946aab5ff15412471b22c205a72
Author: xiangzihao <46...@qq.com>
AuthorDate: Wed Apr 6 09:33:41 2022 +0800

    [Improve][CI] improve ci checking (#9325)
---
 .github/workflows/backend.yml   | 30 +++++++++++++++++++++++++++++-
 .github/workflows/docs.yml      |  4 +++-
 .github/workflows/e2e.yml       | 17 +++++++++++++++--
 .github/workflows/unit-test.yml | 30 +++++++++++++++++++++++++++++-
 4 files changed, 76 insertions(+), 5 deletions(-)

diff --git a/.github/workflows/backend.yml b/.github/workflows/backend.yml
index 7dfe3f730e..bb2b65c56d 100644
--- a/.github/workflows/backend.yml
+++ b/.github/workflows/backend.yml
@@ -38,8 +38,22 @@ concurrency:
   cancel-in-progress: true
 
 jobs:
+  paths-filter:
+    name: Backend-Path-Filter
+    runs-on: ubuntu-latest
+    outputs:
+      ignore: ${{ steps.filter.outputs.ignore }}
+    steps:
+      - uses: dorny/paths-filter@b2feaf19c27470162a626bd6fa8438ae5b263721
+        id: filter
+        with:
+          filters: |
+            ignore:
+              - '(docs/**|dolphinscheduler-ui/**|dolphinscheduler-ui-next/**)'
   build:
-    name: Build
+    name: Backend-Build
+    needs: paths-filter
+    if: ${{ needs.paths-filter.outputs.ignore == 'false' }}
     runs-on: ubuntu-latest
     timeout-minutes: 30
     steps:
@@ -63,3 +77,17 @@ jobs:
                  -Dmaven.wagon.httpconnectionManager.ttlSeconds=120
       - name: Check dependency license
         run: tools/dependencies/check-LICENSE.sh
+  result:
+    name: Build
+    runs-on: ubuntu-latest
+    timeout-minutes: 30
+    needs: [ build ]
+    if: always()
+    steps:
+      - name: Status
+        run: |
+          if [[ ${{ needs.build.result }} == 'success' || ${{ needs.paths-filter.outputs.ignore == 'true' }} ]]; then
+            echo "Passed!"
+          else
+            exit -1
+          fi
diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml
index 32e2f8e90f..9a1422da17 100644
--- a/.github/workflows/docs.yml
+++ b/.github/workflows/docs.yml
@@ -18,6 +18,8 @@ name: Docs
 
 on:
   pull_request:
+    paths:
+      - 'docs/**'
 
 concurrency:
   group: doc-${{ github.event.pull_request.number || github.ref }}
@@ -47,6 +49,6 @@ jobs:
       - uses: actions/checkout@v2
       - run: sudo npm install -g markdown-link-check@3.10.0
       - run: |
-          for file in $(find . -name "*.md"); do
+          for file in $(find ./docs -name "*.md"); do
             markdown-link-check -c .dlc.json -q "$file"
           done
diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml
index 60e746b8ae..f35c8d13df 100644
--- a/.github/workflows/e2e.yml
+++ b/.github/workflows/e2e.yml
@@ -29,8 +29,22 @@ concurrency:
 
 
 jobs:
+  paths-filter:
+    name: E2E-Path-Filter
+    runs-on: ubuntu-latest
+    outputs:
+      ignore: ${{ steps.filter.outputs.ignore }}
+    steps:
+      - uses: dorny/paths-filter@b2feaf19c27470162a626bd6fa8438ae5b263721
+        id: filter
+        with:
+          filters: |
+            ignore:
+              - '(docs/**)'
   build:
     name: E2E-Build
+    needs: paths-filter
+    if: ${{ needs.paths-filter.outputs.ignore == 'false' }}
     runs-on: ubuntu-latest
     timeout-minutes: 20
     steps:
@@ -137,7 +151,6 @@ jobs:
           name: recording-${{ matrix.case.name }}
           path: ${{ env.RECORDING_PATH }}
           retention-days: 1
-
   result:
     name: E2E
     runs-on: ubuntu-latest
@@ -147,7 +160,7 @@ jobs:
     steps:
       - name: Status
         run: |
-          if [[ ${{ needs.e2e.result }} == 'success' ]]; then
+          if [[ ${{ needs.e2e.result }} == 'success' || ${{ needs.paths-filter.outputs.ignore == 'true' }} ]]; then
             echo "Passed!"
           else
             exit -1
diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml
index 4043e2e598..b666741107 100644
--- a/.github/workflows/unit-test.yml
+++ b/.github/workflows/unit-test.yml
@@ -36,8 +36,22 @@ concurrency:
   cancel-in-progress: true
 
 jobs:
+  paths-filter:
+    name: Unit-Test-Path-Filter
+    runs-on: ubuntu-latest
+    outputs:
+      ignore: ${{ steps.filter.outputs.ignore }}
+    steps:
+      - uses: dorny/paths-filter@b2feaf19c27470162a626bd6fa8438ae5b263721
+        id: filter
+        with:
+          filters: |
+            ignore:
+              - '(docs/**)'
   unit-test:
-    name: Unit Test
+    name: Unit-Test
+    needs: paths-filter
+    if: ${{ needs.paths-filter.outputs.ignore == 'false' }}
     runs-on: ubuntu-latest
     timeout-minutes: 30
     steps:
@@ -96,3 +110,17 @@ jobs:
         with:
           name: unit-test-logs
           path: ${LOG_DIR}
+  result:
+    name: Unit Test
+    runs-on: ubuntu-latest
+    timeout-minutes: 30
+    needs: [ unit-test ]
+    if: always()
+    steps:
+      - name: Status
+        run: |
+          if [[ ${{ needs.unit-test.result }} == 'success' || ${{ needs.paths-filter.outputs.ignore == 'true' }} ]]; then
+            echo "Passed!"
+          else
+            exit -1
+          fi