blob: 9ef14f4f18fff9a285cef2f099b3ed400befa92e [file] [log] [blame]
Huy Mai594a2ba2023-10-03 16:02:59 +03001---
2#
3# ============LICENSE_START=======================================================
4# Copyright (C) 2023 Nordix Foundation.
5# ================================================================================
6# Licensed under the Apache License, Version 2.0 (the "License");
7# you may not use this file except in compliance with the License.
8# You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing, software
13# distributed under the License is distributed on an "AS IS" BASIS,
14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15# See the License for the specific language governing permissions and
16# limitations under the License.
17#
18# SPDX-License-Identifier: Apache-2.0
19# ============LICENSE_END=========================================================
20
21# Description:
22# ============
23# This file contains a job template for building Metal3 CI container images.
24# This job will be triggered automatically with github merge action. It creates a
25# pipeline job. The pipeline scripts are maintained in Nordix/metal3-dev-tools repository.
26
27- job-template:
28 id: container_image_building
29 name: '{job_prefix}_{image_name}_container_image_building'
Huy Mai737b49c2023-10-27 14:07:53 +030030 description: 'Builder job for {image_name} container image for Metal3'
Huy Mai594a2ba2023-10-03 16:02:59 +030031 project-type: pipeline
32 defaults: global
33 disabled: False
34 concurrent: True
35 parameters:
Huy Maicfb7cd12023-12-05 17:15:17 +020036 - choice:
Huy Mai594a2ba2023-10-03 16:02:59 +030037 name: BUILD_CONTAINER_IMAGE_NAME
Huy Maicfb7cd12023-12-05 17:15:17 +020038 choices: ['{image_name}']
Huy Mai594a2ba2023-10-03 16:02:59 +030039 description: 'Name of the container image to build'
Huy Maicfb7cd12023-12-05 17:15:17 +020040 - choice:
41 name: BUILD_CONTAINER_IMAGE_REPO
42 choices: ['{repo}']
43 description: 'URL of the git repo where the container image to build exists'
44 - choice:
45 name: BUILD_CONTAINER_IMAGE_DOCKERFILE_LOCATION
46 choices: ['{dockerfile_location}']
47 description: 'Relative location to the repo root of the Dockerfile used for building'
Huy Mai737b49c2023-10-27 14:07:53 +030048 - string:
Huy Maicfb7cd12023-12-05 17:15:17 +020049 name: BUILD_CONTAINER_IMAGE_GIT_REFERENCE
Huy Mai737b49c2023-10-27 14:07:53 +030050 default: 'main'
Huy Maicfb7cd12023-12-05 17:15:17 +020051 description: 'Target git reference (branch or tag) of the build'
Huy Mai594a2ba2023-10-03 16:02:59 +030052
53 properties:
54 - build-discarder:
55 days-to-keep: 30
56 num-to-keep: 300
57 artifact-days-to-keep: -1
58 artifact-num-to-keep: -1
Huy Maib15411d2023-10-20 11:19:16 +030059 - github:
60 url: '{repo}'
Huy Mai594a2ba2023-10-03 16:02:59 +030061
Huy Mai737b49c2023-10-27 14:07:53 +030062 # No triggers. This job will be triggered by github actions
Huy Mai594a2ba2023-10-03 16:02:59 +030063 pipeline-scm:
64 scm:
65 - git:
66 url: "{ci_github_repo}"
67 credentials-id: "{ci_github_jenkins_credentials_id}"
68 branches:
69 - 'main'
70 name: 'origin'
71 refspec: '+refs/heads/*:refs/remotes/origin/*'
72 wipe-workspace: True
73 honor-refspec: True
74 shallow-clone: False
75 script-path: 'ci/jobs/{id}.pipeline'
76 lightweight-checkout: False