Merge "Changing builder node"
[ci-management.git] / jjb / global-templates-c.yaml
1 ---
2 ####################
3 # COMMON FUNCTIONS #
4 ####################
5
6 - c_job_common: &c_job_common
7     name: c-job-common
8
9     ######################
10     # Default parameters #
11     ######################
12
13     branch: master
14     submodule-recursive: true
15     submodule-disable: false
16     submodule-timeout: 10
17
18     #####################
19     # Job Configuration #
20     #####################
21
22     project-type: freestyle
23     node: '{build-node}'
24     disabled: false
25
26     properties:
27       - infra-properties:
28           build-days-to-keep: '{build-days-to-keep}'
29
30     parameters:
31       - lf-infra-parameters:
32           project: '{project}'
33           branch: '{branch}'
34           stream: '{stream}'
35
36     scm:
37       - lf-infra-gerrit-scm:
38           jenkins-ssh-credential: '{jenkins-ssh-credential}'
39           git-url: '$GIT_URL/$PROJECT'
40           refspec: '$GERRIT_REFSPEC'
41           branch: '$GERRIT_BRANCH'
42           submodule-recursive: '{submodule-recursive}'
43           submodule-disable: '{submodule-disable}'
44           submodule-timeout: '{submodule-timeout}'
45           choosing-strategy: default
46
47     wrappers:
48       - lf-infra-wrappers:
49           build-timeout: '{build-timeout}'
50           jenkins-ssh-credential: '{jenkins-ssh-credential}'
51
52     publishers:
53       - lf-infra-publish
54
55 #################
56 # JOB TEMPLATES #
57 #################
58
59 - job-template:
60     #
61     # job template for build C/C++ project
62     #
63     # Required Variables:
64     #   script:         build script to execute
65     #
66     name: '{project-name}-{stream}-verify-c'
67     id: gerrit-verify-c
68     <<: *c_job_common
69
70     triggers:
71       - gerrit-trigger-patch-submitted:
72           server: '{server-name}'
73           project: '{project}'
74           branch: '{branch}'
75           files: '**'
76
77     builders:
78       - lf-infra-pre-build
79       - shell: '{script}'
80
81 - job-template:
82     # Job template for building & pushing docker images
83     #
84     # The purpose of this job template is to run:
85     #  1. login to the docker registry
86     #  2. run a specified shell builder
87     #
88     name: '{project-name}-{stream}-docker-c-shell-daily'
89     id: gerrit-docker-c-shell-daily
90     <<: *c_job_common
91     node: 'ubuntu1604-docker-8c-8g'
92
93     triggers:
94       # 12 AM UTC
95       - timed: '@daily'
96       - gerrit-trigger-release-manually:
97           server: '{server-name}'
98           project: '{project}'
99           branch: '{branch}'
100
101     builders:
102       - lf-infra-pre-build
103       - provide-maven-settings:
104           global-settings-file: 'global-settings'
105           settings-file: '{mvn-settings}'
106       - docker-login
107       - shell: '{script}'