3 name: '{project-name}-python-jobs'
5 # This job group contains all the recommended jobs that should be deployed
6 # for any project ci that is using Gerrit.
12 name: '{project-name}-github-python-jobs'
14 # This job group contains all the recommended jobs that should be deployed
15 # for any project ci that is using GitHub.
25 name: lf-infra-tox-install
28 properties-content: 'PYTHON_VERSION={python-version}'
29 - shell: !include-raw-escape: ../shell/tox-install.sh
35 - lf_tox_verify: &lf_tox_verify
38 ######################
39 # Default parameters #
40 ######################
45 git-url: '$GIT_URL/$GERRIT_PROJECT'
46 python-version: python2
48 submodule-recursive: true
56 project-type: freestyle
61 - lf-infra-properties:
62 build-days-to-keep: '{build-days-to-keep}'
65 - lf-infra-parameters:
69 lftools-version: '{lftools-version}'
70 - lf-infra-tox-parameters:
72 tox-envs: '{tox-envs}'
76 build-timeout: '{build-timeout}'
77 jenkins-ssh-credential: '{jenkins-ssh-credential}'
80 - shell: !include-raw-escape:
81 # Workaround issue where the tox run later breaks the lftools virtualenv.
82 # Without running the install first the run in the publisher will fail
83 # due to missing lftools because it gets installed into a tox venv.
84 - ../shell/lftools-install.sh
85 - lf-infra-tox-install:
86 python-version: '{python-version}'
87 - shell: !include-raw-escape: ../shell/tox-run.sh
93 # Python projects typically use tox to run testing.
94 name: '{project-name}-tox-verify-{stream}'
98 ######################
99 # Default parameters #
100 ######################
102 gerrit_verify_triggers:
103 - patchset-created-event:
105 exclude-trivial-rebase: false
106 exclude-no-code-change: false
107 - draft-published-event
108 - comment-added-contains-event:
109 comment-contains-value: recheck$
111 #####################
112 # Job Configuration #
113 #####################
116 - lf-infra-gerrit-scm:
117 jenkins-ssh-credential: '{jenkins-ssh-credential}'
119 refspec: '$GERRIT_REFSPEC'
120 branch: '$GERRIT_BRANCH'
121 submodule-recursive: '{submodule-recursive}'
122 choosing-strategy: gerrit
126 server-name: '{gerrit-server-name}'
127 trigger-on: '{obj:gerrit_verify_triggers}'
129 - project-compare-type: ANT
130 project-pattern: '{project}'
132 - branch-compare-type: ANT
133 branch-pattern: '**/{branch}'
136 # Python projects typically use tox to run testing.
137 name: '{project-name}-tox-verify-{stream}'
138 id: github-tox-verify
143 url: '{git-url}/{github-org}/{project}'
146 - lf-infra-github-scm:
147 url: '{git-clone-url}{github-org}/{project}'
148 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
150 submodule-recursive: '{submodule-recursive}'
151 choosing-strategy: default
152 jenkins-ssh-credential: '{jenkins-ssh-credential}'
155 - github-pull-request:
156 trigger-phrase: '^recheck$'
157 only-trigger-phrase: false
158 status-context: 'JJB Verify'
161 auto-close-on-fail: false