Skip to main content
View source

Local Text Output

View as Markdown

A RocketRide target node that writes pipeline text output to the local filesystem as .txt files.

What it does

Receives text arriving on its text lane and saves each source object as a .txt file under a configured output directory, preserving the source directory structure. Text is accumulated per object while the object is open and flushed in a single UTF-8 write when the object closes. This is a sink node with no output lane.

Uses only the Python standard library (os) with no external dependencies.

The node is restricted to self-hosted deployments (capability nosaas). It also carries the filesystem and security capabilities.

Safety behavior that applies to every object:

  • Objects that failed upstream (objectFailed) are skipped entirely.
  • A path-traversal guard rejects any resolved target path that escapes the configured output directory.
  • Directory creation failures and write errors log a warning and skip the object rather than failing the whole pipeline.
  • Files are only written when the accumulated text is non-empty.
  • If storePath is not set, every object is skipped with a warning.

Configuration

Lanes

Lane inDescription
textText content to write to disk

No output lanes: this is a terminal (target) node.

Fields

Both fields live under the node's parameters key (shown as "Destination path" in the UI).

FieldTypeDescription
excludestringDefault "N/A". Which paths to exclude from the output path, if not required put N/A. e.g Users/Downloads/ or N/A

On Windows, config validation rejects a storePath or exclude value that contains any of the characters < > : " / | ? *. An exclude value of N/A is exempt from this check.


Output path resolution

For each object the target file path is constructed from the object's source path:

  1. If exclude is N/A, the full source path is used as the relative sub-path. Otherwise the exclude prefix is stripped from the source path. If the source path does not start with the exclude prefix, the node logs a warning and skips the object.
  2. The source file extension is replaced with .txt (for example, Hackathon/folder1/report.pdf becomes Hackathon/folder1/report.txt).
  3. The relative path is joined under storePath (for example, /Users/username/Desktop/Hackathon/folder1/report.txt). The fully resolved path must remain inside storePath; any path that escapes it is rejected with a path-traversal error.
  4. All necessary subdirectories are created automatically before the file is written.

Schema

FieldTypeDescriptionDefault
local_text_output.excludestringexclude
Which paths to exclude from the output path, if not required put N/A. e.g Users/Downloads/ or N/A
"N/A"