Documentation
¶
Overview ¶
Package file provides file operations for cue tasks.
These are the supported tasks:
// Read reads the contents of a file.
Read: {
$id: "tool/file.Read"
// filename names the file to read.
//
// Relative names are taken relative to the current working directory.
// Slashes are converted to the native OS path separator.
filename: !=""
// contents is the read contents. If the contents are constraint to bytes
// (the default), the file is read as is. If it is constraint to a string,
// the contents are checked to be valid UTF-8.
contents: *bytes | string
}
// Append writes contents to the given file.
Append: {
$id: "tool/file.Append"
// filename names the file to append.
//
// Relative names are taken relative to the current working directory.
// Slashes are converted to the native OS path separator.
filename: !=""
// permissions defines the permissions to use if the file does not yet exist.
permissions: int | *0o666
// contents specifies the bytes to be written.
contents: bytes | string
}
// Create writes contents to the given file.
Create: {
$id: "tool/file.Create"
// filename names the file to write.
//
// Relative names are taken relative to the current working directory.
// Slashes are converted to the native OS path separator.
filename: !=""
// permissions defines the permissions to use if the file does not yet exist.
permissions: int | *0o666
// contents specifies the bytes to be written.
contents: bytes | string
}
// Glob returns a list of files.
Glob: {
$id: "tool/file.Glob"
// glob specifies the pattern to match files with.
//
// A relative pattern is taken relative to the current working directory.
// Slashes are converted to the native OS path separator.
glob: !=""
files: [...string]
}
// Mkdir creates a directory at the specified path.
Mkdir: {
$id: "tool/file.Mkdir"
// The directory path to create.
// If path is already a directory, Mkdir does nothing.
// If path already exists and is not a directory, Mkdir will return an error.
path: string
// When true any necessary parents are created as well.
createParents: bool | *false
// Directory mode and permission bits (before umask).
permissions: int | *0o755
}
// MkdirAll creates a directory at the specified path along with any necessary
// parents.
// If path is already a directory, MkdirAll does nothing.
// If path already exists and is not a directory, MkdirAll will return an error.
MkdirAll: Mkdir & {
createParents: true
}
// MkdirTemp creates a new temporary directory in the directory dir and sets
// the pathname of the new directory in path.
// It is the caller's responsibility to remove the directory when it is no
// longer needed.
MkdirTemp: {
$id: "tool/file.MkdirTemp"
// The temporary directory is created in the directory specified by dir.
// If dir is the empty string, MkdirTemp uses the default directory for
// temporary files.
dir: string | *""
// The directory name is generated by adding a random string to the end of pattern.
// If pattern includes a "*", the random string replaces the last "*" instead.
pattern: string | *""
// The absolute path of the created directory.
path: string
}
// RemoveAll removes path and any children it contains.
// It removes everything it can but returns the first error it encounters.
RemoveAll: {
$id: "tool/file.RemoveAll"
// The path to remove.
// If the path does not exist, RemoveAll does nothing.
path: string
// success contains the status of the removal.
// If path was removed success is set to true.
// If path didn't exists success is set to false.
success: bool
}
Click to show internal directories.
Click to hide internal directories.