Huy Mai | 594a2ba | 2023-10-03 16:02:59 +0300 | [diff] [blame] | 1 | --- |
| 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 Mai | 737b49c | 2023-10-27 14:07:53 +0300 | [diff] [blame] | 30 | description: 'Builder job for {image_name} container image for Metal3' |
Huy Mai | 594a2ba | 2023-10-03 16:02:59 +0300 | [diff] [blame] | 31 | project-type: pipeline |
| 32 | defaults: global |
| 33 | disabled: False |
| 34 | concurrent: True |
| 35 | parameters: |
Huy Mai | cfb7cd1 | 2023-12-05 17:15:17 +0200 | [diff] [blame] | 36 | - choice: |
Huy Mai | 594a2ba | 2023-10-03 16:02:59 +0300 | [diff] [blame] | 37 | name: BUILD_CONTAINER_IMAGE_NAME |
Huy Mai | cfb7cd1 | 2023-12-05 17:15:17 +0200 | [diff] [blame] | 38 | choices: ['{image_name}'] |
Huy Mai | 594a2ba | 2023-10-03 16:02:59 +0300 | [diff] [blame] | 39 | description: 'Name of the container image to build' |
Huy Mai | cfb7cd1 | 2023-12-05 17:15:17 +0200 | [diff] [blame] | 40 | - 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 Mai | 737b49c | 2023-10-27 14:07:53 +0300 | [diff] [blame] | 48 | - string: |
Huy Mai | cfb7cd1 | 2023-12-05 17:15:17 +0200 | [diff] [blame] | 49 | name: BUILD_CONTAINER_IMAGE_GIT_REFERENCE |
Huy Mai | 737b49c | 2023-10-27 14:07:53 +0300 | [diff] [blame] | 50 | default: 'main' |
Huy Mai | cfb7cd1 | 2023-12-05 17:15:17 +0200 | [diff] [blame] | 51 | description: 'Target git reference (branch or tag) of the build' |
Huy Mai | 594a2ba | 2023-10-03 16:02:59 +0300 | [diff] [blame] | 52 | |
| 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 Mai | b15411d | 2023-10-20 11:19:16 +0300 | [diff] [blame] | 59 | - github: |
| 60 | url: '{repo}' |
Huy Mai | 594a2ba | 2023-10-03 16:02:59 +0300 | [diff] [blame] | 61 | |
Huy Mai | 737b49c | 2023-10-27 14:07:53 +0300 | [diff] [blame] | 62 | # No triggers. This job will be triggered by github actions |
Huy Mai | 594a2ba | 2023-10-03 16:02:59 +0300 | [diff] [blame] | 63 | 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 |