privileges on any job using the `lf-infra-github-pr-trigger`
macro.
+**lftools-version**: Version of lftools to install. Can be a specific version
+like '0.6.1' or a PEP-440 definition. <https://www.python.org/dev/peps/pep-0440/>
+For example `<1.0.0` or `>=1.0.0,<2.0.0`.
+
defaults.yaml:
```
- zxiiro
github_pr_admin_list:
- tykeal
+ lftools-version: '<1.0.0'
```
## Config File Management
github_pr_admin_list:
- tykeal
+ lftools-version: '<1.0.0'
+
# Common test config
project: releng/ciman
stream: latest
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>JJB_VERSION</name>
<description>Jenkins Job Builder version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>JJB_VERSION</name>
<description>Jenkins Job Builder version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>MAVEN_OPTS</name>
<description>Maven Java opts. Example: -Xmx1024m -XX:MaxPermSize=256m
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>MAVEN_OPTS</name>
<description>Maven Java opts. Example: -Xmx1024m -XX:MaxPermSize=256m
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>TOX_DIR</name>
<description>Path to directory containing tox.ini file.
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>JJB_VERSION</name>
<description>Jenkins Job Builder version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>JJB_VERSION</name>
<description>Jenkins Job Builder version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>PACKER_VERSION</name>
<description>Packer version to download and install.</description>
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>MAVEN_OPTS</name>
<description>Maven Java opts. Example: -Xmx1024m -XX:MaxPermSize=256m
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>MAVEN_OPTS</name>
<description>Maven Java opts. Example: -Xmx1024m -XX:MaxPermSize=256m
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
</description>
<defaultValue>refs/heads/master</defaultValue>
</hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>LFTOOLS_VERSION</name>
+ <description>Version of lftools to install. Can be a specific version like
+'0.6.0' or a PEP-440 definition.
+https://www.python.org/dev/peps/pep-0440/
+For example '<1.0.0' or '>=1.0.0,<2.0.0'.
+</description>
+ <defaultValue><1.0.0</defaultValue>
+ </hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>TOX_DIR</name>
<description>Path to directory containing tox.ini file.
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.
project: '{project}'
stream: '{stream}'
branch: '{branch}'
+ lftools-version: '{lftools-version}'
- lf-infra-packer-parameters:
packer-version: '{packer-version}'
project: '{project}'
stream: '{stream}'
branch: '{branch}'
+ lftools-version: '{lftools-version}'
- lf-infra-jjb-parameters:
jjb-version: '{jjb-version}'
Note that Gerrit will override this parameter automatically if a
job is triggered by Gerrit.
-
+ - string:
+ name: LFTOOLS_VERSION
+ default: '{lftools-version}'
+ description: |
+ Version of lftools to install. Can be a specific version like
+ '0.6.0' or a PEP-440 definition.
+ https://www.python.org/dev/peps/pep-0440/
+ For example '<1.0.0' or '>=1.0.0,<2.0.0'.
- parameter:
name: lf-infra-tox-parameters
project: '{project}'
branch: '{branch}'
stream: '{stream}'
+ lftools-version: '{lftools-version}'
- lf-infra-maven-parameters:
mvn-opts: '{mvn-opts}'
mvn-params: '{mvn-params}'
project: '{project}'
branch: '{branch}'
stream: '{stream}'
+ lftools-version: '{lftools-version}'
- lf-infra-tox-parameters:
tox-dir: '{tox-dir}'
tox-envs: '{tox-envs}'
##############################################################################
echo "---> lftools-install.sh"
+# Script to install lftools via a version passed in via lf-infra-parameters
+#
+# Required parameters:
+#
+# LFTOOLS_VERSION: Passed in via lf-infra-parameters configuration. Can be
+# set to a strict version number like '1.2.3' or using
+# PEP-440 definitions.
+#
+# Examples:
+# <1.0.0
+# >=1.0.0,<2.0.0
+#
+# By default a released version of lftools should always be used.
+# The purpose of the 2 variables below is so that lftools devs can test
+# unreleased versions of lftools. There are 2 methods to install a dev version
+# of lftools:
+#
+# 1) gerrit patch: Used to test a patch that has not yet been merged.
+# To do this set something like this:
+# LFTOOLS_MODE=gerrit
+# LFTOOLS_REFSPEC=refs/changes/96/5296/7
+#
+# 2) git branch: Used to install an lftools version from a specific branch.
+# To use this set the variables as follows:
+# LFTOOLS_MODE=git
+# LFTOOLS_REFSPEC=master
+#
+# 3) release : The intended use case and default setting.
+# Set LFTOOLS_MODE=release, in this case LFTOOLS_REFSPEC is unused.
+
+LFTOOLS_MODE=release # release | git | gerrit
+LFTOOLS_REFSPEC=master
+
# Ensure we fail the job if any steps fail.
# DO NOT set -u as virtualenv's activate script has unbound variables
set -e -o pipefail
# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
source "/tmp/v/lftools/bin/activate"
pip install --quiet --upgrade pip
-pip install --quiet --upgrade "lftools<1.0.0"
+
+case $LFTOOLS_MODE in
+ gerrit)
+ git clone https://gerrit.linuxfoundation.org/infra/releng/lftools.git /tmp/lftools
+ pushd /tmp/lftools
+ git fetch origin "$LFTOOLS_REFSPEC"
+ git checkout FETCH_HEAD
+ pip install --quiet --upgrade -r requirements.txt
+ pip install --quiet --upgrade -e .
+ popd
+ ;;
+
+ git)
+ pip install --quiet --upgrade git+https://gerrit.linuxfoundation.org/infra/releng/lftools.git@"$BRANCH"
+ ;;
+
+ release)
+ if [[ $LFTOOLS_VERSION =~ ^[0-9] ]]; then
+ LFTOOLS_VERSION="==$LFTOOLS_VERSION"
+ fi
+
+ pip install --quiet --upgrade "lftools${LFTOOLS_VERSION}"
+ ;;
+esac
+
+lftools --version
# pipdeptree prints out a lot of information because lftools pulls in many
# dependencies. Let's only print it if we want to debug.