Add ironic-image release branches in relevant tests
[infra/cicd.git] / jjb / metal3 / job_ironic_image_build_test.yml
1 #
2 # ============LICENSE_START=======================================================
3 #  Copyright (C) 2019 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 # Description:
21 # ============
22 # This file contains job template definition for metal3-io/ironic-image PR build test.
23 # This job can be triggered manually or through a Github pull request. It creates a
24 # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository.
25
26 - job-template:
27     id: ironic_image_build_tests
28     name: '{job_prefix}_{proj}_ironic_image_build_test'
29     description: "Ironic image build test for {org}/{repo} pull requests."
30     project-type: pipeline
31     defaults: global
32     disabled: False
33     concurrent: True
34     parameters:
35     - string:
36         name: PROJECT_REPO_ORG
37         default: '{org}'
38         description: 'Project github repo org name'
39     - string:
40         name: PROJECT_REPO_NAME
41         default: '{repo}'
42         description: 'Project github repo name'
43     - string:
44         name: ghprbActualCommit
45         default: 'main'
46         description: 'CI Repo branch for triggering manual build'
47     - string:
48         name: ghprbAuthorRepoGitUrl
49         default: 'https://github.com/{org}/{repo}.git'
50         description: 'CI Repo URL for triggering manual build'
51     - string:
52         name: ghprbTargetBranch
53         default: 'main'
54         description: 'Target branch of the PR'
55     - string:
56         name: PATCHFILE_CONTENT
57         default: ''
58         description: 'This parameter is used to inject ironic-image patchfile content during replay.'
59
60     properties:
61     - build-discarder:
62         days-to-keep: 30
63         num-to-keep: 300
64         artifact-days-to-keep: -1
65         artifact-num-to-keep: -1
66     - github:
67         url: https://github.com/{org}/{repo}
68
69     triggers:
70     - github-pull-request:
71         admin-list:
72         - '{ci_github_admin_user}'
73         org-list: "{ci_github_whitelist_org}"
74         auth-id: "{ci_ghprb_auth_id}"
75         trigger-phrase: '.*?/test-ironic-image-build.*?'
76         cron: 'H/5 * * * *'
77         only-trigger-phrase: True
78         github-hooks: True
79         permit-all: False
80         auto-close-on-fail: False
81         allow-whitelist-orgs-as-admins: True
82         white-list-target-branches:
83         - 'main'
84         - 'release-23.1'
85         - 'release-24.0'
86         - 'release-24.1'
87         status-context: "test-ironic-image-build"
88         success-status: "Passed"
89         failure-status: "Failed"
90         error-status: "Error"
91         cancel-builds-on-update: True
92     pipeline-scm:
93       scm:
94       - git:
95           url: "{ci_github_repo}"
96           credentials-id: "{ci_github_jenkins_credentials_id}"
97           branches:
98           - '{branch|main}'
99           name: 'origin'
100           refspec: '+refs/heads/*:refs/remotes/origin/*'
101           wipe-workspace: True
102           honor-refspec: True
103           shallow-clone: False
104       script-path: "jenkins/jobs/ironic_image_build_test.pipeline"
105       lightweight-checkout: False