blob: acf99bc8f12f4b76a401a1e95a02bbb6588bc28c [file] [log] [blame]
Andrew Grimbergebc710a2017-01-30 12:59:38 -08001---
2- job-template:
3 # Job template for python verify jobs
4 #
Jessica Wagantalla0b80c62017-12-21 12:10:19 -08005 # The purpose of this job template is to run:
6 # 1. tox
7 #
8 # This job supports subprojects.
Andrew Grimbergebc710a2017-01-30 12:59:38 -08009 #
10 # Required Variables:
11 # branch: git branch (eg. stable/lithium or master)
12 # Optional Variables:
13 # path: directory containing the project's tox.ini relative to
14 # the workspace. The default is the project root.
15 # pattern: ant file-path pattern relative to the workspace used to
16 # trigger the job
17
Andrew Grimbergce2286c2017-01-31 05:50:39 -080018 name: '{project-name}-{stream}-{subproject}-verify-python'
Andrew Grimbergebc710a2017-01-30 12:59:38 -080019 path: '$WORKSPACE'
20
21 project-type: freestyle
22 concurrent: true
23 node: '{build-node}'
24
Andrew Grimberg94ef33d2017-01-31 05:16:56 -080025 properties:
Andrew Grimberg4307a1c2017-03-16 13:00:00 -070026 - infra-properties:
Andrew Grimberg94ef33d2017-01-31 05:16:56 -080027 build-days-to-keep: '{build-days-to-keep}'
28
Andrew Grimbergebc710a2017-01-30 12:59:38 -080029 parameters:
Andrew Grimberg4307a1c2017-03-16 13:00:00 -070030 - infra-parameters:
Andrew Grimbergebc710a2017-01-30 12:59:38 -080031 project: '{project}'
32 branch: '{branch}'
33 refspec: 'refs/heads/{branch}'
Andrew Grimberg597853d2017-01-31 05:28:25 -080034 artifacts: '{archive-artifacts}'
Andrew Grimbergdcdce332017-02-24 11:27:09 -080035 - maven-exec:
Andrew Grimberge2465882017-02-24 12:38:05 -080036 maven-version: '{maven-version}'
Andrew Grimbergebc710a2017-01-30 12:59:38 -080037
38 scm:
39 - gerrit-trigger-scm:
40 refspec: '$GERRIT_REFSPEC'
41 choosing-strategy: 'gerrit'
Jeremy Phelps11f5d412017-06-30 13:56:19 -050042 submodule-recursive: '{submodule-recursive}'
Andrew Grimbergebc710a2017-01-30 12:59:38 -080043
44 wrappers:
Andrew Grimberg4307a1c2017-03-16 13:00:00 -070045 - infra-wrappers:
Andrew Grimbergebc710a2017-01-30 12:59:38 -080046 build-timeout: '{build-timeout}'
47
48 triggers:
Andrew Grimberg94ef33d2017-01-31 05:16:56 -080049 - gerrit-trigger-patch-submitted:
50 server: '{server-name}'
51 project: '{project}'
Andrew Grimbergebc710a2017-01-30 12:59:38 -080052 branch: '{branch}'
Andrew Grimberg94ef33d2017-01-31 05:16:56 -080053 files: '{pattern}'
Andrew Grimbergebc710a2017-01-30 12:59:38 -080054
55 builders:
Jessica Wagantall05ae7da2018-10-22 17:32:33 -070056 - lf-infra-pre-build
Andrew Grimbergd5410d12017-02-10 10:44:11 -080057 - provide-maven-settings:
58 global-settings-file: 'global-settings'
59 settings-file: '{mvn-settings}'
Andrew Grimbergebc710a2017-01-30 12:59:38 -080060 - shell: |
Andrew Grimberg673c9632017-02-16 06:21:00 -080061 #!/bin/bash
Matthew Watkins1a16d1d2022-12-06 10:37:59 +000062 # shellcheck disable=SC1090
63 source ~/lf-env.sh
64
65 lf-activate-venv --python python3.8 --venv-file /tmp/.toxenv \
Matthew Watkinsc18b27e2023-01-24 13:48:46 +000066 tox==3.27.1 tox-pyenv virtualenv argparse webtest
Matthew Watkins1a16d1d2022-12-06 10:37:59 +000067
68 if [[ -d /opt/pyenv ]]; then
69 echo "---> Setting up pyenv"
70 export PYENV_ROOT="/opt/pyenv"
71 export PATH="$PYENV_ROOT/bin:$PATH"
72 PYTHONPATH="$(pwd)"
73 export PYTHONPATH
74 export TOX_TESTENV_PASSENV=PYTHONPATH
75 fi
76
Matthew Watkinsd2ad4722023-01-24 10:21:32 +000077 python -m pip install --upgrade pip
Matthew Watkinsd2ad4722023-01-24 10:21:32 +000078
Matthew Watkins1a16d1d2022-12-06 10:37:59 +000079 # Useful debugging
80 python --version
Matthew Watkinsd2ad4722023-01-24 10:21:32 +000081 python -m pip freeze
Matthew Watkins1a16d1d2022-12-06 10:37:59 +000082 tox --version
83
Matthew Watkinsd2ad4722023-01-24 10:21:32 +000084 cd $WORKSPACE/{path}
Andrew Grimbergebc710a2017-01-30 12:59:38 -080085 tox
86
Andrew Grimberg4ecb8f22017-04-06 13:57:46 -070087 publishers:
Jessica Wagantall2a6a3802021-01-14 12:19:17 -080088 - lf-infra-publish
Jerry Floodffab4f72017-05-02 16:00:03 -040089
90- job-template:
Jessica Wagantalla0b80c62017-12-21 12:10:19 -080091 # Job template for docker daily jobs for 3 SCMs
92 #
93 # The purpose of this job template is to run:
94 # 1. inject a version properties file
95 # 2. login into the docker registry
96 # 4. run a specified shell script
97 #
98 # Required Variables:
99 # branch: git branch (eg. stable/lithium or master)
100
Jerry Floodffab4f72017-05-02 16:00:03 -0400101 name: '{project-name}-{stream}-3scm-docker-shell-daily'
102 project-type: freestyle
gwud0b160d2018-07-17 09:46:52 -0700103 node: 'queue-docker-4c-4g'
Jerry Floodffab4f72017-05-02 16:00:03 -0400104
105 properties:
106 - infra-properties:
107 build-days-to-keep: '{build-days-to-keep}'
108
109 parameters:
110 - infra-parameters:
111 project: '{project}'
112 branch: '{branch}'
113 refspec: 'refs/heads/{branch}'
114 artifacts: '{archive-artifacts}'
115 - maven-exec:
116 maven-version: '{maven-version}'
Jerry Floodffab4f72017-05-02 16:00:03 -0400117 scm:
118 - gerrit-trigger-scm:
119 refspec: ''
120 choosing-strategy: 'default'
Jeremy Phelps11f5d412017-06-30 13:56:19 -0500121 submodule-recursive: '{submodule-recursive}'
Jerry Floodffab4f72017-05-02 16:00:03 -0400122
123 wrappers:
gwuadeda5a2018-07-17 14:12:09 -0700124 - infra-wrappers-docker-build:
125 build-timeout: '{build-timeout}'
Jerry Floodffab4f72017-05-02 16:00:03 -0400126
127 triggers:
Gary Wu6b702fe2018-07-18 10:32:17 -0700128 - timed: 'H */4 * * *'
Jerry Floodffab4f72017-05-02 16:00:03 -0400129 - gerrit-trigger-release-manually:
130 server: '{server-name}'
131 project: '{project}'
132 branch: '{branch}'
Gary Wu601a2ff2018-07-30 17:50:12 -0700133 - gerrit-trigger-patch-merged:
134 server: '{server-name}'
135 project: '{project}'
136 branch: '{branch}'
137 files: '**'
Jerry Floodffab4f72017-05-02 16:00:03 -0400138
139 builders:
Jessica Wagantall05ae7da2018-10-22 17:32:33 -0700140 - lf-infra-pre-build
Jerry Floodffab4f72017-05-02 16:00:03 -0400141 - provide-maven-settings:
142 global-settings-file: 'global-settings'
143 settings-file: '{mvn-settings}'
Jerry Floodffab4f72017-05-02 16:00:03 -0400144 - inject:
145 properties-file: version.properties
Jerry Floodffab4f72017-05-02 16:00:03 -0400146 - docker-login
Jerry Floodffab4f72017-05-02 16:00:03 -0400147 - shell: '{script}'
Jessica Wagantall2a6a3802021-01-14 12:19:17 -0800148
Jerry Floodffab4f72017-05-02 16:00:03 -0400149 publishers:
Jessica Wagantall2a6a3802021-01-14 12:19:17 -0800150 - lf-infra-publish