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.
24 - lf_tox_verify: &lf_tox_verify
28 # branch: git branch (default: master)
29 # tox-dir: directory containing the project's tox.ini relative to
30 # the workspace. Empty works if tox.ini is at project root.
32 project-type: freestyle
36 ######################
37 # Default parameters #
38 ######################
42 git-url: '$GIT_URL/$GERRIT_PROJECT'
44 submodule-recursive: true
53 - lf-infra-properties:
57 - lf-infra-parameters:
61 - lf-infra-tox-parameters:
63 tox-envs: '{tox-envs}'
67 build-timeout: '{build-timeout}'
68 jenkins-ssh-credential: '{jenkins-ssh-credential}'
71 - shell: !include-raw-escape:
72 # Workaround issue where the tox run later breaks the lftools virtualenv.
73 # Without running the install first the run in the publisher will fail
74 # due to missing lftools because it gets installed into a tox venv.
75 - ../shell/lftools-install.sh
76 - shell: !include-raw-escape:
77 - ../shell/tox-install.sh
88 # Python projects typically use tox to run testing.
89 name: '{project-name}-tox-verify-{stream}'
93 ######################
94 # Default parameters #
95 ######################
97 gerrit_verify_triggers:
98 - patchset-created-event:
100 exclude-trivial-rebase: false
101 exclude-no-code-change: false
102 - draft-published-event
103 - comment-added-contains-event:
104 comment-contains-value: recheck$
106 #####################
107 # Job Configuration #
108 #####################
111 - lf-infra-gerrit-scm:
112 jenkins-ssh-credential: '{jenkins-ssh-credential}'
114 refspec: '$GERRIT_REFSPEC'
115 branch: '$GERRIT_BRANCH'
116 submodule-recursive: '{submodule-recursive}'
117 choosing-strategy: gerrit
121 server-name: '{gerrit-server-name}'
122 trigger-on: '{obj:gerrit_verify_triggers}'
124 - project-compare-type: ANT
125 project-pattern: '{project}'
127 - branch-compare-type: ANT
128 branch-pattern: '**/{branch}'
131 # Python projects typically use tox to run testing.
132 name: '{project-name}-tox-verify-{stream}'
133 id: github-tox-verify
138 url: '{git-url}/{github-org}/{project}'
141 - lf-infra-github-scm:
142 url: '{git-clone-url}{github-org}/{project}'
143 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
145 submodule-recursive: '{submodule-recursive}'
146 choosing-strategy: default
147 jenkins-ssh-credential: '{jenkins-ssh-credential}'
150 - github-pull-request:
151 trigger-phrase: '^recheck$'
152 only-trigger-phrase: false
153 status-context: 'JJB Verify'
156 auto-close-on-fail: false