[gjs: 1/3] CI: Conserve resources by running cheap jobs first



commit 6b72519ba4ffaaa3b1a0e9cf74563c551ecdf24a
Author: Philip Chimento <philip chimento gmail com>
Date:   Sun Feb 4 22:53:51 2018 -0800

    CI: Conserve resources by running cheap jobs first
    
    This splits the pipeline into a few more stages. Cheap jobs such as
    linting and static code checking are run in the "static_analysis" phase,
    then the normal build/test jobs are run, then expensive tests such as
    code coverage are run in the "thorough_tests" phase.

 .gitlab-ci.yml | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0df943b0..c8d89655 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,12 +2,14 @@ services:
   - docker
 
 stages:
+- static_analysis
 - build
+- thorough_tests
 - failure
 - deploy
 
 .build: &build
-  stage: build
+  when: on_success
   artifacts:
     name: log
     when: always
@@ -38,6 +40,7 @@ stages:
 
 ubuntu_gcc:
   <<: *build
+  stage: build
   image: claudioandre/spidermonkey:ubuntu.dev.gcc
   variables:
     BASE: debian
@@ -50,6 +53,7 @@ ubuntu_gcc:
 
 ubuntu_clang:
   <<: *build
+  stage: build
   image: claudioandre/spidermonkey:ubuntu.dev.gcc
   variables:
     BASE: debian
@@ -62,6 +66,7 @@ ubuntu_clang:
 
 fedora_gcc:
   <<: *build
+  stage: build
   image: claudioandre/spidermonkey:fedora.dev.gcc
   variables:
     BASE: fedora
@@ -73,6 +78,7 @@ fedora_gcc:
 # Temporarily disabled: "unknown arguments -mcet and -fcf-protection"
 # fedora_clang:
 #   <<: *build
+#   stage: build
 #   image: claudioandre/spidermonkey:fedora.dev.gcc
 #   variables:
 #     BASE: fedora
@@ -83,6 +89,7 @@ fedora_gcc:
 
 coverage:
   <<: *build
+  stage: thorough_tests
   image: claudioandre/spidermonkey:fedora.27.gcc
   variables:
     BASE: fedora
@@ -93,6 +100,7 @@ coverage:
 
 cppcheck:
   <<: *build
+  stage: static_analysis
   image: claudioandre/spidermonkey:fedora.dev.gcc
   variables:
     BASE: fedora


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]