diff options
author | Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com> | 2024-08-05 17:32:13 +0200 |
---|---|---|
committer | Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com> | 2024-08-05 17:32:13 +0200 |
commit | cca709ec12606c2e59169bcd9728665342895a1a (patch) | |
tree | 11ed0c475304d127a5d3e264d496c209d6e50620 /shell | |
parent | 0b8ebc6d074e5d9399839108a9210a66a992345b (diff) | |
parent | d1a594af5bfb190fe625c400e700cc6096f7787b (diff) | |
download | rules-cc-cca709ec12606c2e59169bcd9728665342895a1a.tar.gz |
Merge commit 'd1a594af5bfb190fe625c400e700cc6096f7787b' into HEAD
Diffstat (limited to 'shell')
-rw-r--r-- | shell/test/EXPRESSIONS | 14 | ||||
-rw-r--r-- | shell/test/RULES | 11 |
2 files changed, 23 insertions, 2 deletions
diff --git a/shell/test/EXPRESSIONS b/shell/test/EXPRESSIONS index fee558a..b58bb49 100644 --- a/shell/test/EXPRESSIONS +++ b/shell/test/EXPRESSIONS @@ -6,6 +6,7 @@ , "name" , "test.sh" , "keep" + , "keep-dirs" , "runner" , "deps-fieldname" , "deps-transition" @@ -243,6 +244,16 @@ ] } ] + , [ "out_dirs" + , { "type": "foreach" + , "var": "dir_path" + , "range": {"type": "var", "name": "keep-dirs"} + , "body": + { "type": "join" + , "$1": ["work/", {"type": "var", "name": "dir_path"}] + } + } + ] , [ "inputs" , { "type": "map_union" , "$1": @@ -292,6 +303,7 @@ , "then": { "type": "ACTION" , "outs": {"type": "var", "name": "outs"} + , "out_dirs": {"type": "var", "name": "out_dirs"} , "inputs": {"type": "var", "name": "inputs"} , "cmd": {"type": "var", "name": "cmd"} , "env": {"type": "var", "name": "test_env"} @@ -307,6 +319,7 @@ , "else": { "type": "ACTION" , "outs": {"type": "var", "name": "outs"} + , "out_dirs": {"type": "var", "name": "out_dirs"} , "inputs": {"type": "var", "name": "inputs"} , "cmd": {"type": "var", "name": "cmd"} , "env": {"type": "var", "name": "test_env"} @@ -336,6 +349,7 @@ , "name" , "test.sh" , "keep" + , "keep-dirs" , "runner" , "deps-fieldname" , "deps-transition" diff --git a/shell/test/RULES b/shell/test/RULES index d9d8587..a808575 100644 --- a/shell/test/RULES +++ b/shell/test/RULES @@ -28,7 +28,7 @@ , "script": { "doc": ["Shell test, given by a test script"] , "target_fields": ["deps", "test"] - , "string_fields": ["keep", "name"] + , "string_fields": ["keep", "keep-dirs", "name"] , "config_vars": [ "ARCH" , "HOST_ARCH" @@ -67,6 +67,11 @@ , "the test might generate that should be kept as part of the output." , "This might be useful for further analysis of the test" ] + , "keep-dirs": + [ "List of names (relative to the test working directory) of directories" + , "that the test might generate that should be kept as part of the" + , "output. This might be useful for further analysis of the test" + ] , "deps": [ "Any targets that should be staged (with artifacts and runfiles) into" , "the tests working directory" @@ -122,7 +127,8 @@ , " generating test reports." , "stdout/stderr: Any output the invocation of the test binary produced on" , " the respective file descriptor" - , "work: In this directory, all the files specified to \"keep\" are staged" + , "work: In this directory, all the files specified to \"keep\" and" + , " \"keep-dirs\" are staged" , "time-start/time-stop: The time (decimally coded) in seconds since the" , " epoch when the test invocation started and ended." , "pwd: the directory in which the test was carried out" @@ -176,6 +182,7 @@ } ] , ["keep", {"type": "FIELD", "name": "keep"}] + , ["keep-dirs", {"type": "FIELD", "name": "keep-dirs"}] , ["runner", {"type": "FIELD", "name": "runner"}] , ["deps-fieldname", "deps"] , [ "deps-transition" |