detect failed unity launch and retry
This commit is contained in:
		
							parent
							
								
									091b078713
								
							
						
					
					
						commit
						131e8f8792
					
				
							
								
								
									
										44
									
								
								ci/build.sh
									
									
									
									
									
								
							
							
						
						
									
										44
									
								
								ci/build.sh
									
									
									
									
									
								
							@ -12,28 +12,50 @@ echo "removing previous editor log..."
 | 
			
		||||
 | 
			
		||||
echo "starting build using unity v$unityversion..."
 | 
			
		||||
 | 
			
		||||
# launch unity in batch mode
 | 
			
		||||
open -g $editorpath --args \
 | 
			
		||||
    -batchmode \
 | 
			
		||||
    -quit \
 | 
			
		||||
    -nographics \
 | 
			
		||||
    -developmentBuild \
 | 
			
		||||
    -executeMethod "Ktyl.Util.BuildCommand.Run" \
 | 
			
		||||
    -logFile $editorlogpath \
 | 
			
		||||
    -projectPath "$(pwd)/game"
 | 
			
		||||
unitypid=-1
 | 
			
		||||
 | 
			
		||||
launch_unity () {
 | 
			
		||||
    # launch unity in batch mode
 | 
			
		||||
    open -g $editorpath --args \
 | 
			
		||||
        -batchmode \
 | 
			
		||||
        -quit \
 | 
			
		||||
        -nographics \
 | 
			
		||||
        -developmentBuild \
 | 
			
		||||
        -executeMethod "Ktyl.Util.BuildCommand.Run" \
 | 
			
		||||
        -logFile $editorlogpath \
 | 
			
		||||
        -projectPath "$(pwd)/game"
 | 
			
		||||
 | 
			
		||||
        unitypid=`pgrep -n Unity`
 | 
			
		||||
        echo "launched unity ($pid)"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
launch_unity
 | 
			
		||||
 | 
			
		||||
# wait for editor log to exist
 | 
			
		||||
tries=60
 | 
			
		||||
count=0
 | 
			
		||||
while [ ! -f $editorlogpath ]
 | 
			
		||||
do
 | 
			
		||||
    if ps -p $unitypid > /dev/null
 | 
			
		||||
    then
 | 
			
		||||
        echo "unity ok ($unitypid)"
 | 
			
		||||
    else
 | 
			
		||||
        echo "unity is no longer running - trying again"
 | 
			
		||||
 | 
			
		||||
        # reset launch attempts
 | 
			
		||||
        count=0
 | 
			
		||||
        launch_unity
 | 
			
		||||
    
 | 
			
		||||
        continue
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    # wait a second
 | 
			
		||||
    sleep 1
 | 
			
		||||
 | 
			
		||||
    # decrement
 | 
			
		||||
    count=`expr $count + 1`
 | 
			
		||||
 | 
			
		||||
    if [ $count -eq $tries ] ; then
 | 
			
		||||
        echo "early timeout - $tries seconds elapsed since launch attempt"
 | 
			
		||||
        echo "early timeout - $tries seconds elapsed since last launch attempt"
 | 
			
		||||
        exit 1
 | 
			
		||||
    fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user