AIO and MUNO mode upgrade for EG 1.5.0 version
[eliot.git] / jjb / eliot / eliot-ci-jobs.yaml
1 ---
2 - project:
3
4     name: eliot-ci
5
6     installer: 'eliot'
7
8     project: 'eliot'
9
10     master: &master
11       stream: master
12       branch: '{stream}'
13       gs-pathname: ''
14       ppa-pathname: '/{stream}'
15       disabled: false
16     # -------------------------------
17     # POD, INSTALLER, AND BRANCH MAPPING
18     # -------------------------------
19     #        CI PODs
20     # -------------------------------
21     pod:
22       - kubeedge-virtual:
23           slave-label: eliot-kubeedge-virtual
24           <<: *master
25           auto-trigger-name: 'eliot-deploy-{pod}-daily-{stream}'
26       - k8s-virtual:
27           slave-label: eliot-k8s-virtual
28           <<: *master
29           auto-trigger-name: 'eliot-deploy-{pod}-daily-{stream}'
30       - k8s-centos-virtual:
31           slave-label: eliot-k8s-centos-virtual
32           <<: *master
33           auto-trigger-name: 'eliot-deploy-{pod}-daily-{stream}'
34
35
36     jobs:
37       - 'eliot-deploy-{pod}-daily-{stream}'
38
39 ########################
40 # job templates
41 ########################
42 - job-template:
43     name: 'eliot-deploy-{pod}-daily-{stream}'
44
45     disabled: '{obj:disabled}'
46
47     concurrent: true
48
49     properties:
50       - logrotate-default
51       - throttle:
52           enabled: true
53           max-per-node: 1
54           option: 'project'
55       - build-blocker:
56           use-build-blocker: true
57           blocking-jobs:
58             - 'eliot-deploy-{pod}-daily-.*?'
59             - 'eliot-verify-deploy-.*?'
60           blocking-level: 'NODE'
61
62
63     wrappers:
64       - build-name:
65           name: '$BUILD_NUMBER'
66       - timeout:
67           timeout: 360
68           abort: true
69       - fix-workspace-permissions
70
71     parameters:
72       - project-parameter:
73           project: '{project}'
74           branch: '{branch}'
75       - eliot-ci-parameter:
76           installer: '{installer}'
77           gs-pathname: '{gs-pathname}'
78           ppa-pathname: '{ppa-pathname}'
79       - '{slave-label}-defaults'
80       - '{installer}-defaults'
81
82     triggers:
83       - '{auto-trigger-name}'
84
85     scm:
86       - git-scm
87
88     builders:
89       - description-setter:
90           description: "POD: $NODE_NAME"
91       - conditional-step:
92           condition-kind: regex-match
93           regex: "k8s-.*"
94           label: '{pod}'
95           steps:
96             - shell:
97                 !include-raw-escape: ./eliot-clean.sh
98             - shell:
99                 !include-raw-escape: ./eliot-deploy.sh
100       - conditional-step:
101           condition-kind: regex-match
102           regex: "kubeedge-.*"
103           label: '{pod}'
104           steps:
105             - shell:
106                 !include-raw-escape: ./eliot-kubeedge-clean.sh
107             - shell:
108                 !include-raw-escape: ./eliot-kubeedge-deploy.sh
109
110 ########################
111 # parameter macros
112 ########################
113 - parameter:
114     name: eliot-ci-parameter
115     parameters:
116       - string:
117           name: GS_URL
118           default: '$GS_BASE{gs-pathname}'
119           description: "URL to Google Storage."
120       - string:
121           name: PPA_REPO
122           default: ""
123       - string:
124           name: PPA_CACHE
125           default: "$WORKSPACE/work/repo/"
126       - string:
127           name: LOG_DIRECTORY
128           default: $WORKSPACE/log_output
129           description: ""
130
131
132 ########################
133 # trigger macros
134 ########################
135
136
137 # -----------------
138 # virtual-master
139 # -----------------
140
141 - trigger:
142     name: 'eliot-deploy-kubeedge-virtual-daily-master'
143     triggers:
144       - timed: '0 20 * * *'
145
146 - trigger:
147     name: 'eliot-deploy-k8s-virtual-daily-master'
148     triggers:
149       - timed: '0 21 * * *'
150
151 - trigger:
152     name: 'eliot-deploy-k8s-centos-virtual-daily-master'
153     triggers:
154       - timed: '0 23 * * *'