blob: 7da8b048639961f41e01459ff60eb56c5096e484 [file] [log] [blame]
Carmelo Cascone81631ed2020-08-18 19:33:25 -07001---
Emanuele Gallone3b0861c2021-11-09 16:53:57 +01002# Run pull request verify job for each fabric profile and architecture
Carmelo Cascone81631ed2020-08-18 19:33:25 -07003
4- job-template:
Emanuele Gallone3b0861c2021-11-09 16:53:57 +01005 id: 'pr-verify-{profile}-{arch}'
6 name: pr-verify-{profile}-{arch}
Carmelo Cascone81631ed2020-08-18 19:33:25 -07007
8 description: |
9 Created by {id} job-template from ci-management/jjb/templates/fabric-tna-jobs.yaml<br/>
10
11 properties:
Carmelo Cascone010ab112021-01-13 00:37:06 -080012 # Visibility restricted to because logs contain output from
Carmelo Cascone81631ed2020-08-18 19:33:25 -070013 # Barefoot toolchain (under NDA).
Carmelo Cascone010ab112021-01-13 00:37:06 -080014 - onf-infra-pronto-private:
Carmelo Cascone81631ed2020-08-18 19:33:25 -070015 - onf-infra-properties:
Carmelo Casconefe5ef682020-10-01 10:24:01 -070016 build-days-to-keep: '15'
Carmelo Cascone81631ed2020-08-18 19:33:25 -070017 artifact-num-to-keep: '-1'
18 - github:
19 url: 'https://github.com/{github-organization}/{project}'
20
Emanuele Gallone3b0861c2021-11-09 16:53:57 +010021 project-type: pipeline
Carmelo Cascone81631ed2020-08-18 19:33:25 -070022 concurrent: true
23
24 parameters:
Emanuele Gallone3b0861c2021-11-09 16:53:57 +010025 - string:
26 name: buildNode
27 default: "{medium-build-node}"
28 description: "Name of the Jenkins executor node to run the job on."
29 - string:
30 name: sha1
31 default: "origin/{stream}"
32 description: "SHA string of the pull request commit to build. Populated by GitHUb Pull Request Builder."
33 - string:
34 name: profile
35 default: "{profile}"
36 description: "Profile to build and test."
37 - string:
38 name: architecture
39 default: "{arch}"
40 description: "P4 architecture to use (v1model or tna)."
Carmelo Cascone81631ed2020-08-18 19:33:25 -070041
Emanuele Gallone3b0861c2021-11-09 16:53:57 +010042 # Run pipeline that is checked-in in the same PR we want to verify.
43 pipeline-scm:
44 script-path: ".jenkins/Jenkinsfile"
45 scm:
Carmelo Cascone81631ed2020-08-18 19:33:25 -070046 - onf-infra-github-ssh-scm:
47 github-organization: '{github-organization}'
48 project: '{project}'
49 branch: "$sha1"
50 ssh-credential: "{github-onf-bot-ssh-credential}"
51
52 triggers:
53 - onf-infra-github-pr-trigger:
54 github_pr_org_list: '{obj:github_pr_org_list}'
55 github_pr_auth_id: '{github_pr_auth_id}'
Emanuele Gallone3b0861c2021-11-09 16:53:57 +010056 status_context: 'pr-verify-{profile}-{arch}'
Carmelo Cascone81631ed2020-08-18 19:33:25 -070057
58 wrappers:
59 - lf-infra-wrappers:
Carmelo Casconec3fcb712021-07-07 16:36:16 +020060 build-timeout: '80'
Carmelo Cascone81631ed2020-08-18 19:33:25 -070061 jenkins-ssh-credential: '{github-onf-bot-ssh-credential}'
62 - credentials-binding:
63 - username-password-separated:
64 credential-id: docker-artifact-push-credentials
65 username: DOCKERHUB_USERNAME
66 password: DOCKERHUB_PASSWORD
Carmelo Cascone2ce1d772020-09-02 19:37:32 -070067 - credentials-binding:
68 - username-password-separated:
69 credential-id: aether-internal-registry
70 username: AETHER_REGISTRY_USERNAME
71 password: AETHER_REGISTRY_PASSWORD
Yi Tseng9c7b1142021-04-19 10:33:11 -070072 - credentials-binding:
Yi Tseng2526a502021-06-07 02:36:50 -070073 - username-password-separated:
74 credential-id: onf-internal-registry
75 username: ONF_REGISTRY_USERNAME
76 password: ONF_REGISTRY_PASSWORD
77 - credentials-binding:
Yi Tseng9c7b1142021-04-19 10:33:11 -070078 - text:
79 credential-id: codecov-fabric-tna
80 variable: CODECOV_TOKEN
Carmelo Cascone81631ed2020-08-18 19:33:25 -070081
Carmelo Cascone81631ed2020-08-18 19:33:25 -070082- job-template:
Emanuele Gallone3b0861c2021-11-09 16:53:57 +010083 id: 'postmerge-{profile}-{arch}'
84 name: 'postmerge-{profile}-{arch}'
Carmelo Cascone81631ed2020-08-18 19:33:25 -070085
86 description: |
87 Created by {id} job-template from ci-management/jjb/templates/fabric-tna-jobs.yaml<br/>
88
89 properties:
Carmelo Cascone010ab112021-01-13 00:37:06 -080090 # Visibility restricted to because logs contain output from
Carmelo Cascone81631ed2020-08-18 19:33:25 -070091 # Barefoot toolchain (under NDA).
Carmelo Cascone010ab112021-01-13 00:37:06 -080092 - onf-infra-pronto-private:
Carmelo Cascone81631ed2020-08-18 19:33:25 -070093 - onf-infra-properties:
94 build-days-to-keep: '{build-days-to-keep}'
95 artifact-num-to-keep: '-1'
96 - github:
97 url: 'https://github.com/{github-organization}/{project}'
98
Emanuele Gallone3b0861c2021-11-09 16:53:57 +010099 project-type: pipeline
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700100 concurrent: true
101
102 parameters:
103 - onf-infra-github-pr-merge-parameters:
104 repo-name: '{project}'
105 repo-url: 'git@github.com:{github-organization}/{project}.git'
106 branch: '{stream}'
107 sha1: '{stream}'
Emanuele Gallone3b0861c2021-11-09 16:53:57 +0100108 - string:
109 name: buildNode
110 default: "{medium-build-node}"
111 description: "Name of the Jenkins executor node to run the job on."
112 - string:
113 name: profile
114 default: "{profile}"
115 description: "Profile to be built and tested."
116 - string:
117 name: architecture
118 default: "{arch}"
119 description: "P4 architecture to use (v1model or tna)."
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700120
Emanuele Gallone3b0861c2021-11-09 16:53:57 +0100121 pipeline-scm:
122 script-path: ".jenkins/Jenkinsfile"
123 scm:
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700124 - onf-infra-github-ssh-scm:
125 github-organization: '{github-organization}'
126 project: '{project}'
127 branch: "$commitHash"
128 ssh-credential: "{github-onf-bot-ssh-credential}"
129
130 triggers:
131 - onf-infra-github-pr-trigger-merge:
132 project: '{project}'
Carmelo Cascone9a4cbfa2020-08-19 23:11:50 -0700133 - timed: "@midnight"
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700134
135 wrappers:
136 - lf-infra-wrappers:
Carmelo Casconec3fcb712021-07-07 16:36:16 +0200137 build-timeout: '80'
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700138 jenkins-ssh-credential: '{github-onf-bot-ssh-credential}'
139 - credentials-binding:
140 - username-password-separated:
141 credential-id: docker-artifact-push-credentials
142 username: DOCKERHUB_USERNAME
143 password: DOCKERHUB_PASSWORD
Carmelo Cascone2ce1d772020-09-02 19:37:32 -0700144 - credentials-binding:
145 - username-password-separated:
146 credential-id: aether-internal-registry
147 username: AETHER_REGISTRY_USERNAME
148 password: AETHER_REGISTRY_PASSWORD
Yi Tseng17e77b72021-04-23 02:02:25 -0700149 - credentials-binding:
Yi Tseng2526a502021-06-07 02:36:50 -0700150 - username-password-separated:
151 credential-id: onf-internal-registry
152 username: ONF_REGISTRY_USERNAME
153 password: ONF_REGISTRY_PASSWORD
154 - credentials-binding:
Yi Tseng17e77b72021-04-23 02:02:25 -0700155 - text:
156 credential-id: codecov-fabric-tna
157 variable: CODECOV_TOKEN
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700158
Darius Grassi8b7a5e62021-07-30 15:35:04 -0700159- job-template:
160 id: 'fabric-tna-linerate-tests'
161 name: 'fabric-tna-linerate-tests'
162
163 description: |
164 Created by {id} job-template from ci-management/jjb/fabric-tna-jobs.yaml, script ../pipeline/fabric-tna.groovy<br/>
165
166 # Cron syntax; trigger daily at 23:00 PST
167 triggers:
168 - timed: |
169 TZ=US/Pacific
170 H 23 * * *
171
172 properties:
173 - onf-infra-onfstaff-private:
174 - onf-infra-properties:
175 build-days-to-keep: '15'
176 artifact-num-to-keep: '15'
177
178 wrappers:
179 - lf-infra-wrappers:
180 build-timeout: '60'
181 jenkins-ssh-credential: '{github-onf-bot-ssh-credential}'
182
183 parameters:
184 - string:
185 name: BUILD_NODE
186 default: 'menlo-pdp-lotta-nics'
187 description: 'Name of the Jenkins build executor to run the job on'
188 - string:
189 name: GIT_URL
190 default: 'git@github.com:stratum/fabric-tna.git'
191 description: 'Location of fabric-tna repository that tests will check'
192 - string:
193 name: GIT_BRANCH
194 default: 'main'
195 description: 'Name of Git branch to pull from fabric-tna repository'
196 - string:
197 name: PROFILE
198 default: 'fabric-spgw-int'
199 description: 'Name of the flavor of linerate tests to run'
200 - string:
201 name: SWITCH_IP
202 default: '10.128.13.29'
203 description: 'Address of the Stratum service (P4Runtime, gNMI, etc.) running on the remote switch'
204 - string:
205 name: STRATUM_PORT
206 default: '28000'
207 description: 'Port of the Stratum service (P4Runtime, gNMI, etc.) running on the remote switch'
208
209 project-type: pipeline
210 concurrent: true
211 extraEnvironmentVars: ""
212 sandbox: true
213
214 dsl: !include-raw-escape: ../pipeline/fabric-tna-hardware.groovy