Create common job template for post merge build jobs
[infra/cicd.git] / jjb / eiffel / global-eiffel-container-build-merge.yaml
1 ---
2 # ============LICENSE_START=======================================================
3 #  Copyright (C) 2020 Nordix Foundation.
4 # ================================================================================
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
8 #
9 #      http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16 #
17 # SPDX-License-Identifier: Apache-2.0
18 # ============LICENSE_END=========================================================
19
20 - job-template:
21     name: '{project-name}-build-merge-{distro}-{stream}'
22
23     node: 'eiffel-build-{distro}'
24
25     disabled: false
26
27     concurrent: false
28
29     properties:
30       - logrotate
31       - github:
32           url: '$GIT_BASE_HTTPS/{project-git-repo}'
33
34     parameters:
35       - project-parameters:
36           project: '{project}'
37           branch: '{branch}'
38       - string:
39           name: GIT_BASE_HTTPS
40           default: https://github.com/eiffel-community
41           description: HTTPS URL of Project Repo on GitHub to clone repo.
42       - string:
43           name: GIT_BASE_SSH
44           default: git@github.com:eiffel-community
45           description: SSH URL of Project Repo on GitHub to clone repo.
46       - string:
47           name: IMAGE_DOCKERFILE
48           default: '{image-dockerfile}'
49           description: Dockerfile to use for building the container image
50       - string:
51           name: IMAGE_NAME
52           default: '{image-name}'
53           description: Name of the container image
54       - string:
55           name: IMAGE_TAG
56           default: '{image-tag}'
57           description: Tag to apply to the container image
58       - choice:
59           name: HARBOR_EIFFEL_PROJECT
60           choices:
61             - eiffel
62             - eiffel-playground
63           description: Project to push container images to. Default is eiffel. eiffel-playground is for development purposes.
64       - choice:
65           name: PODMAN_LOG_LEVEL
66           choices:
67             - error
68             - debug
69             - info
70             - warn
71             - fatal
72             - panic
73           description: Podman log level to use. Default is error.
74       - string:
75           name: NORDIX_REGISTRY
76           default: 'registry.nordix.org'
77           description: Nordix container image registry.
78
79     scm:
80       - git:
81           url: '$GIT_BASE_HTTPS/{project-git-repo}.git'
82           branches:
83             - '*/{branch}'
84           refspec: ''
85           timeout: 15
86           per-build-tag: false
87           skip-tag: true
88           shallow-clone: false
89           use-author: false
90           ignore-notify: false
91           wipe-workspace: true
92           prune: false
93           clean:
94             after: false
95             before: false
96           choosing-strategy: 'default'
97           basedir: '$WORKSPACE'
98
99     triggers:
100       - github
101
102     wrappers:
103       - build-timeout:
104           timeout: 10
105       - nordixinfra-harbor-creds-wrapper
106       - mask-passwords
107       - openstack:
108           single-use: True
109
110     builders:
111       - '{project-build-macro}'
112
113 # vim: set ts=2 sw=2 expandtab: