Follow upper constraints for all tox targets
With the exception of releasenotes and cover, we should follow upper constraints. The tox_install file was copied over from python-neutronclient [1]. [1] http://git.openstack.org/cgit/openstack/python-neutronclient/tree/tools/tox_install.sh Change-Id: I633fa149820efafd7b2acec0388fa8bc8d06c988
This commit is contained in:
		
							
								
								
									
										55
									
								
								tools/tox_install.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										55
									
								
								tools/tox_install.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,55 @@ | ||||
| #!/usr/bin/env bash | ||||
|  | ||||
| # Client constraint file contains this client version pin that is in conflict | ||||
| # with installing the client from source. We should replace the version pin in | ||||
| # the constraints file before applying it for from-source installation. | ||||
|  | ||||
| ZUUL_CLONER=/usr/zuul-env/bin/zuul-cloner | ||||
| BRANCH_NAME=master | ||||
| CLIENT_NAME=python-openstackclient | ||||
| requirements_installed=$(echo "import openstack_requirements" | python 2>/dev/null ; echo $?) | ||||
|  | ||||
| set -e | ||||
|  | ||||
| CONSTRAINTS_FILE=$1 | ||||
| shift | ||||
|  | ||||
| install_cmd="pip install" | ||||
| if [ $CONSTRAINTS_FILE != "unconstrained" ]; then | ||||
|  | ||||
|     mydir=$(mktemp -dt "$CLIENT_NAME-tox_install-XXXXXXX") | ||||
|     localfile=$mydir/upper-constraints.txt | ||||
|     if [[ $CONSTRAINTS_FILE != http* ]]; then | ||||
|         CONSTRAINTS_FILE=file://$CONSTRAINTS_FILE | ||||
|     fi | ||||
|     curl $CONSTRAINTS_FILE -k -o $localfile | ||||
|     install_cmd="$install_cmd -c$localfile" | ||||
|  | ||||
|     if [ $requirements_installed -eq 0 ]; then | ||||
|         echo "ALREADY INSTALLED" > /tmp/tox_install.txt | ||||
|         echo "Requirements already installed; using existing package" | ||||
|     elif [ -x "$ZUUL_CLONER" ]; then | ||||
|         export ZUUL_BRANCH=${ZUUL_BRANCH-$BRANCH} | ||||
|         echo "ZUUL CLONER" > /tmp/tox_install.txt | ||||
|         pushd $mydir | ||||
|         $ZUUL_CLONER --cache-dir \ | ||||
|             /opt/git \ | ||||
|             --branch $BRANCH_NAME \ | ||||
|             git://git.openstack.org \ | ||||
|             openstack/requirements | ||||
|         cd openstack/requirements | ||||
|         $install_cmd -e . | ||||
|         popd | ||||
|     else | ||||
|         echo "PIP HARDCODE" > /tmp/tox_install.txt | ||||
|         if [ -z "$REQUIREMENTS_PIP_LOCATION" ]; then | ||||
|             REQUIREMENTS_PIP_LOCATION="git+https://git.openstack.org/openstack/requirements@$BRANCH_NAME#egg=requirements" | ||||
|         fi | ||||
|         $install_cmd -U -e ${REQUIREMENTS_PIP_LOCATION} | ||||
|     fi | ||||
|  | ||||
|     edit-constraints $localfile -- $CLIENT_NAME "-e file://$PWD#egg=$CLIENT_NAME" | ||||
| fi | ||||
|  | ||||
| $install_cmd -U $* | ||||
| exit $? | ||||
							
								
								
									
										7
									
								
								tox.ini
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								tox.ini
									
									
									
									
									
								
							| @@ -5,7 +5,8 @@ skipdist = True | ||||
|  | ||||
| [testenv] | ||||
| usedevelop = True | ||||
| install_command = pip install -U {opts} {packages} | ||||
| install_command = | ||||
|     {toxinidir}/tools/tox_install.sh {env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages} | ||||
| setenv = VIRTUAL_ENV={envdir} | ||||
| deps = -r{toxinidir}/test-requirements.txt | ||||
| commands = ostestr {posargs} | ||||
| @@ -54,6 +55,8 @@ setenv = OS_TEST_PATH=./functional/tests | ||||
| passenv = OS_* | ||||
|  | ||||
| [testenv:venv] | ||||
| # TODO(ihrachys): remove once infra supports constraints for this target | ||||
| install_command = pip install -U {opts} {packages} | ||||
| commands = {posargs} | ||||
|  | ||||
| [testenv:cover] | ||||
| @@ -68,6 +71,8 @@ commands = oslo_debug_helper -t openstackclient/tests {posargs} | ||||
| commands = python setup.py build_sphinx | ||||
|  | ||||
| [testenv:releasenotes] | ||||
| # TODO(ihrachys): remove once infra supports constraints for this target | ||||
| install_command = pip install -U {opts} {packages} | ||||
| commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html | ||||
|  | ||||
| [flake8] | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Steve Martinelli
					Steve Martinelli