mirror of https://github.com/docker/docs.git
				
				
				
			
		
			
				
	
	
		
			36 lines
		
	
	
		
			972 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			972 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
#!/bin/bash
 | 
						|
set -e
 | 
						|
 | 
						|
# Compile phase run by parallel in test-unit. No support for coverpkg
 | 
						|
 | 
						|
dir=$1
 | 
						|
in_file="$dir/$(basename "$dir").test"
 | 
						|
out_file="$DEST/precompiled/$dir.test"
 | 
						|
# we want to use binary_extension() here, but we can't because it's in main.sh and this file gets re-execed
 | 
						|
if [ "$(go env GOOS)" = 'windows' ]; then
 | 
						|
	in_file+='.exe'
 | 
						|
	out_file+='.exe'
 | 
						|
fi
 | 
						|
testcover=()
 | 
						|
if [ "$HAVE_GO_TEST_COVER" ]; then
 | 
						|
	# if our current go install has -cover, we want to use it :)
 | 
						|
	mkdir -p "$DEST/coverprofiles"
 | 
						|
	coverprofile="docker${dir#.}"
 | 
						|
	coverprofile="$DEST/coverprofiles/${coverprofile//\//-}"
 | 
						|
	testcover=( -cover -coverprofile "$coverprofile" ) # missing $coverpkg
 | 
						|
fi
 | 
						|
if [ "$BUILDFLAGS_FILE" ]; then
 | 
						|
	readarray -t BUILDFLAGS < "$BUILDFLAGS_FILE"
 | 
						|
fi
 | 
						|
 | 
						|
if ! (
 | 
						|
	cd "$dir"
 | 
						|
	go test "${testcover[@]}" -ldflags "$LDFLAGS" "${BUILDFLAGS[@]}" $TESTFLAGS -c
 | 
						|
); then
 | 
						|
	exit 1
 | 
						|
fi
 | 
						|
 | 
						|
mkdir -p "$(dirname "$out_file")"
 | 
						|
mv "$in_file" "$out_file"
 | 
						|
echo "Precompiled: ${DOCKER_PKG}${dir#.}"
 |