Details
-
Type:
Bug
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: stack release
-
Labels:None
-
Story Points:0.1
-
Team:Architecture
Description
The build of w.2018.32 failed during tagging due to new eups products being pulled into the build which did not have the required github team membership. It appears that this was corrected and the weekly build resubmitted.
The 2nd weekly attempt failing attempting to eups distrib install lsst/scarlet as part of the binary tarball build. The failure is clearly from the setup.py.
Writing log to: /build/stack/miniconda3-4.5.4-10a4fa6/EupsBuildDir/Linux64/scarlet-lsst-dev-gc293e6f0ef/build.log |
[build] + eval 'VAL_=$VERSION' |
++ VAL_=lsst-dev-gc293e6f0ef
|
+ '[' -z lsst-dev-gc293e6f0ef ']' |
+ [[ -f SConstruct ]]
|
+ [[ -f configure ]]
|
+ [[ -f Makefile ]]
|
+ [[ -f makefile ]]
|
+ [[ -f GNUmakefile ]]
|
+ [[ -f setup.py ]]
|
+ python setup.py build
|
fatal: Not a git repository (or any of the parent directories): .git
|
Traceback (most recent call last):
|
File "setup.py", line 21, in <module> |
__version__ = '0.3.'+subprocess.check_output(['git', 'rev-parse', 'HEAD'])[:7].decode("utf-8") |
File "/build/python/miniconda3-4.5.4/envs/lsst-scipipe-10a4fa6/lib/python3.6/subprocess.py", line 336, in check_output |
**kwargs).stdout
|
File "/build/python/miniconda3-4.5.4/envs/lsst-scipipe-10a4fa6/lib/python3.6/subprocess.py", line 418, in run |
output=stdout, stderr=stderr)
|
subprocess.CalledProcessError: Command '['git', 'rev-parse', 'HEAD']' returned non-zero exit status 128. |
+ exit -4 |
https://ci.lsst.codes/blue/organizations/jenkins/release%2Ftarball/detail/tarball/3173/pipeline
The failure appears to be caused by shelling out to run git from setup.py, resulting in an eups product that can be build under lsst-build but not by eups distrib install – which means that binary tarballs can not be built. In order for the weekly to run either lsst/scarlet needs to be updated to not assume the build is running in a git repo or be converted to use standard python package tooling such as setuptools_scm or DM-15104 should be reverted until the packaging is repaired.
I'm pretty sure that
DM-15104is needed for the deblending workshop this week at LSST2018 so I don't think we can revert that. I've put in a quick fix on the lsst-dev branch of scarlet which should trap for git not being available. Obviously the fix is not perfect (regardless, setuptools complains about the version formatting but that's for Fred Moolekamp to fix) but I hope it fixes the immediate problem.