CI and testing updates (#203)
* Python implementation of run-ci.sh
* Container workflow update
- retry failed container build to combat network failures
* cpack workflow update
- retry failed base container build to combat network failures
* General CI workflow updates
- retry failed "Install packages" step to combat network failures
* Miscellanous linting fixes
* Formatting workflow update
- improve regex for source formatting
* format user.h
* Add new omnitrace-avail tests
* Make run-ci.py executable
* workflow retry fix
- timeout_seconds -> retry_wait_seconds
* Fix cmake formatting glob
* source formatting
* Handle PRs in run-ci.py
* Specify timeout_minutes in retry steps
* Remove remaining --cmake-args from workflows
* CI warnings about using MPICH headers
* Remove text=True from run-ci.py
- not capturing stdout/sterr so unnecessary
* Fix OpenSUSE step label
* Update omnitrace-avail-write-config tests
- use TWD (Test Working Directory) instead of PWD since PWD might not be build directory
* paths-ignore + workflow_dispatch
[ROCm/rocprofiler-systems commit: e1102a8ba4]
This commit is contained in:
committed by
GitHub
parent
91627797a0
commit
7042f85927
@@ -34,7 +34,7 @@ function(OMNITRACE_ADD_BIN_TEST)
|
||||
|
||||
# common
|
||||
list(APPEND TEST_ENVIRONMENT "OMNITRACE_CI=ON" "OMNITRACE_CONFIG_FILE="
|
||||
"OMNITRACE_OUTPUT_PATH=omnitrace-tests-output")
|
||||
"OMNITRACE_OUTPUT_PATH=omnitrace-tests-output" "TWD=${TEST_WORKING_DIRECTORY}")
|
||||
# copy for inverse
|
||||
set(TEST_ENVIRONMENT_INV "${TEST_ENVIRONMENT}")
|
||||
|
||||
@@ -225,6 +225,25 @@ omnitrace_add_bin_test(
|
||||
LABELS "omnitrace-avail"
|
||||
TIMEOUT 45)
|
||||
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-all-expand-keys
|
||||
TARGET omnitrace-avail
|
||||
ARGS --all --expand-keys
|
||||
LABELS "omnitrace-avail"
|
||||
TIMEOUT 45
|
||||
FAIL_REGEX "%[a-zA-Z_]%")
|
||||
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-all-only-available-alphabetical
|
||||
TARGET omnitrace-avail
|
||||
ARGS --all --available --alphabetical --debug --output
|
||||
${CMAKE_CURRENT_BINARY_DIR}/omnitrace-avail-all-only-available-alphabetical.log
|
||||
LABELS "omnitrace-avail"
|
||||
TIMEOUT 45
|
||||
PROPERTIES
|
||||
ATTACHED_FILES
|
||||
${CMAKE_CURRENT_BINARY_DIR}/omnitrace-avail-all-only-available-alphabetical.log)
|
||||
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-all-csv
|
||||
TARGET omnitrace-avail
|
||||
@@ -288,11 +307,20 @@ omnitrace_add_bin_test(
|
||||
|
||||
string(REPLACE "+" "\\\+" _AVAIL_CFG_PATH
|
||||
"${PROJECT_BINARY_DIR}/omnitrace-tests-output/omnitrace-avail/omnitrace-")
|
||||
# use of TWD == Test Working Directory (added by function)
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-write-config
|
||||
TARGET omnitrace-avail
|
||||
ARGS -G %env{PWD}%/omnitrace-tests-output/omnitrace-avail/omnitrace-test.cfg -F txt
|
||||
json xml --force --all
|
||||
ARGS -G
|
||||
%env{TWD}%/omnitrace-tests-output/omnitrace-avail/omnitrace-test.cfg
|
||||
-F
|
||||
txt
|
||||
json
|
||||
xml
|
||||
--force
|
||||
--all
|
||||
-c
|
||||
omnitrace
|
||||
TIMEOUT 45
|
||||
LABELS "omnitrace-avail"
|
||||
PASS_REGEX
|
||||
@@ -302,7 +330,7 @@ omnitrace_add_bin_test(
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-write-config-tweak
|
||||
TARGET omnitrace-avail
|
||||
ARGS -G %env{PWD}%/omnitrace-tests-output/omnitrace-avail/omnitrace-tweak.cfg -F txt
|
||||
ARGS -G %env{TWD}%/omnitrace-tests-output/omnitrace-avail/omnitrace-tweak.cfg -F txt
|
||||
json xml --force
|
||||
TIMEOUT 45
|
||||
LABELS "omnitrace-avail"
|
||||
@@ -310,3 +338,37 @@ omnitrace_add_bin_test(
|
||||
PASS_REGEX
|
||||
"Outputting JSON configuration file '${_AVAIL_CFG_PATH}tweak\\\.json'(.*)Outputting XML configuration file '${_AVAIL_CFG_PATH}tweak\\\.xml'(.*)Outputting text configuration file '${_AVAIL_CFG_PATH}tweak\\\.cfg'(.*)"
|
||||
)
|
||||
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-list-keys
|
||||
TARGET omnitrace-avail
|
||||
ARGS --list-keys --expand-keys
|
||||
TIMEOUT 45
|
||||
LABELS "omnitrace-avail"
|
||||
PASS_REGEX "Output Keys:\n(.*)%argv%(.*)%argv_hash%")
|
||||
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-list-keys-markdown
|
||||
TARGET omnitrace-avail
|
||||
ARGS --list-keys --expand-keys --markdown
|
||||
TIMEOUT 45
|
||||
LABELS "omnitrace-avail;markdown"
|
||||
PASS_REGEX "(.*)`%argv%`(.*)`%argv_hash%`")
|
||||
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-list-categories
|
||||
TARGET omnitrace-avail
|
||||
ARGS --list-categories
|
||||
TIMEOUT 45
|
||||
LABELS "omnitrace-avail"
|
||||
PASS_REGEX " component::(.*) hw_counters::(.*) settings::")
|
||||
|
||||
omnitrace_add_bin_test(
|
||||
NAME omnitrace-avail-core-categories
|
||||
TARGET omnitrace-avail
|
||||
ARGS -c core
|
||||
TIMEOUT 45
|
||||
LABELS "omnitrace-avail"
|
||||
PASS_REGEX
|
||||
"OMNITRACE_CONFIG_FILE(.*)OMNITRACE_ENABLED(.*)OMNITRACE_SUPPRESS_CONFIG(.*)OMNITRACE_SUPPRESS_PARSING(.*)OMNITRACE_VERBOSE"
|
||||
)
|
||||
|
||||
@@ -26,11 +26,11 @@
|
||||
#define OMNITRACE_HIDDEN_API __attribute__((visibility("hidden")));
|
||||
|
||||
#include <dlfcn.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdbool.h>
|
||||
#include <unistd.h>
|
||||
|
||||
//
|
||||
// local type definitions
|
||||
@@ -52,8 +52,8 @@ omnitrace_main(int, char**, char**) OMNITRACE_HIDDEN_API;
|
||||
|
||||
int
|
||||
omnitrace_libc_start_main(int (*)(int, char**, char**), int, char**,
|
||||
int (*)(int, char**, char**), void (*)(void), void (*)(void),
|
||||
void*) OMNITRACE_HIDDEN_API;
|
||||
int (*)(int, char**, char**), void (*)(void), void (*)(void),
|
||||
void*) OMNITRACE_HIDDEN_API;
|
||||
|
||||
int
|
||||
__libc_start_main(int (*)(int, char**, char**), int, char**, int (*)(int, char**, char**),
|
||||
@@ -109,8 +109,8 @@ omnitrace_main(int argc, char** argv, char** envp)
|
||||
|
||||
int
|
||||
omnitrace_libc_start_main(int (*_main)(int, char**, char**), int _argc, char** _argv,
|
||||
int (*_init)(int, char**, char**), void (*_fini)(void),
|
||||
void (*_rtld_fini)(void), void* _stack_end)
|
||||
int (*_init)(int, char**, char**), void (*_fini)(void),
|
||||
void (*_rtld_fini)(void), void* _stack_end)
|
||||
{
|
||||
int _preload = omnitrace_preload_library();
|
||||
|
||||
@@ -159,5 +159,5 @@ __libc_start_main(int (*_main)(int, char**, char**), int _argc, char** _argv,
|
||||
void (*_rtld_fini)(void), void* _stack_end)
|
||||
{
|
||||
return omnitrace_libc_start_main(_main, _argc, _argv, _init, _fini, _rtld_fini,
|
||||
_stack_end);
|
||||
_stack_end);
|
||||
}
|
||||
|
||||
@@ -105,7 +105,8 @@ extern "C"
|
||||
/// @fn int omnitrace_user_configure(omnitrace_user_configure_mode_t cfg,
|
||||
/// omnitrace_user_callbacks_t new_callbacks,
|
||||
/// omnitrace_user_callbacks_t* old_callbacks)
|
||||
/// @param[in] config Specifies how the new callbacks are merged with the old callbacks
|
||||
/// @param[in] config Specifies how the new callbacks are merged with the old
|
||||
/// callbacks
|
||||
/// @param[in] new_callbacks An @ref omnitrace_user_callbacks_t instance specifying
|
||||
/// the callbacks which should be invoked by the user API.
|
||||
/// @param[out] old_callbacks Pointer to @ref omnitrace_user_callbacks_t which,
|
||||
|
||||
Reference in New Issue
Block a user