Rule and corresponding provider that joins a label pointing to a TreeArtifact with a path nested within that directory
directory_path(<a href="#directory_path-name">name</a>, <a href="#directory_path-directory">directory</a>, <a href="#directory_path-path">path</a>)
Provide DirectoryPathInfo to reference some path within a directory.
Otherwise there is no way to give a Bazel label for it.
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| directory | a TreeArtifact (ctx.actions.declare_directory) | Label | required | |
| path | path relative to the directory | String | required |
DirectoryPathInfo(<a href="#DirectoryPathInfo-directory">directory</a>, <a href="#DirectoryPathInfo-path">path</a>)
Joins a label pointing to a TreeArtifact with a path nested within that directory.
FIELDS
| Name | Description |
|---|---|
| directory | a TreeArtifact (ctx.actions.declare_directory) |
| path | path relative to the directory |
make_directory_path(<a href="#make_directory_path-name">name</a>, <a href="#make_directory_path-directory">directory</a>, <a href="#make_directory_path-path">path</a>, <a href="#make_directory_path-kwargs">kwargs</a>)
Helper function to generate a directory_path target and return its label.
PARAMETERS
RETURNS
The label name
make_directory_paths(<a href="#make_directory_paths-name">name</a>, <a href="#make_directory_paths-dict">dict</a>, <a href="#make_directory_paths-kwargs">kwargs</a>)
Helper function to convert a dict of directory to path mappings to directory_path targets and labels.
For example,
make_directory_paths("my_name", {
"//directory/artifact:target_1": "file/path",
"//directory/artifact:target_2": ["file/path1", "file/path2"],
})
generates the targets,
directory_path(
name = "my_name_0",
directory = "//directory/artifact:target_1",
path = "file/path"
)
directory_path(
name = "my_name_1",
directory = "//directory/artifact:target_2",
path = "file/path1"
)
directory_path(
name = "my_name_2",
directory = "//directory/artifact:target_2",
path = "file/path2"
)
and the list of targets is returned,
[
"my_name_0",
"my_name_1",
"my_name_2",
]
PARAMETERS
RETURNS
The label of the generated directory_path targets named name + "_" + i