summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2015-10-151. Specifying the output file path for test-install is now an option (vs. anPeter Scheibel2-12/+22
argument). The default path is [package id].xml in the CWD where test-install is called from. 2. Fixed a bug with package.build_log_path (which was added in this branch). 3. keep_stage for package.do_install is now set. This allows uninstalling and reinstalling packages without (re) downloading them.
2015-10-15Move logic for tracking the build log into package.py (since that is what isPeter Scheibel2-9/+10
managing the build log) and expose as package.build_log_path.
2015-10-15Update test failure output: don't include the entire build log, just lines whichPeter Scheibel1-5/+10
mention errors (or if no such lines can be found, output the last 10 lines from the log).
2015-10-15Use spec.traverse vs. recursive function.Peter Scheibel1-20/+16
Also even though I calculated which installs are new (e.g. vs. packages that have already been installed by a previous command) I forgot to make use of that in create_test_output (so I was always generating test output even if a package had been installed before running the test-install command). Note to avoid confusion: the 'handled' variable (removed in this commit) did not serve the same purpose as 'newInstalls': it was originally required because the recursive approach would visit the same dependency twice if more than one package depended on it.
2015-10-15Always run with verbose output (so eliminate it as an option). Also remove otherPeter Scheibel1-22/+1
commented options.
2015-10-15Changing name of file requires changing function name to be invoked as a commandPeter Scheibel1-1/+1
2015-10-15Change name of file to conform to conventions.Peter Scheibel1-0/+0
2015-10-15Edit function names to conform to naming conventions.Peter Scheibel1-7/+7
2015-10-15Only install 1 top-level package with testinstall. Otherwise if multiplePeter Scheibel1-10/+6
packages are specified and a prior one fails, it will prevent any of the others from succeeding (and generating test output) even if they don't share dependencies.
2015-10-13Make sure to generate output for dependencies as if they were separate tests:Peter Scheibel1-20/+51
the original intent was to generate output as if each package was a unit test, but I noticed that I was only generating test output for top-level packages.
2015-10-13Add spec YAML format to test output.Peter Scheibel1-8/+11
2015-10-12Don't create test output for any package that was already installed.Peter Scheibel1-11/+11
2015-10-121. Added Junit XML formatPeter Scheibel1-16/+34
2. Specify output to a file vs. a directory 3. Use [1] and [2] to write an XML file tracking success of package installs in Junit XML format
2015-10-12Adding command testinstall. See "spack testinstall -h" for documentation.Peter Scheibel1-0/+129
Still need to add output formatting (in a commonly parse-able format like Junit or TAP). May want to adjust how the build log is accessed in case of a build failure.
2015-09-27Remove enabled variants from install prefix.Todd Gamblin1-6/+1
- these make the prefix too long in many cases. - users can figure out which install is which by querying.
2015-09-27Remove special characters (@, %, +, ~, etc) from stage nameTodd Gamblin1-2/+9
2015-08-27Fix for GitHub #95Todd Gamblin1-3/+21
develop: compiler clang@unknown created for /usr/bin/clang-format https://github.com/scalability-llnl/spack/issues/95
2015-08-12Merge pull request #88 from trws/git_depth_attemptTodd Gamblin1-3/+12
adding a fallback on failure with git --depth
2015-08-04Use absolute paths to spack compiler wrappers in CC/CXX/F77/FCTodd Gamblin1-4/+4
2015-07-27adding a fallback on failure with git --depthTom Scogland1-3/+12
Certain remote protocols don't support the `--depth` option. Since this can't be checked by URL type or in any sane way locally, this version attempts to clone git repositories with the --depth option, and if that fails attempts the clone again without it.
2015-07-24Add Python version test to detect {} in version strings.Todd Gamblin2-8/+21
- {} is not compatible with Python 2.6
2015-07-23Fix Python 2.6 compatibility issue.Todd Gamblin2-9/+20
2015-07-16Fix ProviderIndex.update(), which didn't remove stale providers.Todd Gamblin1-1/+10
2015-07-16Update concretize to check for more changes and iterate further.Todd Gamblin3-29/+65
2015-07-14Fix mangled error message.Todd Gamblin1-2/+2
2015-07-14Fix regression of install -j.Todd Gamblin1-0/+4
2015-07-13Add test to check packages for Python2.6 compatibility, as well as core.Todd Gamblin1-2/+15
2015-07-02add env. var. in modules: LIBRARY_PATH and PKG_CONFIG_PATHFlorent Pruvost1-1/+5
2015-07-02Merge branch 'features/toggle-build-output' into developTodd Gamblin1-15/+78
2015-07-02Better python template for 'spack create'Todd Gamblin3-19/+128
2015-06-20Fix bug in uninstall (regression in 0fc3b58)Todd Gamblin2-15/+35
2015-06-20log_output now allows echo to be toggled wtih 'v' keyTodd Gamblin1-15/+78
2015-06-13Fix for `git pull --tags` when using git 1.7.1Todd Gamblin2-2/+11
- Added `ignore_errors` option to `Executable.__call__` - Can avoid raising errors on *specific* error return values.
2015-06-13Fix for repos with many tagsTom Scogland1-1/+8
Ensures all tags are ready before checkout, using `--branch` if possible and an extra pull if that is not available. Also adds `--depth 1` to create shallow clones if the git version is sufficient. Fixes #64.
2015-06-13removing vestigial lines from a previous commitTom Scogland1-4/+0
2015-06-11Small ruby enhancement and tmuxinator packageTom Scogland1-0/+7
It is currently less painful to pull the source from github, compile it into a gem, then install the gem, than it is to download a gem and install it. This still lacks an activation mechanism, but `spack use tmuxinator` is functional.
2015-06-07Try a little harder in concretize_version() -- concretize unsafe versions too.Todd Gamblin1-4/+20
- This can result in the user being prompted to download an unsafe version. - Avoids overly strict errors when something *could* be satisfiable but we don't know about hte version.
2015-06-07Add some comments b/c I didn't understand my own test.Todd Gamblin1-0/+3
2015-06-07SPACK-38: Allow specs to be indexed by virtual dependencies.Todd Gamblin4-17/+121
- The following now work differently: spec['mpi'] spec['blas'] This can return a spec for openmpi, mpich, mvapich, etc., EVEN if the spec is already concretized. This means that in a package that `depends_on('mpi')`, you can do `spec['mpi']` to see what it was concretized to. This should simplify MPI and BLAS packages. 'mpi' in spec 'blas' in spec Previously, if the spec had been concretized, these would be `False` because there was not a dependency in the DAG with either of these names. These will now be `True` even if the spec has been concretized. So, e.g., this will print "YES" s = Spec('callpath ^mpich') if 'mpi' in spec: print "YES" - Similarly, this will be True: Spec('mpich').satisfies('mpi') - Because of the way virtual dependencies are currently implemented, the above required some fiddling around with `package.py` so that it would never call `Spec.__contains__` (and result in endless recursion). - This should be fixed by allowing virutal dependnecies to have their own package class. - This would allow a quicker check for vdeps, without a call to `all_packages`. - For the time being, `package.py` shouldn't call `__contains__`
2015-06-06Executables now have a useful __str__ function.Todd Gamblin1-0/+5
2015-06-06Cleanup and consolidate error handlingTodd Gamblin3-10/+20
2015-06-06Add FileFilter convenience class to llnl.util.filesystem.Todd Gamblin1-1/+10
2015-06-06Removed autosave files from previous commit.Saravan Pantham2-229/+0
2015-06-06Fixed BLAS and Lapack installationsSaravan Pantham3-1/+229
2015-06-01Fix #48: Ignore hidden files when deciding how to stage.Todd Gamblin1-5/+14
- Expanding archvies like MAGMA 1.6.2 creates extra hidden files that confuse Spack's staging mechanism. - Added a special case to ignore hidden files when checking whether the tarball exploded.
2015-06-01Add -S/--stages option to spack cd/spack location.Todd Gamblin1-0/+5
- can now change dir to top-level stage
2015-05-31Fix #46: make(parallel=False) regression.Todd Gamblin4-6/+133
- Added some tests to make sure this stays in place.
2015-05-29SPACK-69: spack install now logs build output to install directory.Todd Gamblin5-59/+141
- spack install suppresses build output by default. - use install -v to show build output on the console too - package.py uses log_output context to redirect output and log it to a file - filters color codes out of output written to file - optionally echos to the terminal - YAML directory layout knows about its build log. - can get path to install build log to from directory layout - Package.install now copies the build log to $prefix/.spack/build.out - Error message from failed install execution now includes build log location
2015-05-29debug instead of info logging in llnl.util.filesystemTodd Gamblin1-2/+2
2015-05-29SPACK-69: Add context manager to fork and log output in a with block.Todd Gamblin1-0/+178