website/docs/language/functions/file.mdx
file Functionfile reads the contents of a file at the given path and returns them as
a string.
file(path)
Strings in the OpenTofu language are sequences of Unicode characters, so this function will interpret the file contents as UTF-8 encoded text and return the resulting Unicode characters. If the file contains invalid UTF-8 sequences then this function will produce an error.
This function can be used only with files that already exist on disk
at the beginning of an OpenTofu run. Functions do not participate in the
dependency graph, so this function cannot be used with files that are generated
dynamically during an OpenTofu operation. We do not recommend using dynamic
local files in OpenTofu configurations, but in rare situations where this is
necessary you can use
the local_file data source
to read files while respecting resource dependencies.
> file("${path.module}/hello.txt")
Hello World
filebase64 also reads the contents of a given file,
but returns the raw bytes in that file Base64-encoded, rather than
interpreting the contents as UTF-8 text.fileexists determines whether a file exists
at a given path.templatefile renders using a file from disk as a
template.