Jenkins Build for master
Currently Jenkins Build for the master branch is disabled because:
- Issue #849
- Changes https://gerrit.gromacs.org/277 and https://gerrit.gromacs.org/102 are needed. Depending change needs to be reviewed and release-4-5-patches merged into master. I checked and currently it is still possible to merge.
The GTests have to produce xml so that the JUnit plugin can read the output. This is done with the --gtest_output=xml:FILE_PATH option. FILE_PATH should contain the test name. This should be added to src/testutils/TestMacros.cmake. It doesn't hurt if running ctest always produce the xml even outside of Jenkins. What is the best place to put the XML files? Is Testing/Temporary/ a good place to put them?
It would be nice to make LastTest.log available but I can't find an option to do that. Instead, at least for now I changed that ctest is run verbose (-V) so that the information is available on the Jenkins Console page. Or would it be better to just "cat" the LastTest.log? A plugin exists (http://wiki.hudson-ci.org/display/HUDSON/JUnit+Attachments+Plugin) to make additional files available. But it is meant for files per Test (within the test folder) but LastTest.log is global for all tests. But maybe one could somehow make this work.
#1 Updated by Teemu Murtola over 8 years ago
Only https://gerrit.gromacs.org/277 is absolutely needed to make the tests pass in master. The issues fixed in https://gerrit.gromacs.org/102 only surface in the current tests as long as the other commit is not merged.
Testing/Temporary/ is probably good enough place for the XML files. And they will be easy to move somewhere else if we later realize that some other choice would be better, since they won't be in version control and the location is only hard-coded in that one file (plus probably somewhere in Jenkins configuration).
I think ctest -V is good enough for initial diagnosis of possible test failures, in particular when combined with the XML output.
#3 Updated by Teemu Murtola over 8 years ago
There is a separate issue for the min/max problem (#806). Added that and the C++ MPI compilation problem as related tasks.
I don't have access to a Windows machine, so I can't easily fix all the problems. If there is no hurry, I can try to address at least some of the most annoying compiler warnings that come from headers. But in particular changes to source:src/gromacs/utility/path.cpp (which I knew from the start to not compile on Windows) and source:src/gromacs/utility/format.cpp (which I suspected could cause problems) would be best done by someone who can actually test the stuff on Windows.
#4 Updated by Roland Schulz over 8 years ago
With the min/max issue fixed this leaves us with:
src\gromacs\selection\compiler.cpp(692): error C2668: 'log10' : ambiguous call to overloaded function
src\gromacs\trajectoryanalysis\modules.cpp(77): error C3861: 'strncasecmp': identifier not found
src\gromacs\utility\path.cpp(71): error C2065: 'S_IRWXU' : undeclared identifier
src\gromacs\utility\path.cpp(71): error C2065: 'S_IRWXG' : undeclared identifier
src\gromacs\utility\path.cpp(71): error C2065: 'S_IROTH' : undeclared identifier
src\gromacs\utility\path.cpp(71): error C2065: 'S_IWOTH' : undeclared identifier
src\gromacs\utility\path.cpp(71): error C3861: 'mkdir': identifier not found
src\gromacs\utility\path.cpp(97): error C3861: 'S_ISDIR': identifier not found
1) strncasecmp should be gmx_strncasecmp
2) log10: I suppose that this is like with min/max a C/C++ issue. That it has both the math.h/cmath version. But I'm not sure. And I'm not sure how to fix it.
3) Windows doesn't have these S_* defined. What would be the best way to make this platform independent?
#6 Updated by Roland Schulz over 8 years ago
- Status changed from New to Closed
- Assignee set to Roland Schulz
- Target version set to 5.0
Master is being tested and unit tests are nicely shown: