-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add CDash URLs to builds and nonpassing tests with same base repo version #485
Conversation
This is to make the file easier to navigate so I can add more unit tests. This file has gotten way too big and needs to be broken into several smaller files at some point here.
This was not printing out the semi-colons in a list passed to message_wrapper(). I noticed this while working on #483.
I also updated the documentation some for unittest_string_regex(). I do not run the new function unittest_string_var_regex() in this commit but will in a later commit where I manually tested as part of work for #483 to ensure it passes and fails when it should.
This makes the module TribitsGeneralMacros.cmake smaller and better aggregates these commands. I also added a new macro tribits_assert_parse_arg_one_value() which I just tested manually. It is a very simple macro so I am not too worried about not unit testing it yet.
This allows more compact argument parsing code and checking
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
We need to be breaking up TribitsGlobalMacros.cmake because it is too long.
This will be a robust way to generate the CDash URLs that contain 'Revision' for when the base git repos can't produce a SHA1. And this is just a very generally useful function.
This comes up with refactorings being done for #483.
I will be adding functions for getting more CDash URLs that for just this one build's results.
This is part of a refactoring to display more CDash URLs other than just build URLs.
This will make this easier to reuse to get other CDash URLs.
…ersion (#483) This makes it easy to click on links to these other CDash URLs to see what is happening with all of the builds for the same repo version. The main target is for the GitHub Actions drivers for TriBITS testing. This makes it easy to get at those results. As part of this, I also renamed the function tribits_get_build_url_and_write_to_file() to tribits_get_cdash_build_url() and removed the ability to write to a file. (We just don't need that anymore and it is trivial to write a string to a file.)
This will post the base repo version info to CDash which provides more info right on CDash on the main index.php page. However, it will set CTEST_DO_UPDATES=OFF unless the base repo is a Git repo and we can extract the SHA1 from the repo with tribits_git_repo_sha1() (which is a very robust function).
8404366
to
d37ff0f
Compare
Hello @KyleFromKitware, can you please do a review of this PR? It is likely better to review this PR one-commit-at-a-time and ignore whitespace (see "Notes to Reviewers" above. Also, I would like to merge this right now and allow you to do a post-merge review (and any issues can be resolved in a follow-up PR). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approving so the merge can happen but it would be good to get a post-merge review from @KyleFromKitware
It was pointed out by @KyleFromKitware in the review of PR TriBITSPub#485 that calling cmake_policy() in a function will change a policy in the calling scope. NOTE: The function() command does not create a new policy scope but does create a new variable scope. Just the opposite, include() creates a new policy scope but not a new variable scope.
…iBITSPub#485) With newer CMake version, you can just quote the entire argument: "--pretty=format:<fmnt>" where <fmnt> may have spaces and everything seems to work correctly.
It was pointed out by @KyleFromKitware in the review of PR TriBITSPub#485 that calling cmake_policy() in a function will change a policy in the calling scope. NOTE: The function() command does not create a new policy scope but does create a new variable scope. Just the opposite, include() creates a new policy scope but not a new variable scope.
…iBITSPub#485) With newer CMake version, you can just quote the entire argument: "--pretty=format:<fmnt>" where <fmnt> may have spaces and everything seems to work correctly.
Address review feedback from PR #485
This PR add CDash URLs getting printed and written to file for the builds and non-passing tests on CDash for the same base repo Git version SHA1 (see Issue #483). For more info, see the new section Links to results on CDash.
Notes to Reviewers