10f8d65311b83d5a248b03a3dbeb22bc24ebb634
[releng.git] / armband-project-jobs.yml
1 ###################################################
2 # All the jobs except verify have been removed!
3 # They will only be enabled on request by projects!
4 ###################################################
5 - project:
6     name: armband
7
8     project: '{name}'
9
10     installer: 'fuel'
11
12     jobs:
13         - 'armband-verify-{stream}'
14         - 'armband-{installer}-build-daily-{stream}'
15
16     stream:
17         - master:
18             branch: '{stream}'
19             gs-pathname: ''
20         - colorado:
21             branch: 'stable/{stream}'
22             gs-pathname: '/{stream}'
23
24 - job-template:
25     name: 'armband-verify-{stream}'
26
27     parameters:
28         - project-parameter:
29             project: '{project}'
30         - gerrit-parameter:
31             branch: '{branch}'
32         - 'opnfv-build-ubuntu-defaults'
33
34     scm:
35         - gerrit-trigger-scm:
36             credentials-id: '{ssh-credentials}'
37             refspec: '$GERRIT_REFSPEC'
38             choosing-strategy: 'gerrit'
39
40     triggers:
41         - gerrit:
42             trigger-on:
43                 - patchset-created-event:
44                     exclude-drafts: 'false'
45                     exclude-trivial-rebase: 'false'
46                     exclude-no-code-change: 'false'
47                 - draft-published-event
48                 - comment-added-contains-event:
49                     comment-contains-value: 'recheck'
50                 - comment-added-contains-event:
51                     comment-contains-value: 'reverify'
52             projects:
53               - project-compare-type: 'ANT'
54                 project-pattern: '{project}'
55                 branches:
56                   - branch-compare-type: 'ANT'
57                     branch-pattern: '**/{branch}'
58                 forbidden-file-paths:
59                   - compare-type: ANT
60                     pattern: 'docs/**|.gitignore'
61
62     builders:
63         - shell: |
64             echo "Nothing to verify!"
65
66 - job-template:
67     name: 'armband-{installer}-build-daily-{stream}'
68
69     concurrent: false
70
71     properties:
72         - throttle:
73             enabled: true
74             max-total: 1
75             max-per-node: 1
76             option: 'project'
77
78     parameters:
79         - project-parameter:
80             project: '{project}'
81         - 'opnfv-build-arm-defaults'
82         - '{installer}-defaults'
83         - armband-project-parameter:
84             gs-pathname: '{gs-pathname}'
85
86     scm:
87         - git-scm:
88             credentials-id: '{ssh-credentials}'
89             refspec: ''
90             branch: '{branch}'
91
92     triggers:
93         - pollscm:
94             cron: '0 H/4 * * *'
95
96     wrappers:
97         - timeout:
98             timeout: 360
99             fail: true
100
101     builders:
102         - shell:
103             !include-raw-escape: ./build.sh
104         - shell:
105             !include-raw-escape: ./upload-artifacts.sh
106
107     publishers:
108         - email:
109             recipients: armband@enea.com
110
111 ########################
112 # parameter macros
113 ########################
114 - parameter:
115     name: armband-project-parameter
116     parameters:
117         - string:
118             name: BUILD_DIRECTORY
119             default: $WORKSPACE/build_output
120             description: "Directory where the build artifact will be located upon the completion of the build."
121         - string:
122             name: CACHE_DIRECTORY
123             default: $HOME/opnfv/cache/$INSTALLER_TYPE
124             description: "Directory where the cache to be used during the build is located."
125         - string:
126             name: GS_URL
127             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
128             description: "URL to Google Storage."
129         - choice:
130             name: FORCE_BUILD
131             choices:
132                 - 'false'
133                 - 'true'
134             description: 'Force build even if there are no changes in the armband repo. Default false'