You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In Pav 2.0, building is expected to be done separately from running a test, unless building is the test itself.
To further this, the following changes need to be added to Pavilion in 2.0:
Improved build section
Environment variables to set
Modules to load (see )
Extra files to include in the build directory.
A list of commands to run to complete the build.
Cached builds
All of the above being equal (and the source and host being the same), builds should be re-usable from test run to test run.
The contents of the build section, hashes of the extra files, and hash of the source should be combined to form a build hash to identify identical builds.
Changes in environments (and how Pavilion handles loading modules) could result in builds that appear to be equivalent, but aren't. I think this will be fairly rare, however, and users should be warned of this possibility in the documentation.
When, and where to build.
Builds should live in the $PAV_ENV/builds/<build_hash> directories.
Builds should happen when asked for, and before any tests in a series run.
This will require a locking system for the build caches.
Building
Building occurs in the following steps:
Gather build configuration info and generate build hash.
Create build cache directory (and lock it).
Copy build source and extra files into cache directory.
Write a script to run the build.
a. Setup build environment vars per config
b. Load modules
c. Run build commands sequence.
Run the build script.
Unlock cache directory.
The text was updated successfully, but these errors were encountered:
In Pav 2.0, building is expected to be done separately from running a test, unless building is the test itself.
To further this, the following changes need to be added to Pavilion in 2.0:
Building
Building occurs in the following steps:
a. Setup build environment vars per config
b. Load modules
c. Run build commands sequence.
The text was updated successfully, but these errors were encountered: