Added jjb-files for CI
[ealt-edge.git] / ci / daily build / ealt-edge-ci-jobs .yaml
1 ---
2 - project:
3
4     name: ealt-edge-ci
5
6     installer: 'ealt-edge'
7
8     project: 'ealt-edge'
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       - k8s-virtual:
23           slave-label: mec-k8s-virtual
24           <<: *master
25           auto-trigger-name: 'ealt-edge-deploy-{pod}-daily-{stream}'
26
27
28     jobs:
29       - 'ealt-edge-deploy-{pod}-daily-{stream}'
30
31 ########################
32 # job templates
33 ########################
34 - job-template:
35     name: 'ealt-edge-deploy-{pod}-daily-{stream}'
36
37     disabled: '{obj:disabled}'
38
39     concurrent: true
40
41     properties:
42       - logrotate-default
43       - throttle:
44           enabled: true
45           max-per-node: 1
46           option: 'project'
47       - build-blocker:
48           use-build-blocker: true
49           blocking-jobs:
50             - 'ealt-edge-deploy-{pod}-daily-.*?'
51             - 'ealt-edge-verify-deploy-.*?'
52           blocking-level: 'NODE'
53
54
55     wrappers:
56       - build-name:
57           name: '$BUILD_NUMBER'
58       - timeout:
59           timeout: 360
60           abort: true
61       - fix-workspace-permissions
62
63     parameters:
64       - project-parameter:
65           project: '{project}'
66           branch: '{branch}'
67       - ealt-edge-ci-parameter:
68           installer: '{installer}'
69           gs-pathname: '{gs-pathname}'
70           ppa-pathname: '{ppa-pathname}'
71       - '{slave-label}-defaults'
72       - '{installer}-defaults'
73
74     triggers:
75       - '{auto-trigger-name}'
76
77     scm:
78       - git-scm
79
80     builders:
81       - description-setter:
82           description: "POD: $NODE_NAME"
83       - conditional-step:
84           condition-kind: regex-match
85           regex: "k8s-.*"
86           label: '{pod}'
87           steps:
88             - shell:
89                 !include-raw-escape: ./ealt-edge-clean.sh
90             - shell:
91                 !include-raw-escape: ./ealt-edge-deploy.sh
92
93 ########################
94 # parameter macros
95 ########################
96 - parameter:
97     name: ealt-edge-ci-parameter
98     parameters:
99       - string:
100           name: GS_URL
101           default: '$GS_BASE{gs-pathname}'
102           description: "URL to Google Storage."
103       - string:
104           name: PPA_REPO
105           default: ""
106       - string:
107           name: PPA_CACHE
108           default: "$WORKSPACE/work/repo/"
109       - string:
110           name: LOG_DIRECTORY
111           default: $WORKSPACE/log_output
112           description: ""
113
114
115 ########################
116 # trigger macros
117 ########################
118
119
120 # -----------------
121 # virtual-master
122 # -----------------
123
124 - trigger:
125     name: 'ealt-edge-deploy-k8s-virtual-daily-master'
126     triggers:
127       - timed: '0 21 * * *'