From b55d6952295be35c6692755b0f1a626bce07fc95 Mon Sep 17 00:00:00 2001
From: librelois <elois@ifee.fr>
Date: Fri, 24 Apr 2020 00:28:07 +0200
Subject: [PATCH] [ci] rework pipeline rules for MR

- set integration stage to manual on feature branch
- allow failure for package stage on feature branch
---
 .gitlab-ci.yml | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a410fd881..e0ad28323 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,14 +1,12 @@
 stages:
   - test
-  - integration
   - package
+  - integration
   - prerelease
   - release
 
 workflow:
   rules:
-    - if: $CI_MERGE_REQUEST_ID
-      when: never
     - if: $CI_COMMIT_REF_NAME =~ /^wip/
       when: never
     - changes:
@@ -73,6 +71,8 @@ test:
   rules:
     - if: $CI_COMMIT_TAG
       when: never
+    - if: $CI_MERGE_REQUEST_ID
+      when: manual
     - when: on_success
   stage: test
   script:
@@ -88,12 +88,16 @@ test:
       - coverage.tar.gz
     expire_in: 4h
 
-sync_g1:
-  <<: *nvm_env
+.integration_rules: &integration_rules
   rules:
     - if: $CI_COMMIT_TAG
       when: never
-    - when: on_success
+    - if: $CI_MERGE_REQUEST_ID
+    - when: manual
+
+sync_g1:
+  <<: *nvm_env
+  <<: *integration_rules
   stage: integration
   script:
     - yarn
@@ -101,10 +105,7 @@ sync_g1:
 
 sync_gtest:
   <<: *nvm_env
-  rules:
-    - if: $CI_COMMIT_TAG
-      when: never
-    - when: on_success
+  <<: *integration_rules
   stage: integration
   script:
     - yarn
@@ -112,7 +113,6 @@ sync_gtest:
 
 .build_releases: &build_releases
   stage: package
-  allow_failure: false
   image: duniter/release-builder:v1.4.0
   cache: {}
   tags:
@@ -123,6 +123,7 @@ sync_gtest:
 
 releases:test:
   <<: *build_releases
+  allow_failure: true
   rules:
     - if: $CI_COMMIT_TAG
       when: never
@@ -162,6 +163,7 @@ releases:x64:
 
 package:test:docker-test-image:
   extends: .docker-build-app-image
+  allow_failure: true
   rules:
     - if: $CI_COMMIT_TAG
       when: never
-- 
GitLab