So, we build our products from automated build scripts that are run
within the TeamCity framework. I am trying to get this to work for
the first time with pyinstaller and I'm a bit mystified by the (lack
of) output.
The relevant part of the build output looks like this (the number at
the beginning of each line is a timestamp, print output is in
bold):
1.93 build-cmd.py(129): print
"pyinstaller exists: %s" % os.path.exists(pyinstaller_exe[0])
pyinstaller exists: True
1.93 build-cmd.py(130): print "target
exists: %s" % os.path.exists(target[0])
target exists: True
1.93 build-cmd.py(131): print "about to
call %s " % (pyinstaller_exe + args + target)
about to call
['C:\\Python27\\Scripts\\pyinstaller.exe', '-y', '-w',
'--clean', '--onefile', '--log-level ', 'DEBUG', '-p ',
'C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP',
'--distpath ',
'C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP',
'C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP\\apply_update.py']
1.93 build-cmd.py(132):
subprocess.check_call(pyinstaller_exe + args + target)
2.33 build-cmd.py(133): except Exception as
e:
2.33 build-cmd.py(134): print
"Pyinstaller failed"
Pyinstaller failed
2.33 build-cmd.py(135): print repr(e)
CalledProcessError()
2.33 build-cmd.py(136): try:
2.33 build-cmd.py(137): print
"returncode: %s" % e.returncode
returncode: 2
2.33 build-cmd.py(138): print
"command: %s" % e.cmd
command: ['C:\\Python27\\Scripts\\pyinstaller.exe',
'-y', '-w', '--clean', '--onefile', '--log-level ', 'DEBUG',
'-p ',
'C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP',
'--distpath ',
'C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP',
'C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP\\apply_update.py']
2.33 build-cmd.py(139): print
"output: %s" % e.output
output: None
2.33 build-cmd.py(142): sys.exit(1)
Which as you can see has no output. Running the equivalent command
by hand works just fine:
C:\\Python27\\Scripts\\pyinstaller.exe -y -w
--clean --onefile --log-level DEBUG -p
C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP
--distpath
C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP
C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP\\apply_update.py
which has lots of nice output ending with:
9115 INFO: Appending archive to EXE
C:\\cygwin64\\home\\coyot\\hg\\viewer\\vmp-standalone\\stage\\VMP\apply_update.exe
and indeed the file exists:
01/31/2017 11:59 AM 6,785,597
apply_update.exe
So my questions two are:
1) Any idea on how to coax more information into CalledProcessError
to see what is going on?
2) More directly, what is failing here?
Thanks in advance,
coyot
GLENN GLAZER | Senior Software Engineer
m: 562.305.2920 | email:
co...@lindenlab.com | Second Life: Coyot Linden
LINDEN LAB | Create Virtual Experiences