Prevent triggering unnecessary genesis jobs when docs change 17/1417/1
authorFatih Degirmenci <fatih.degirmenci@ericsson.com>
Tue, 8 Sep 2015 11:22:51 +0000 (13:22 +0200)
committerFatih Degirmenci <fatih.degirmenci@ericsson.com>
Tue, 8 Sep 2015 11:40:55 +0000 (13:40 +0200)
Genesis verify and merge jobs run full builds when only doc updates come in.
This change adds non-doc paths to the list of excluded paths in gerrit trigger
configurations, essentially only running what needs to be run.

Please note that if a change touches both allowed and excluded paths, none of the
jobs will be triggered. Due to this doc and code changes should not be done in same
change.

JIRA: RELENG-19

Change-Id: I0388b8fb940aa7581e9afb56ffa04ca3a3763820
Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
jjb/genesis/genesis-docs.yml
jjb/genesis/genesis-foreman.yml
jjb/genesis/genesis-fuel.yml

index 6fead13..e95b97c 100644 (file)
                 branches:
                     - branch-compare-type: 'ANT'
                       branch-pattern: '**/master'
+                file-paths:
+                    - compare-type: ANT
+                      pattern: 'common/docs/**'
+                    - compare-type: ANT
+                      pattern: '**/docs/**'
+                forbidden-file-paths:
+                    - compare-type: ANT
+                      pattern: '**/build/**'
+                    - compare-type: ANT
+                      pattern: '**/ci/**'
+                    - compare-type: ANT
+                      pattern: '**/deploy/**'
+                    - compare-type: ANT
+                      pattern: '**/include/**'
+                    - compare-type: ANT
+                      pattern: '**/prototypes/**'
 
     builders:
         - shell:
                 branches:
                     - branch-compare-type: 'ANT'
                       branch-pattern: '**/master'
+                file-paths:
+                    - compare-type: ANT
+                      pattern: 'common/docs/**'
+                    - compare-type: ANT
+                      pattern: '**/docs/**'
+                forbidden-file-paths:
+                    - compare-type: ANT
+                      pattern: '**/build/**'
+                    - compare-type: ANT
+                      pattern: '**/ci/**'
+                    - compare-type: ANT
+                      pattern: '**/deploy/**'
+                    - compare-type: ANT
+                      pattern: '**/include/**'
+                    - compare-type: ANT
+                      pattern: '**/prototypes/**'
 
     builders:
         - shell:
index 42f0afa..e447880 100644 (file)
                     branch-pattern: '**/{branch}'
                 file-paths:
                   - compare-type: ANT
-                    pattern: 'common/**'
+                    pattern: 'common/ci/**'
                   - compare-type: ANT
-                    pattern: '{installer}/**'
+                    pattern: 'common/manifests/**'
+                  - compare-type: ANT
+                    pattern: 'common/puppet-opnfv/**'
+                  - compare-type: ANT
+                    pattern: 'common/tools/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/build/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/ci/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/include/**'
+                forbidden-file-paths:
+                  - compare-type: ANT
+                    pattern: 'common/docs/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/docs/**'
 
     builders:
         - 'foreman-build'
               - project-compare-type: 'ANT'
                 project-pattern: 'genesis'
                 branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**/{branch}'
+                  - branch-compare-type: 'ANT'
+                    branch-pattern: '**/{branch}'
                 file-paths:
                   - compare-type: ANT
-                    pattern: 'common/**'
+                    pattern: 'common/ci/**'
                   - compare-type: ANT
-                    pattern: '{installer}/**'
+                    pattern: 'common/manifests/**'
+                  - compare-type: ANT
+                    pattern: 'common/puppet-opnfv/**'
+                  - compare-type: ANT
+                    pattern: 'common/tools/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/build/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/ci/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/include/**'
+                forbidden-file-paths:
+                  - compare-type: ANT
+                    pattern: 'common/docs/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/docs/**'
 
     builders:
         - 'foreman-build'
index 3fbde0b..97a6088 100644 (file)
                     branch-pattern: '**/{branch}'
                 file-paths:
                   - compare-type: ANT
-                    pattern: 'common/**'
+                    pattern: 'common/ci/**'
                   - compare-type: ANT
-                    pattern: '{installer}/**'
+                    pattern: 'common/manifests/**'
+                  - compare-type: ANT
+                    pattern: 'common/puppet-opnfv/**'
+                  - compare-type: ANT
+                    pattern: 'common/tools/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/build/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/ci/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/deploy/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/include/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/prototypes/**'
+                forbidden-file-paths:
+                  - compare-type: ANT
+                    pattern: 'common/docs/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/docs/**'
 
     builders:
         - 'fuel-build'
               - project-compare-type: 'ANT'
                 project-pattern: 'genesis'
                 branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**/{branch}'
+                  - branch-compare-type: 'ANT'
+                    branch-pattern: '**/{branch}'
                 file-paths:
                   - compare-type: ANT
-                    pattern: 'common/**'
+                    pattern: 'common/ci/**'
                   - compare-type: ANT
-                    pattern: '{installer}/**'
+                    pattern: 'common/manifests/**'
+                  - compare-type: ANT
+                    pattern: 'common/puppet-opnfv/**'
+                  - compare-type: ANT
+                    pattern: 'common/tools/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/build/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/ci/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/deploy/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/include/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/prototypes/**'
+                forbidden-file-paths:
+                  - compare-type: ANT
+                    pattern: 'common/docs/**'
+                  - compare-type: ANT
+                    pattern: '{installer}/docs/**'
 
     builders:
         - 'fuel-build'
 
     project-type: freestyle
 
-    disabled: false
+    disabled: true
 
     node: ericsson-build