Skip to content

Commit

Permalink
CTest driver: Fix passing in list of extra repos separated with ','
Browse files Browse the repository at this point in the history
This is needed to fix the 'make dashboard' target.  After the refactoring in
TriBITS #73, the 'make dashboard' target was broken.  It was only processing
the first POST extra repo.  This was due to the code not splitting the list of
extra repos coming from the 'make dashboard' target correctly.

We don't have any direct 'make dashboard' tests but I was able to add tests
for the TribitsCTestDriverCore.cmake file that exposed the defect and fix the
problem.  The fix was a simple split of the lists.

I also improved the printout of the ignore of NOPACKAGES repos a little.

Build/Test Cases Summary
Enabled Packages: TriBITS, CTeuchos, ForTeuchos
0) MPI_RELEASE_DEBUG_SHARED => passed: passed=202,notpassed=0 (3.99 min)
  • Loading branch information
Roscoe A. Bartlett committed Jul 17, 2015
1 parent 50f99b8 commit 4b02319
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 2 deletions.
54 changes: 53 additions & 1 deletion test/ctest_driver/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -371,7 +371,7 @@ CREATE_CTEST_DEPENDENCY_HANDLING_TEST_CASE(
"Reading list of POST extra packages from .*/MockTrilinos/preCopyrightTrilinos/PackagesList.cmake"
"Trilinos_NUM_PACKAGES='26'"
"Trilinos_NUM_TPLS='20'"
"Skipping reading packages and TPLs for extra repo Dakota because marked NOPACKAGES"
"Skipping reading packages and TPLs for POST extra repo Dakota because marked NOPACKAGES"
"Explicitly enabled packages on input .* Stalix 1"
"Explicitly disabled packages on input .* Stokhos 1"
"Enabling all SE packages that are not currently disabled because of Trilinos_ENABLE_ALL_PACKAGES=ON"
Expand Down Expand Up @@ -420,6 +420,58 @@ CREATE_CTEST_DEPENDENCY_HANDLING_TEST_CASE(
)


CREATE_CTEST_DEPENDENCY_HANDLING_TEST_CASE(
PreExtraRepos_ExtraReposFile_ExtraReposList
ARGS
Trilinos_EXTRAREPOS_FILE="${CMAKE_CURRENT_SOURCE_DIR}/../core/DependencyUnitTests/PreAndExtraRepositoriesList.cmake"
Trilinos_PRE_REPOSITORIES=preRepoOnePackage
Trilinos_EXTRA_REPOSITORIES=preCopyrightTrilinos,extraTrilinosRepo,Dakota
Trilinos_ENABLE_KNOWN_EXTERNAL_REPOS_TYPE=Nightly
Trilinos_ENABLE_SECONDARY_TESTED_CODE=ON
PASS_REGULAR_EXPRESSION_ALL
"-- Adding PRE extra Continuous repository preRepoOnePackage"
"-- Adding POST extra Continuous repository preCopyrightTrilinos"
"-- Adding POST extra Nightly repository extraTrilinosRepo"
"-- Adding POST extra Continuous repository Dakota"
"-- Trilinos_PRE_REPOSITORIES=.preRepoOnePackage."
"-- Trilinos_EXTRA_REPOSITORIES=.preCopyrightTrilinos,extraTrilinosRepo,Dakota."
"Reading list of PRE extra packages from .*/MockTrilinos/preRepoOnePackage/PackagesList.cmake"
"Reading list of native packages from .*/MockTrilinos/PackagesList.cmake"
"Reading list of POST extra packages from .*/preCopyrightTrilinos/PackagesList.cmake"
"Reading list of POST extra packages from .*/extraTrilinosRepo/PackagesList.cmake"
"Skipping reading packages and TPLs for POST extra repo Dakota because marked NOPACKAGES"
"Final set of enabled packages: preRepoOnePackage TrilinosFramework Teuchos .* Teko"
"Processing current package preRepoOnePackage: libs=.ON., tests=.ON."
"CONFIGURE_OPTIONS = ..*-DTrilinos_EXTRAREPOS_FILE:STRING=.*/DependencyUnitTests/PreAndExtraRepositoriesList.cmake.*-DTrilinos_ENABLE_preRepoOnePackage:BOOL=ON."
)


CREATE_CTEST_DEPENDENCY_HANDLING_TEST_CASE(
PreExtraRepos_ExtraReposFile_ExtraReposListPartial
ARGS
Trilinos_EXTRAREPOS_FILE="${CMAKE_CURRENT_SOURCE_DIR}/../core/DependencyUnitTests/PreAndExtraRepositoriesList.cmake"
Trilinos_PRE_REPOSITORIES=
Trilinos_EXTRA_REPOSITORIES=preCopyrightTrilinos,Dakota
Trilinos_ENABLE_KNOWN_EXTERNAL_REPOS_TYPE=Nightly
Trilinos_ENABLE_SECONDARY_TESTED_CODE=ON
PASS_REGULAR_EXPRESSION_ALL
"-- Adding PRE extra Continuous repository preRepoOnePackage"
"-- Adding POST extra Continuous repository preCopyrightTrilinos"
"-- Adding POST extra Continuous repository Dakota"
"-- Trilinos_PRE_REPOSITORIES=.preRepoOnePackage."
"-- Trilinos_EXTRA_REPOSITORIES=.preCopyrightTrilinos,Dakota."
"Reading list of PRE extra packages from .*/MockTrilinos/preRepoOnePackage/PackagesList.cmake"
"Reading list of native packages from .*/MockTrilinos/PackagesList.cmake"
"Reading list of POST extra packages from .*/preCopyrightTrilinos/PackagesList.cmake"
"Skipping reading packages and TPLs for POST extra repo Dakota because marked NOPACKAGES"
"Final set of enabled packages: preRepoOnePackage TrilinosFramework Teuchos .* Teko"
"Processing current package preRepoOnePackage: libs=.ON., tests=.ON."
"CONFIGURE_OPTIONS = ..*-DTrilinos_EXTRAREPOS_FILE:STRING=.*/DependencyUnitTests/PreAndExtraRepositoriesList.cmake.*-DTrilinos_ENABLE_preRepoOnePackage:BOOL=ON."
)

# ToDo: Add subset!


#
# Test enable logic based on modified files/packages
#
Expand Down
2 changes: 1 addition & 1 deletion tribits/core/package_arch/TribitsGlobalMacros.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -1187,7 +1187,7 @@ MACRO(TRIBITS_READ_EXTRA_REPOSITORIES_LISTS)
IF (EXTRAREPO_PACKSTAT STREQUAL NOPACKAGES)

MESSAGE("")
MESSAGE("Skipping reading packages and TPLs for extra repo ${EXTRA_REPO} because marked NOPACKAGES ... ")
MESSAGE("Skipping reading packages and TPLs for ${READ_PRE_OR_POST_EXRAREPOS} extra repo ${EXTRA_REPO} because marked NOPACKAGES ... ")
MESSAGE("")
# ToDo: TriBITS:73: Don't print the above message by default. It is
# just clutter.
Expand Down
2 changes: 2 additions & 0 deletions tribits/ctest_driver/TribitsCTestDriverCore.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -411,6 +411,8 @@ MACRO(TRIBITS_SETUP_PACKAGES)
SET_DEFAULT_AND_FROM_ENV(${PROJECT_NAME}_IGNORE_MISSING_EXTRA_REPOSITORIES FALSE)
SET_DEFAULT_AND_FROM_ENV(${PROJECT_NAME}_PRE_REPOSITORIES "")
SET_DEFAULT_AND_FROM_ENV(${PROJECT_NAME}_EXTRA_REPOSITORIES "")
SPLIT("${${PROJECT_NAME}_PRE_REPOSITORIES}" "," ${PROJECT_NAME}_PRE_REPOSITORIES)
SPLIT("${${PROJECT_NAME}_EXTRA_REPOSITORIES}" "," ${PROJECT_NAME}_EXTRA_REPOSITORIES)

TRIBITS_READ_IN_NATIVE_REPOSITORIES()
TRIBITS_COMBINE_NATIVE_AND_EXTRA_REPOS()
Expand Down

0 comments on commit 4b02319

Please sign in to comment.