-
Notifications
You must be signed in to change notification settings - Fork 565
Legacy Reproducing PR Testing Errors
Currently all of the Pull Request testing builds are Linux GCC builds that can be easily reproduced on any RHEL 7 machine that has access to the SEMS NFS.
source <Trilinos_home_dir>/cmake/std/sems/PullRequestGCC7.2.0TestingEnv.sh
or
source <Trilinos_home_dir>/cmake/std/sems/PullRequestIntel17.0.1TestingEnv.sh
Replace <Trilinos_home_dir> with the path to the top level directory of your Trilinos clone.
Replace X.Y with the appropriate values to indicate the version of GCC that you want to use or load the Intel version, considering the test failures you are looking into.
cd <your_build_dir>
cmake -C <Trilinos_home_dir>/cmake/std/PullRequestLinuxGCCX.YTestingSettings.cmake -DTrilinos_ENABLE_<all packages changed in pull request>=ON <Trilinos_home_dir>
Replace <your_build_dir> with the path to and name of your Trilinos build directory.
Replace <Trilinos_home_dir> with the path to the top level directory of your Trilinos clone.
Replace X.Y as described above.
Create an option in the style of -DTrilinos_ENABLE_<package_name>=ON
for every package modified by your commits (dependencies and upstream packages will be dealt with automatically).
Note: you can optionally add -G Ninja
to use the ninja make system which is considerably faster. The PR builds use this now for this reason. You can then call ninja -j X
instead of make -j X
(or use make NP=X
with Ninja or just make
with Ninja). See Building (Ninja generator).
module purge
In Section 2 above you're shown to add the -DTrilinos_ENABLE_<all packages changed in pull request>=ON
, but where can you find out what packages were enabled by the pull request tester?
This can be found via the link provided by the autotester in its message on GitHub. The status message from the autotester will provide a link that looks something like CDash Test Results for PR# NNNN.
, if you follow that link you will arrive on the CDash page containing the results from your pull request's tests.
To find the enabled packages, you would click the values in the Configure column cells in the table, this should take you to a page that provides information about the build itself. Towards the top of this page there should be a "Configure Output" section:
Configure Output:
loading initial cache file /scratch/trilinos/workspace/trilinos-folder/Trilinos_pullrequest_intel_17.0.1/Trilinos/cmake/std/PullRequestLinuxIntelTestingSettings.cmake
loading initial cache file /scratch/trilinos/workspace/trilinos-folder/Trilinos_pullrequest_intel_17.0.1/packageEnables.cmake
-- Setting Trilinos_ENABLE_MueLu = ON
Configuring Trilinos build directory
The lines -- Setting Trilinos_ENABLE_* = ON
contain the enabled packages for the testing and provide you the list of what packages should be enabled in Section 2.
-
I'm getting the error
ImportError: No module named site
- Try unloading the SEMS python modules:
module unload sems-python
ormodule unload sems-archive-python
after sourcing thePullRequest*TestingEnv.sh
script
- Try unloading the SEMS python modules:
Copyright © Trilinos a Series of LF Projects, LLC
For web site terms of use, trademark policy and other project policies please see https://lfprojects.org.
Trilinos Developer Home
Trilinos Package Owners
Policies
New Developers
Trilinos PR/CR
Productivity++
Support Policy
Test Dashboard Policy
Testing Policy
Managing Issues
New Issue Quick Ref
Handling Stale Issues and Pull Requests
Release Notes
Software Quality Plan
Proposing a New Package
Guidance on Copyrights and Licenses
Tools
CMake
Doxygen
git
GitHub Notifications
Mail lists
Clang-format
Version Control
Initial git setup
'feature'/'develop'/'master' (cheatsheet)
Simple centralized workflow
Building
SEMS Dev Env
Mac OS X
ATDM Platforms
Containers
Development Tips
Automated Workflows
Testing
Test Harness
Pull Request Testing
Submitting a Pull Request
Pull Request Workflow
Reproducing PR Errors
Addressing Test Failures
Trilinos Status Table Archive
Pre-push (Checkin) Testing
Remote pull/test/push
PR Creation & Approval Guidelines for Tpetra, Ifpack2, and MueLu Developers