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…
Reference in New Issue