Commit graph

940 commits

Author SHA1 Message Date
Peter Scheibel
3b554c709b Fetch errors were also terminating runs of test-install with system exit, so
stage.fetch() was updated to raise a FetchError instead of calling tty.die().
Output is the same for spack install in case of a fetch error.
2015-10-26 15:26:08 -07:00
Peter Scheibel
9576860f8c Making SpackError reference consistent. 2015-10-26 14:27:44 -07:00
Peter Scheibel
6a16040462 Automatically create a 'test-output' directory in the current directory if no
output path is specified. Test output files are placed in this directory.
Furthermore the filenames now have the prefix "test" (but otherwise are the
string representation of the spec ID as before).
2015-10-26 11:58:52 -07:00
Peter Scheibel
cc0ee3dc29 The HTML number conversion regex operating against a byte string will only
convert individual bytes, so therefore incorrectly converts utf-8 encoded
characters. Decoding byte strings to unicode objects results in correct HTML
number encodings.
2015-10-23 20:56:06 -07:00
Peter Scheibel
d76c923623 1. Rename CommandError -> InstallError
2. InstallError now subclasses SpackError vs. StandardError (so it is now
handled by the spack shell script)
2015-10-23 16:18:06 -07:00
Peter Scheibel
ea872f8098 1. Added CommandError exception to build_environment
2. The parent of a failed child process in build_environment.fork no longer
calls sys.exit - instead it raises a CommandError (from [1])
3. test-install command now attempts to install all packages even if one fails
2015-10-22 17:44:16 -07:00
Peter Scheibel
246423b4b4 Generate test results (designated as skipped) for parents of failed dependencies 2015-10-22 16:00:03 -07:00
Peter Scheibel
39f0f000f8 Created unit test for core logic in test-install command. 2015-10-15 22:02:14 -07:00
Peter Scheibel
6cd976d036 Better description for test-install command 2015-10-15 20:13:08 -07:00
Peter Scheibel
49b91235bb Minor edit for clarity (generate output for single top level spec vs. iterating
through collection of size 1)
2015-10-15 19:59:57 -07:00
Peter Scheibel
82ed1bc343 Originally I enforced specifying 1 top-level package with the test-install
command by having it consume exactly 1 positional argument (i.e. by removing
"nargs=argparse.REMAINDER") but this does not work when configuring dependencies
of a top-level package (which show up as additional positional args). Instead
now there is an explicit check to ensure there is only 1 top-level package.
2015-10-15 19:38:47 -07:00
Peter Scheibel
e451421db3 1. Specifying the output file path for test-install is now an option (vs. an
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-15 19:22:36 -07:00
Peter Scheibel
4997f0fe57 Move logic for tracking the build log into package.py (since that is what is
managing the build log) and expose as package.build_log_path.
2015-10-15 12:44:02 -07:00
Peter Scheibel
c985ad7644 Update test failure output: don't include the entire build log, just lines which
mention errors (or if no such lines can be found, output the last 10 lines from
the log).
2015-10-15 12:23:56 -07:00
Peter Scheibel
b9bf0b942c Use spec.traverse vs. recursive function.
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-15 11:52:08 -07:00
Peter Scheibel
f2b4341ad6 Always run with verbose output (so eliminate it as an option). Also remove other
commented options.
2015-10-15 10:45:03 -07:00
Peter Scheibel
11861fb8d7 Changing name of file requires changing function name to be invoked as a command 2015-10-15 10:35:42 -07:00
Peter Scheibel
e3d703b80f Change name of file to conform to conventions. 2015-10-15 10:33:39 -07:00
Peter Scheibel
2ae7839b66 Edit function names to conform to naming conventions. 2015-10-15 10:26:13 -07:00
Peter Scheibel
0d66362cee Only install 1 top-level package with testinstall. Otherwise if multiple
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-15 10:17:08 -07:00
Peter Scheibel
71dcf8833c Make sure to generate output for dependencies as if they were separate tests:
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-13 19:02:41 -07:00
Peter Scheibel
1ce6d8b627 Add spec YAML format to test output. 2015-10-13 10:41:47 -07:00
Peter Scheibel
9f56d9c807 Don't create test output for any package that was already installed. 2015-10-12 20:56:03 -07:00
Peter Scheibel
6cd22e5786 1. Added Junit XML format
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-12 20:49:23 -07:00
Peter Scheibel
b7249d66b3 Adding command testinstall. See "spack testinstall -h" for documentation.
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-10-12 19:18:31 -07:00
Todd Gamblin
58c5373890 update warning message for spack -k.
- warning said it didn't do checksums; really does.
2015-10-08 00:14:44 -07:00
Todd Gamblin
5d64012868 Merge branch 'features/libxcb-1.11.1' into develop 2015-10-08 00:13:47 -07:00
Gregory L. Lee
6fcf16b710 added libxcb version 1.11.1 2015-10-05 12:59:26 -07:00
Todd Gamblin
cc6252cdfa Merge pull request #118 from scalability-llnl/features/scr
update scr to 1.1.8
2015-09-29 18:21:37 -07:00
Adam Moody
5563c66675 update scr to 1.1.8 2015-09-29 18:18:34 -07:00
Todd Gamblin
dd21a01dc4 Merge pull request #116 from mamelara/develop
Added samtools bioinformatics software
2015-09-27 17:29:50 -07:00
Todd Gamblin
8818f4ac5e Remove enabled variants from install prefix.
- these make the prefix too long in many cases.
- users can figure out which install is which by querying.
2015-09-27 17:01:35 -07:00
Todd Gamblin
adbd393c39 Remove special characters (@, %, +, ~, etc) from stage name 2015-09-27 17:01:35 -07:00
Mario Melara
13eb461ec3 Adding bowtie2 package along with patch 2015-09-24 11:21:54 -07:00
Mario Melara
521632b3dc Added samtools bioinformatics software 2015-09-23 16:30:44 -07:00
Todd Gamblin
6d4eed3845 Merge pull request #102 from RasmusWL/features/fish
Add fish (shell) package
2015-09-23 01:37:59 -07:00
Todd Gamblin
82ea7aec51 Merge pull request #106 from justintoo/add-package-doxygen
(Package) Add Doxygen (v1.8.10)
2015-09-23 01:37:31 -07:00
Todd Gamblin
d474eeb424 Merge pull request #110 from scalability-llnl/features/boostupdate
update boost package for new releases
2015-09-23 00:32:22 -07:00
Todd Gamblin
5d6baacc56 Merge pull request #111 from scalability-llnl/features/protobuf
add protobuf package
2015-09-23 00:31:26 -07:00
Todd Gamblin
46cf0a23d9 Merge pull request #112 from scalability-llnl/features/glog
add glog package
2015-09-23 00:30:37 -07:00
Todd Gamblin
f02af701e5 Merge pull request #113 from scalability-llnl/features/gflags
add gflags package
2015-09-23 00:29:50 -07:00
Todd Gamblin
5f826a0ab7 Merge pull request #114 from scalability-llnl/features/snappy
Features/snappy
2015-09-23 00:27:27 -07:00
Todd Gamblin
ba83dd56a1 Merge pull request #115 from scalability-llnl/features/lmdb
add lmdb package
2015-09-23 00:21:22 -07:00
Adam Moody
84823ed828 add lmdb package 2015-09-22 12:17:01 -07:00
Adam Moody
3ade141829 add leveldb package 2015-09-22 11:59:09 -07:00
Adam Moody
30acc6f2f0 add snappy package 2015-09-21 16:45:59 -07:00
Adam Moody
22ba02b22b add gflags package 2015-09-21 16:40:23 -07:00
Adam Moody
b5d7cd55ce add glog package 2015-09-21 16:30:11 -07:00
Adam Moody
e4e22ed17e add protobuf package 2015-09-21 16:19:50 -07:00
Justin Too
99ca0f3153 (Package) Add Doxygen (v1.8.10) 2015-09-11 20:29:18 +00:00