Skip to content

Latest commit

 

History

History
63 lines (38 loc) · 2.5 KB

copy_directory.md

File metadata and controls

63 lines (38 loc) · 2.5 KB

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

copy_directory(name, src, out, 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

Name Description Default Value
name Name of the rule. none
src The directory to make a copy of. Can be a source directory or TreeArtifact. none
out Path of the output directory, relative to this package. none
kwargs further keyword arguments, e.g. visibility none

copy_directory_action

copy_directory_action(ctx, src, dst, is_windows)

Helper function that creates an action to copy a directory from src to dst.

This helper is used by copy_directory. It is exposed as a public API so it can be used within other rule implementations.

PARAMETERS

Name Description Default Value
ctx The rule context. none
src The directory to make a copy of. Can be a source directory or TreeArtifact. none
dst The directory to copy to. Must be a TreeArtifact. none
is_windows If true, an cmd.exe action is created so there is no bash dependency. False