A rule that copies a directory to another place.
The rule uses a Bash command on Linux/macOS/non-Windows, and a cmd.exe command on Windows (no Bash is required).
copy_directory(name, src, out, hardlink, kwargs)
Copies a directory to another location.
This rule uses a Bash command on Linux/macOS/non-Windows, and a cmd.exe command on Windows (no Bash is required).
If using this rule with source directories, it is recommended that you use the
--host_jvm_args=-DBAZEL_TRACK_SOURCE_DIRECTORIES=1
startup option so that changes
to files within source directories are detected. See
https://github.com/bazelbuild/bazel/commit/c64421bc35214f0414e4f4226cc953e8c55fa0d2
for more context.
PARAMETERS
copy_directory_action(ctx, src, dst, is_windows)
Legacy factory function that creates an action to copy a directory from src to dst.
For improved analysis and runtime performance, it is recommended the switch
to copy_directory_bin_action
which takes a tool binary, typically the
@aspect_bazel_lib//tools/copy_to_directory
go_binary
either built from
source or provided by a toolchain and creates hard links instead of performing full
file copies.
This helper is used by copy_directory. It is exposed as a public API so it can be used within other rule implementations.
PARAMETERS
copy_directory_bin_action(ctx, src, dst, copy_directory_bin, hardlink, verbose)
Factory function that creates an action to copy a directory from src to dst using a tool binary.
The tool binary will typically be the @aspect_bazel_lib//tools/copy_directory
go_binary
either built from source or provided by a toolchain.
This helper is used by the copy_directory rule. It is exposed as a public API so it can be used within other rule implementations.
PARAMETERS