Adding constraints support to libraries is slightly more complex than services as the libraries themselves are listed in upper-constraints.txt which leads to errors that you can't install a specific version and a constrained version. This change adds constraints support by also adding a helper script to edit the constraints to remove python-karborclient. Change-Id: Ib7f5194b7cf04917d8cfd3e7e1dafc303e234d20
		
			
				
	
	
		
			31 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
# Client constraint file contains this client version pin that is in conflict
 | 
						|
# with installing the client from source. We should remove the version pin in
 | 
						|
# the constraints file before applying it for from-source installation.
 | 
						|
 | 
						|
CONSTRAINTS_FILE="$1"
 | 
						|
shift 1
 | 
						|
 | 
						|
set -e
 | 
						|
 | 
						|
# NOTE(tonyb): Place this in the tox enviroment's log dir so it will get
 | 
						|
# published to logs.openstack.org for easy debugging.
 | 
						|
localfile="$VIRTUAL_ENV/log/upper-constraints.txt"
 | 
						|
 | 
						|
if [[ "$CONSTRAINTS_FILE" != http* ]]; then
 | 
						|
    CONSTRAINTS_FILE="file://$CONSTRAINTS_FILE"
 | 
						|
fi
 | 
						|
# NOTE(tonyb): need to add curl to bindep.txt if the project supports bindep
 | 
						|
curl "$CONSTRAINTS_FILE" --insecure --progress-bar --output "$localfile"
 | 
						|
 | 
						|
pip install -c"$localfile" openstack-requirements
 | 
						|
 | 
						|
# This is the main purpose of the script: Allow local installation of
 | 
						|
# the current repo. It is listed in constraints file and thus any
 | 
						|
# install will be constrained and we need to unconstrain it.
 | 
						|
edit-constraints "$localfile" -- "$CLIENT_NAME"
 | 
						|
 | 
						|
pip install -c"$localfile" -U "$@"
 | 
						|
exit $?
 |