From 3ed7d88990fc377b6ae92fc68090752b57b5c3b8 Mon Sep 17 00:00:00 2001 From: winlin <winlin@vip.126.com> Date: Sun, 25 Dec 2022 12:10:53 +0800 Subject: [PATCH] Script: Refine GitHub actions. --- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/test.yml | 80 +++++++++++++++++---------- 2 files changed, 51 insertions(+), 31 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index a8335efcf..a86521eda 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -6,7 +6,7 @@ on: [push, pull_request] jobs: analyze: name: actions-codeql-analyze - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 strategy: fail-fast: false diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 9351c1ace..9c8c3b96b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -3,6 +3,22 @@ name: "Test" # @see https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestbranchestags on: [push, pull_request] +# The dependency graph: +# multiple-arch-armv7(13m) +# multiple-arch-aarch64(7m) +# cygwin64-cache(1m) +# cygwin64(6m) - Must depends on cygwin64-cache. +# fast(0s) - To limit all fastly run jobs after slow jobs. +# build-centos7(3m) +# build-ubuntu16(3m) +# build-ubuntu18(2m) +# build-ubuntu20(2m) +# build-cross-arm(3m) +# build-cross-aarch64(3m) +# multiple-arch-amd64(2m) +# utest(3m) +# coverage(3m) - Must depends on utest. + jobs: cygwin64-cache: name: cygwin64-cache @@ -66,7 +82,7 @@ jobs: name: build-centos7 runs-on: ubuntu-20.04 needs: - - utest + - fast steps: - name: Checkout repository uses: actions/checkout@v2 @@ -88,7 +104,7 @@ jobs: name: build-ubuntu16 runs-on: ubuntu-20.04 needs: - - utest + - fast steps: - name: Checkout repository uses: actions/checkout@v2 @@ -104,7 +120,7 @@ jobs: name: build-ubuntu18 runs-on: ubuntu-20.04 needs: - - utest + - fast steps: - name: Checkout repository uses: actions/checkout@v2 @@ -120,7 +136,7 @@ jobs: name: build-ubuntu20 runs-on: ubuntu-20.04 needs: - - utest + - fast steps: - name: Checkout repository uses: actions/checkout@v2 @@ -135,6 +151,8 @@ jobs: build-cross-arm: name: build-cross-arm runs-on: ubuntu-20.04 + needs: + - fast steps: - name: Checkout repository uses: actions/checkout@v2 @@ -148,6 +166,8 @@ jobs: build-cross-aarch64: name: build-cross-aarch64 runs-on: ubuntu-20.04 + needs: + - fast steps: - name: Checkout repository uses: actions/checkout@v2 @@ -158,21 +178,6 @@ jobs: outputs: SRS_BUILD_CROSS_AARCH64_DONE: ok - build: - name: build - needs: - - build-centos7 - - build-ubuntu16 - - build-ubuntu18 - - build-ubuntu20 - - build-cross-arm - - build-cross-aarch64 - runs-on: ubuntu-20.04 - steps: - - run: echo 'Build done' - outputs: - SRS_BUILD_DONE: ok - utest: name: utest runs-on: ubuntu-20.04 @@ -229,8 +234,8 @@ jobs: outputs: SRS_COVERAGE_DONE: ok - multile-arch-armv7: - name: multile-arch-armv7 + multiple-arch-armv7: + name: multiple-arch-armv7 runs-on: ubuntu-20.04 steps: - name: Checkout repository @@ -251,8 +256,8 @@ jobs: outputs: SRS_MULTIPLE_ARCH_ARMV7_DONE: ok - multile-arch-aarch64: - name: multile-arch-aarch64 + multiple-arch-aarch64: + name: multiple-arch-aarch64 runs-on: ubuntu-20.04 steps: - name: Checkout repository @@ -273,11 +278,11 @@ jobs: outputs: SRS_MULTIPLE_ARCH_AARCH64_DONE: ok - multile-arch-amd64: - name: multile-arch-amd64 + multiple-arch-amd64: + name: multiple-arch-amd64 runs-on: ubuntu-20.04 needs: - - utest + - fast steps: - name: Checkout repository uses: actions/checkout@v2 @@ -297,15 +302,30 @@ jobs: outputs: SRS_MULTIPLE_ARCH_AMD64_DONE: ok + fast: + name: fast + needs: + - cygwin64-cache + runs-on: ubuntu-20.04 + steps: + - run: echo 'Start fast jobs' + outputs: + SRS_FAST_DONE: ok + done: name: done needs: - cygwin64 - - build - coverage - - multile-arch-armv7 - - multile-arch-aarch64 - - multile-arch-amd64 + - build-centos7 + - build-ubuntu16 + - build-ubuntu18 + - build-ubuntu20 + - build-cross-arm + - build-cross-aarch64 + - multiple-arch-armv7 + - multiple-arch-aarch64 + - multiple-arch-amd64 runs-on: ubuntu-20.04 steps: - run: echo 'All done'