6 name: ta-parameters-manifest
9 default: refs/heads/master
11 name: SCM_REFSPEC_MANIFEST
15 name: ta-parameters-build-tools
18 default: refs/heads/master
20 name: SCM_REFSPEC_BUILD_TOOLS
24 name: ta-parameters-rpmbuilder
27 default: refs/heads/master
29 name: SCM_REFSPEC_RPMBUILDER
33 name: ta-parameters-ci
35 - ta-parameters-manifest
36 - ta-parameters-build-tools
37 - ta-parameters-rpmbuilder
40 name: ta-parameters-ci-ta-rpmbuilder
42 - ta-parameters-manifest
43 - ta-parameters-build-tools
47 name: SCM_PROJECT_TO_BUILD
50 default: refs/heads/master
52 name: SCM_PROJECT_TO_BUILD_REFSPEC
59 # Enhanced version of the global-jjb
60 name: ta-lf-infra-gerrit-scm
63 credentials-id: '{jenkins-ssh-credential}'
67 - 'refs/heads/{branch}'
71 recursive: '{submodule-recursive}'
72 timeout: '{submodule-timeout}'
73 choosing-strategy: '{choosing-strategy}'
85 source /tmp/v/tox/bin/activate
86 for f in $(find $GERRIT_PROJECT -name tox.ini); do
96 sudo yum install -y createrepo
97 ta/build-tools/build_rpms.sh \
108 git clone {git-url}/{project} {project}
110 if echo {ref} | grep -q "refs/"; then
111 git fetch origin {ref}
112 git checkout FETCH_HEAD
119 name: ta-lf-infra-ship-rpms
121 # Ensure no pre-existing .netrc files are overriding logs config
122 - lf-provide-maven-settings-cleanup
123 - config-file-provider:
125 - file-id: 'ta-settings'
126 variable: 'SETTINGS_FILE'
128 properties-content: 'ALT_NEXUS_URL=https://nexus3.akraino.org'
129 - lf-infra-create-netrc:
130 server-id: rpm.snapshots
131 - shell: !include-raw:
132 # Ensure python-tools are installed in case job template does not
133 # call the lf-infra-pre-build macro.
134 - ../../global-jjb/shell/python-tools-install.sh
135 - ../shell/ta-rpm-deploy.sh
136 - shell: !include-raw:
137 - ../../global-jjb/shell/logs-clear-credentials.sh
140 name: ta-lf-infra-ship-isos
142 # Ensure no pre-existing .netrc files are overriding logs config
143 - lf-provide-maven-settings-cleanup
144 - config-file-provider:
146 - file-id: 'ta-settings'
147 variable: 'SETTINGS_FILE'
148 - lf-infra-create-netrc:
149 server-id: images-snapshots
150 - shell: !include-raw:
151 # Ensure python-tools are installed in case job template does not
152 # call the lf-infra-pre-build macro.
153 - ../../global-jjb/shell/python-tools-install.sh
154 - ../shell/ta-iso-deploy.sh
155 - shell: !include-raw:
156 - ../../global-jjb/shell/logs-clear-credentials.sh
159 name: ta-builder-job-verify
163 project: 'ta/manifest'
164 ref: '$SCM_REFSPEC_MANIFEST'
167 project: 'ta/build-tools'
168 ref: '$SCM_REFSPEC_BUILD_TOOLS'
171 project: 'ta/rpmbuilder'
172 ref: '$SCM_REFSPEC_RPMBUILDER'
175 project-to-build: '$GERRIT_PROJECT'
178 name: ta-builder-job-verify-ta-rpmbuilder
182 project: 'ta/manifest'
183 ref: '$SCM_REFSPEC_MANIFEST'
186 project: 'ta/build-tools'
187 ref: '$SCM_REFSPEC_BUILD_TOOLS'
190 project: '$SCM_PROJECT_TO_BUILD'
191 ref: '$SCM_PROJECT_TO_BUILD_REFSPEC'
194 # Just package some random project to verify "rpmbuilder" changes
195 project-to-build: '$SCM_PROJECT_TO_BUILD'
198 name: ta-builder-job-merge
202 project: 'ta/manifest'
203 ref: '$SCM_REFSPEC_MANIFEST'
206 project: 'ta/build-tools'
207 ref: '$SCM_REFSPEC_BUILD_TOOLS'
210 project: 'ta/rpmbuilder'
211 ref: '$SCM_REFSPEC_RPMBUILDER'
213 project-to-build: '$GERRIT_PROJECT'
214 - ta-lf-infra-ship-rpms
217 name: ta-builder-install-docker
220 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
221 sudo yum -y install docker-ce docker-ce-cli containerd.io
222 sudo systemctl start docker
223 # Ugly hack to make docker usable for non-root
224 # (adding to the group would require re-login)
225 sudo chmod 777 /var/run/docker.sock
232 name: ta-trigger-job-verify
235 server-name: '{gerrit-server-name}'
237 - patchset-created-event:
238 exclude-drafts: 'false'
239 exclude-trivial-rebase: 'false'
240 exclude-no-code-change: 'false'
241 - draft-published-event
242 - comment-added-contains-event:
243 comment-contains-value: 'recheck'
244 - comment-added-contains-event:
245 comment-contains-value: 'reverify'
247 - project-compare-type: 'ANT'
248 project-pattern: '{project}'
250 - branch-compare-type: 'ANT'
251 branch-pattern: '**/{branch}'
252 readable-message: true
255 name: ta-trigger-job-merge
258 server-name: '{gerrit-server-name}'
260 # Not sure if it would be better to use "change-merged" here and just clone the master
261 # branch. With the current approach the SCM can be identical in verify and merge jobs.
264 - project-compare-type: 'ANT'
265 project-pattern: '{project}'
267 - branch-compare-type: 'ANT'
268 branch-pattern: '**/{branch}'
269 readable-message: true
276 name: ta-publisher-job-verify
281 name: ta-publisher-job-merge