blob: a2db6dad8b228edb41babe7dd0a1b19fe9b9953c [file] [log] [blame]
---
- job-template:
# Job template for python verify jobs
#
# The purpose of this job template is to run:
# 1. tox
#
# This job supports subprojects.
#
# Required Variables:
# branch: git branch (eg. stable/lithium or master)
# Optional Variables:
# path: directory containing the project's tox.ini relative to
# the workspace. The default is the project root.
# pattern: ant file-path pattern relative to the workspace used to
# trigger the job
name: "{project-name}-{stream}-{subproject}-verify-python"
path: "$WORKSPACE"
project-type: freestyle
concurrent: true
node: "{build-node}"
properties:
- infra-properties:
build-days-to-keep: "{build-days-to-keep}"
parameters:
- infra-parameters:
project: "{project}"
branch: "{branch}"
refspec: "refs/heads/{branch}"
artifacts: "{archive-artifacts}"
- maven-exec:
maven-version: "{maven-version}"
scm:
- gerrit-trigger-scm:
refspec: "$GERRIT_REFSPEC"
choosing-strategy: "gerrit"
submodule-recursive: "{submodule-recursive}"
wrappers:
- infra-wrappers:
build-timeout: "{build-timeout}"
triggers:
- gerrit-trigger-patch-submitted:
server: "{server-name}"
project: "{project}"
branch: "{branch}"
files: "{pattern}"
builders:
- lf-infra-pre-build
- provide-maven-settings:
global-settings-file: "global-settings"
settings-file: "{mvn-settings}"
- shell: |
#!/bin/bash
# shellcheck disable=SC1090
source ~/lf-env.sh
lf-activate-venv --python python3.8 --venv-file /tmp/.toxenv \
tox virtualenv argparse webtest
if [[ -d /opt/pyenv ]]; then
echo "---> Setting up pyenv"
export PYENV_ROOT="/opt/pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
PYTHONPATH="$(pwd)"
export PYTHONPATH
export TOX_TESTENV_PASSENV=PYTHONPATH
fi
python -m pip install --upgrade pip
# Useful debugging
python --version
python -m pip freeze
tox --version
cd $WORKSPACE/{path}
tox
publishers:
- lf-infra-publish
- job-template:
# Job template for docker daily jobs for 3 SCMs
#
# The purpose of this job template is to run:
# 1. inject a version properties file
# 2. login into the docker registry
# 4. run a specified shell script
#
# Required Variables:
# branch: git branch (eg. stable/lithium or master)
name: "{project-name}-{stream}-3scm-docker-shell-daily"
project-type: freestyle
node: "queue-docker-4c-4g"
properties:
- infra-properties:
build-days-to-keep: "{build-days-to-keep}"
parameters:
- infra-parameters:
project: "{project}"
branch: "{branch}"
refspec: "refs/heads/{branch}"
artifacts: "{archive-artifacts}"
- maven-exec:
maven-version: "{maven-version}"
scm:
- gerrit-trigger-scm:
refspec: ""
choosing-strategy: "default"
submodule-recursive: "{submodule-recursive}"
wrappers:
- infra-wrappers-docker-build:
build-timeout: "{build-timeout}"
triggers:
- timed: "H */4 * * *"
- gerrit-trigger-release-manually:
server: "{server-name}"
project: "{project}"
branch: "{branch}"
- gerrit-trigger-patch-merged:
server: "{server-name}"
project: "{project}"
branch: "{branch}"
files: "**"
builders:
- lf-infra-pre-build
- provide-maven-settings:
global-settings-file: "global-settings"
settings-file: "{mvn-settings}"
- inject:
properties-file: version.properties
- docker-login
- shell: "{script}"
publishers:
- lf-infra-publish