Details
-
Type:
Bug
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: sconsUtils
-
Labels:None
-
Story Points:6
-
Epic Link:
-
Team:SQuaRE
Description
After some discussion on Data Management, its clear that sconsUtils is a hard requirement on EUPS for both tests and installation. It was decided by RFC-44 that tests should not depend on EUPS. However, I'd argue that sconsUtils should also not depend on EUPS as any package that uses sconsUtils (the virtual entirety of the stack) can not build or run tests without the presence of EUPS. The current situation is that the complete stack has a hard dependency on EUPS.
Attempting to build sconUtils without the presence of EUPS. The tests fail attempting to import the eups module.
$ SCONSUTILS_DIR=. scons -Q
|
Unable to import eups; guessing flavor
|
CC is gcc version 4.8.3
|
Checking for C++11 support
|
C++11 supported with '-std=c++11'
|
Unable to import eups; guessing flavor
|
Doxygen is not setup; skipping documentation build.
|
ImportError: No module named eups:
|
File "/home/vagrant/sconsUtils/SConstruct", line 9:
|
scripts.BasicSConstruct.initialize(packageName="sconsUtils")
|
File "python/lsst/sconsUtils/scripts.py", line 106:
|
SCons.Script.SConscript(os.path.join(root, "SConscript"))
|
File "/usr/lib/scons/SCons/Script/SConscript.py", line 609:
|
return method(*args, **kw)
|
File "/usr/lib/scons/SCons/Script/SConscript.py", line 546:
|
return _SConscript(self.fs, *files, **subst_kw)
|
File "/usr/lib/scons/SCons/Script/SConscript.py", line 260:
|
exec _file_ in call_stack[-1].globals
|
File "/home/vagrant/sconsUtils/tests/SConscript", line 5:
|
import eups
|
Attempting to bypass the test failures:
[vagrant@jenkins-el7-1 sconsUtils]$ rm -rf tests
|
[vagrant@jenkins-el7-1 sconsUtils]$ SCONSUTILS_DIR=. scons -Q install
|
Unable to import eups; guessing flavor
|
CC is gcc version 4.8.3
|
Checking for C++11 support
|
C++11 supported with '-std=c++11'
|
Error with git version: uncommitted changes
|
Found problem with version number; update or specify force=True to proceed
|
Attachments
Issue Links
- blocks
-
DM-2768 investigate decomposition of stack build into independent packages
- Done
-
RFC-44 Remove build system dependencies from tests
- Implemented
- is duplicated by
-
DM-1164 remove dependency between sconsUtils and eups
- Won't Fix
- is triggered by
-
RFC-69 Refactor sconsUtils to enhance usability in CI
- Adopted
- is triggering
-
DM-3655 LSST_CFG_PATH support broken because of recent sconsUtils change
- Won't Fix
- relates to
-
DM-3208 sconsUtils "probe" refactoring
- To Do
Activity
Assignee | Joshua Hoblitt [ jhoblitt ] | Jim Bosch [ jbosch ] |
Assignee | Jim Bosch [ jbosch ] | Frossie Economou [ frossie ] |
Team | SQuaRE [ 10302 ] |
Description |
After some discussion on Data Management, its clear that sconsUtils is a hard requirement on EUPS for both tests and installation. It was decided by Attempting to build sconUtils without the presence of EUPS. The tests fail attempting to import the eups module. {code} $ SCONSUTILS_DIR=. scons -Q Unable to import eups; guessing flavor CC is gcc version 4.8.3 Checking for C++11 support C++11 supported with '-std=c++11' Unable to import eups; guessing flavor Doxygen is not setup; skipping documentation build. ImportError: No module named eups: File "/home/vagrant/sconsUtils/SConstruct", line 9: scripts.BasicSConstruct.initialize(packageName="sconsUtils") File "python/lsst/sconsUtils/scripts.py", line 106: SCons.Script.SConscript(os.path.join(root, "SConscript")) File "/usr/lib/scons/SCons/Script/SConscript.py", line 609: return method(*args, **kw) File "/usr/lib/scons/SCons/Script/SConscript.py", line 546: return _SConscript(self.fs, *files, **subst_kw) File "/usr/lib/scons/SCons/Script/SConscript.py", line 260: exec _file_ in call_stack[-1].globals File "/home/vagrant/sconsUtils/tests/SConscript", line 5: import eups {code} Attempting to bypass the test failures: {code} [vagrant@jenkins-el7-1 sconsUtils]$ rm -rf tests [vagrant@jenkins-el7-1 sconsUtils]$ SCONSUTILS_DIR=. scons -Q install Unable to import eups; guessing flavor CC is gcc version 4.8.3 Checking for C++11 support C++11 supported with '-std=c++11' Error with git version: uncommitted changes Found problem with version number; update or specify force=True to proceed {code} |
After some discussion on Data Management, its clear that sconsUtils is a hard requirement on EUPS for both tests and installation. It was decided by Attempting to build sconUtils without the presence of EUPS. The tests fail attempting to import the eups module. {code} $ SCONSUTILS_DIR=. scons -Q Unable to import eups; guessing flavor CC is gcc version 4.8.3 Checking for C++11 support C++11 supported with '-std=c++11' Unable to import eups; guessing flavor Doxygen is not setup; skipping documentation build. ImportError: No module named eups: File "/home/vagrant/sconsUtils/SConstruct", line 9: scripts.BasicSConstruct.initialize(packageName="sconsUtils") File "python/lsst/sconsUtils/scripts.py", line 106: SCons.Script.SConscript(os.path.join(root, "SConscript")) File "/usr/lib/scons/SCons/Script/SConscript.py", line 609: return method(*args, **kw) File "/usr/lib/scons/SCons/Script/SConscript.py", line 546: return _SConscript(self.fs, *files, **subst_kw) File "/usr/lib/scons/SCons/Script/SConscript.py", line 260: exec _file_ in call_stack[-1].globals File "/home/vagrant/sconsUtils/tests/SConscript", line 5: import eups {code} Attempting to bypass the test failures: {code} [vagrant@jenkins-el7-1 sconsUtils]$ rm -rf tests [vagrant@jenkins-el7-1 sconsUtils]$ SCONSUTILS_DIR=. scons -Q install Unable to import eups; guessing flavor CC is gcc version 4.8.3 Checking for C++11 support C++11 supported with '-std=c++11' Error with git version: uncommitted changes Found problem with version number; update or specify force=True to proceed {code} |
Assignee | Frossie Economou [ frossie ] | Joshua Hoblitt [ jhoblitt ] |
Reviewers | Jim Bosch, Kian-Tat Lim, Paul Price, Tim Jenness [ jbosch, ktl, price, tjenness ] | |
Status | To Do [ 10001 ] | In Review [ 10004 ] |
Epic Link |
|
Story Points | 6 |
Resolution | Done [ 10000 ] | |
Status | In Review [ 10004 ] | Done [ 10002 ] |
Assignee | Joshua Hoblitt [ jhoblitt ] | J Matt Peterson [ jmatt ] |
Assignee | J Matt Peterson [ jmatt ] | Joshua Hoblitt [ jhoblitt ] |
Summary | sconsUtil has a hard dependency on EUPS for both tests and installation | sconsUtils has a hard dependency on EUPS for both tests and installation |
I've found another hard dep. on eups, if the install target is attempting to deploy a directory named 'ups' it shells out to invoke eups.
https://github.com/lsst/sconsUtils/blob/54c983ffe9714a33657c4388de3506fe7a40518d/python/lsst/sconsUtils/installation.py#L366