aboutsummaryrefslogtreecommitdiff
path: root/docs/write_file_doc.md
blob: 8f39376ac2ef6497a3c00a28b868f5f9ffbad30a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<!-- Generated with Stardoc: http://skydoc.bazel.build -->

A rule that writes a UTF-8 encoded text file from user-specified contents.

native.genrule() is sometimes used to create a text file. The 'write_file' and
macro does this with a simpler interface than genrule.

The rules generated by the macro do not use Bash or any other shell to write the
file. Instead they use Starlark's built-in file writing action
(ctx.actions.write).


<a id="#write_file"></a>

## write_file

<pre>
write_file(<a href="#write_file-name">name</a>, <a href="#write_file-out">out</a>, <a href="#write_file-content">content</a>, <a href="#write_file-is_executable">is_executable</a>, <a href="#write_file-newline">newline</a>, <a href="#write_file-kwargs">kwargs</a>)
</pre>

Creates a UTF-8 encoded text file.

**PARAMETERS**


| Name  | Description | Default Value |
| :------------- | :------------- | :------------- |
| <a id="write_file-name"></a>name |  Name of the rule.   |  none |
| <a id="write_file-out"></a>out |  Path of the output file, relative to this package.   |  none |
| <a id="write_file-content"></a>content |  A list of strings. Lines of text, the contents of the file. Newlines are added automatically after every line except the last one.   |  <code>[]</code> |
| <a id="write_file-is_executable"></a>is_executable |  A boolean. Whether to make the output file executable. When True, the rule's output can be executed using <code>bazel run</code> and can be in the srcs of binary and test rules that require executable sources.   |  <code>False</code> |
| <a id="write_file-newline"></a>newline |  one of ["auto", "unix", "windows"]: line endings to use. "auto" for platform-determined, "unix" for LF, and "windows" for CRLF.   |  <code>"auto"</code> |
| <a id="write_file-kwargs"></a>kwargs |  further keyword arguments, e.g. &lt;code&gt;visibility&lt;/code&gt;   |  none |