diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-10-24 16:46:39 +0200 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-10-25 16:48:13 +0200 |
commit | ee06e3ec3b3deb0a9bf43165ba477e54f4ccbcc5 (patch) | |
tree | fe05eb95635ae121af0f2e324e06fcc1480b9d48 | |
parent | 7ece7d37f7840b27b799fbe36c62034e816829a1 (diff) | |
download | rules-cc-ee06e3ec3b3deb0a9bf43165ba477e54f4ccbcc5.tar.gz |
["lint", "targets"]: Also have a metadata file
... containing the names of artifacts (files or directories) that
are from the target itself of the runfiles of direct dependencies.
This allows tools to check some form of strict dependency structure.
-rw-r--r-- | lint/RULES | 23 | ||||
-rwxr-xr-x | lint/call_lint | 1 |
2 files changed, 24 insertions, 0 deletions
@@ -63,6 +63,10 @@ , " by the field \"config\", and" , "- OUT pointing to a directory to which files with the lint result" , " can be written." + , "- META pointing to a json file contaning" + , " - at key \"direct deps artifact names\" a list of all input" + , " artifacts that come from the target itself or are runfiles of a" + , " direct dependency." , "It is supposed to indicate by the exit code whether the file to lint" , "complies with the given linting policy, with 0 meaning" , "compliant." @@ -152,6 +156,12 @@ , "dep": {"type": "var", "name": "_"} } ] + , [ "direct deps artifact names" + , { "type": "DEP_PROVIDES" + , "dep": {"type": "var", "name": "_"} + , "provider": "direct deps artifact names" + } + ] ] , "body": { "type": "TREE" @@ -170,6 +180,19 @@ , "subdir": "config" , "$1": {"type": "var", "name": "config"} } + , { "type": "singleton_map" + , "key": "meta.json" + , "value": + { "type": "BLOB" + , "data": + { "type": "json_encode" + , "$1": + { "type": "env" + , "vars": ["direct deps artifact names"] + } + } + } + } ] } , "cmd": diff --git a/lint/call_lint b/lint/call_lint index ab9c2b8..ca7e4ef 100755 --- a/lint/call_lint +++ b/lint/call_lint @@ -23,6 +23,7 @@ echo "${RESULT}" > result export OUT="$(pwd)/out" mkdir -p config export CONFIG="$(pwd)/config" +export META="$(pwd)/meta.json" cd work |