blob: 8e8db60073818abda12c66985e85575c43265ea0 [file] [log] [blame]
Carmelo Cascone81631ed2020-08-18 19:33:25 -07001---
2# Run pull request verify job for fabric-tna
3
4- job-template:
5 id: 'fabric-tna-pr-verify'
6 name: 'fabric-tna-pr-verify'
7
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
21 node: '{bigger-build-node}'
22 project-type: freestyle
23 concurrent: true
24
25 parameters:
26 - onf-infra-parameters:
27 project: '{project}'
28 stream: '{stream}'
29 gerrit_project: 'not-a-gerrit-project'
30
31 scm:
32 - onf-infra-github-ssh-scm:
33 github-organization: '{github-organization}'
34 project: '{project}'
35 branch: "$sha1"
36 ssh-credential: "{github-onf-bot-ssh-credential}"
37
38 triggers:
39 - onf-infra-github-pr-trigger:
40 github_pr_org_list: '{obj:github_pr_org_list}'
41 github_pr_auth_id: '{github_pr_auth_id}'
42 status_context: 'fabric-tna-pr-verify'
43
44 wrappers:
45 - lf-infra-wrappers:
Carmelo Casconec3fcb712021-07-07 16:36:16 +020046 build-timeout: '80'
Carmelo Cascone81631ed2020-08-18 19:33:25 -070047 jenkins-ssh-credential: '{github-onf-bot-ssh-credential}'
48 - credentials-binding:
49 - username-password-separated:
50 credential-id: docker-artifact-push-credentials
51 username: DOCKERHUB_USERNAME
52 password: DOCKERHUB_PASSWORD
Carmelo Cascone2ce1d772020-09-02 19:37:32 -070053 - credentials-binding:
54 - username-password-separated:
55 credential-id: aether-internal-registry
56 username: AETHER_REGISTRY_USERNAME
57 password: AETHER_REGISTRY_PASSWORD
Yi Tseng9c7b1142021-04-19 10:33:11 -070058 - credentials-binding:
Yi Tseng2526a502021-06-07 02:36:50 -070059 - username-password-separated:
60 credential-id: onf-internal-registry
61 username: ONF_REGISTRY_USERNAME
62 password: ONF_REGISTRY_PASSWORD
63 - credentials-binding:
Yi Tseng9c7b1142021-04-19 10:33:11 -070064 - text:
65 credential-id: codecov-fabric-tna
66 variable: CODECOV_TOKEN
Carmelo Cascone81631ed2020-08-18 19:33:25 -070067
68 builders:
69 - shell: !include-raw-escape: ../shell/docker-login.sh
70 # For now, let the actual job script evolve in the repo. We can make that
71 # a pipeline later.
72 - shell: |
73 bash .jenkins/pr_verify.sh
74
75 publishers:
76 - onf-infra-wscleanup-publisher
Yi Tsengaa7a60f2020-09-24 16:57:18 -070077 - archive:
Yi Tsengb75fcfe2021-04-27 17:23:02 -070078 artifacts: '**/*.log,**/*.pcap,**/*.json'
Yi Tsengaa7a60f2020-09-24 16:57:18 -070079 excludes: 'tmp/**/*'
Carmelo Cascone81631ed2020-08-18 19:33:25 -070080
81- job-template:
82 id: 'fabric-tna-postmerge'
83 name: 'fabric-tna-postmerge'
84
85 description: |
86 Created by {id} job-template from ci-management/jjb/templates/fabric-tna-jobs.yaml<br/>
87
88 properties:
Carmelo Cascone010ab112021-01-13 00:37:06 -080089 # Visibility restricted to because logs contain output from
Carmelo Cascone81631ed2020-08-18 19:33:25 -070090 # Barefoot toolchain (under NDA).
Carmelo Cascone010ab112021-01-13 00:37:06 -080091 - onf-infra-pronto-private:
Carmelo Cascone81631ed2020-08-18 19:33:25 -070092 - onf-infra-properties:
93 build-days-to-keep: '{build-days-to-keep}'
94 artifact-num-to-keep: '-1'
95 - github:
96 url: 'https://github.com/{github-organization}/{project}'
97
98 node: '{bigger-build-node}'
99 project-type: freestyle
100 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}'
108
109
110 scm:
111 - onf-infra-github-ssh-scm:
112 github-organization: '{github-organization}'
113 project: '{project}'
114 branch: "$commitHash"
115 ssh-credential: "{github-onf-bot-ssh-credential}"
116
117 triggers:
118 - onf-infra-github-pr-trigger-merge:
119 project: '{project}'
Carmelo Cascone9a4cbfa2020-08-19 23:11:50 -0700120 - timed: "@midnight"
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700121
122 wrappers:
123 - lf-infra-wrappers:
Carmelo Casconec3fcb712021-07-07 16:36:16 +0200124 build-timeout: '80'
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700125 jenkins-ssh-credential: '{github-onf-bot-ssh-credential}'
126 - credentials-binding:
127 - username-password-separated:
128 credential-id: docker-artifact-push-credentials
129 username: DOCKERHUB_USERNAME
130 password: DOCKERHUB_PASSWORD
Carmelo Cascone2ce1d772020-09-02 19:37:32 -0700131 - credentials-binding:
132 - username-password-separated:
133 credential-id: aether-internal-registry
134 username: AETHER_REGISTRY_USERNAME
135 password: AETHER_REGISTRY_PASSWORD
Yi Tseng17e77b72021-04-23 02:02:25 -0700136 - credentials-binding:
Yi Tseng2526a502021-06-07 02:36:50 -0700137 - username-password-separated:
138 credential-id: onf-internal-registry
139 username: ONF_REGISTRY_USERNAME
140 password: ONF_REGISTRY_PASSWORD
141 - credentials-binding:
Yi Tseng17e77b72021-04-23 02:02:25 -0700142 - text:
143 credential-id: codecov-fabric-tna
144 variable: CODECOV_TOKEN
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700145
146 builders:
Carmelo Cascone09e86b92020-08-19 21:09:25 -0700147 - github-notifier
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700148 - shell: !include-raw-escape: ../shell/docker-login.sh
149 # For now, let the actual job script evolve in the repo. We can make that
150 # a pipeline later.
151 - shell: |
152 bash .jenkins/postmerge.sh
153
154 publishers:
Carmelo Cascone09e86b92020-08-19 21:09:25 -0700155 - github-notifier
Carmelo Cascone81631ed2020-08-18 19:33:25 -0700156 - onf-infra-wscleanup-publisher
Yi Tsengb75fcfe2021-04-27 17:23:02 -0700157 - archive:
158 # Preserve the build log so we can compare the resources between the main
159 # branch and the new pull request.
160 artifacts: '**/*.log,**/*.json'
161 excludes: 'tmp/**/*'
Darius Grassi8b7a5e62021-07-30 15:35:04 -0700162
163- job-template:
164 id: 'fabric-tna-linerate-tests'
165 name: 'fabric-tna-linerate-tests'
166
167 description: |
168 Created by {id} job-template from ci-management/jjb/fabric-tna-jobs.yaml, script ../pipeline/fabric-tna.groovy<br/>
169
170 # Cron syntax; trigger daily at 23:00 PST
171 triggers:
172 - timed: |
173 TZ=US/Pacific
174 H 23 * * *
175
176 properties:
177 - onf-infra-onfstaff-private:
178 - onf-infra-properties:
179 build-days-to-keep: '15'
180 artifact-num-to-keep: '15'
181
182 wrappers:
183 - lf-infra-wrappers:
184 build-timeout: '60'
185 jenkins-ssh-credential: '{github-onf-bot-ssh-credential}'
186
187 parameters:
188 - string:
189 name: BUILD_NODE
190 default: 'menlo-pdp-lotta-nics'
191 description: 'Name of the Jenkins build executor to run the job on'
192 - string:
193 name: GIT_URL
194 default: 'git@github.com:stratum/fabric-tna.git'
195 description: 'Location of fabric-tna repository that tests will check'
196 - string:
197 name: GIT_BRANCH
198 default: 'main'
199 description: 'Name of Git branch to pull from fabric-tna repository'
200 - string:
201 name: PROFILE
202 default: 'fabric-spgw-int'
203 description: 'Name of the flavor of linerate tests to run'
204 - string:
205 name: SWITCH_IP
206 default: '10.128.13.29'
207 description: 'Address of the Stratum service (P4Runtime, gNMI, etc.) running on the remote switch'
208 - string:
209 name: STRATUM_PORT
210 default: '28000'
211 description: 'Port of the Stratum service (P4Runtime, gNMI, etc.) running on the remote switch'
212
213 project-type: pipeline
214 concurrent: true
215 extraEnvironmentVars: ""
216 sandbox: true
217
218 dsl: !include-raw-escape: ../pipeline/fabric-tna-hardware.groovy