FileType
Sandbox filesystem object type.
Enumeration Members
Enumeration Member | Value | Description |
---|---|---|
DIR | "dir" | Filesystem object is a directory. |
FILE | "file" | Filesystem object is a file. |
Classes
Filesystem
Module for interacting with the sandbox filesystem.
Constructors
new Filesystem(
transport: Transport,
envdApi: EnvdApiClient,
connectionConfig: ConnectionConfig): Filesystem
Parameters
Parameter | Type |
---|---|
transport | Transport |
envdApi | EnvdApiClient |
connectionConfig | ConnectionConfig |
Returns
Filesystem
Methods
exists()
exists(path: string, opts?: FilesystemRequestOpts): Promise<boolean>
Check if a file or a directory exists.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to a file or a directory |
opts ? | FilesystemRequestOpts | connection options. |
Returns
Promise
<boolean
>
true
if the file or directory exists, false
otherwise
getInfo()
getInfo(path: string, opts?: FilesystemRequestOpts): Promise<EntryInfo>
Get information about a file or directory.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to a file or directory. |
opts ? | FilesystemRequestOpts | connection options. |
Returns
Promise
<EntryInfo
>
information about the file or directory like name, type, and path.
list()
list(path: string, opts?: FilesystemListOpts): Promise<EntryInfo[]>
List entries in a directory.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to the directory. |
opts ? | FilesystemListOpts | connection options. |
Returns
Promise
<EntryInfo
[]>
list of entries in the sandbox filesystem directory.
makeDir()
makeDir(path: string, opts?: FilesystemRequestOpts): Promise<boolean>
Create a new directory and all directories along the way if needed on the specified path.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to a new directory. For example '/dirA/dirB' when creating 'dirB'. |
opts ? | FilesystemRequestOpts | connection options. |
Returns
Promise
<boolean
>
true
if the directory was created, false
if it already exists.
read()
read(path, opts)
read(path: string, opts?: FilesystemRequestOpts & object): Promise<string>
Read file content as a string
.
You can pass text
, bytes
, blob
, or stream
to opts.format
to change the return type.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to the file. |
opts ? | FilesystemRequestOpts & object | connection options. |
Returns
Promise
<string
>
file content as string
read(path, opts)
read(path: string, opts?: FilesystemRequestOpts & object): Promise<Uint8Array>
Read file content as a Uint8Array
.
You can pass text
, bytes
, blob
, or stream
to opts.format
to change the return type.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to the file. |
opts ? | FilesystemRequestOpts & object | connection options. |
Returns
Promise
<Uint8Array
>
file content as Uint8Array
read(path, opts)
read(path: string, opts?: FilesystemRequestOpts & object): Promise<Blob>
Read file content as a Blob
.
You can pass text
, bytes
, blob
, or stream
to opts.format
to change the return type.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to the file. |
opts ? | FilesystemRequestOpts & object | connection options. |
Returns
Promise
<Blob
>
file content as Blob
read(path, opts)
read(path: string, opts?: FilesystemRequestOpts & object): Promise<ReadableStream<Uint8Array>>
Read file content as a ReadableStream
.
You can pass text
, bytes
, blob
, or stream
to opts.format
to change the return type.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to the file. |
opts ? | FilesystemRequestOpts & object | connection options. |
Returns
Promise
<ReadableStream
<Uint8Array
>>
file content as ReadableStream
remove()
remove(path: string, opts?: FilesystemRequestOpts): Promise<void>
Remove a file or directory.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to a file or directory. |
opts ? | FilesystemRequestOpts | connection options. |
Returns
Promise
<void
>
rename()
rename(
oldPath: string,
newPath: string,
opts?: FilesystemRequestOpts): Promise<EntryInfo>
Rename a file or directory.
Parameters
Parameter | Type | Description |
---|---|---|
oldPath | string | path to the file or directory to rename. |
newPath | string | new path for the file or directory. |
opts ? | FilesystemRequestOpts | connection options. |
Returns
Promise
<EntryInfo
>
information about renamed file or directory.
watchDir()
watchDir(
path: string,
onEvent: (event: FilesystemEvent) => void | Promise<void>,
opts?: WatchOpts & object): Promise<WatchHandle>
Start watching a directory for filesystem events.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to directory to watch. |
onEvent | (event : FilesystemEvent ) => void | Promise <void > | callback to call when an event in the directory occurs. |
opts ? | WatchOpts & object | connection options. |
Returns
Promise
<WatchHandle
>
WatchHandle
object for stopping watching directory.
write()
write(path, data, opts)
write(
path: string,
data: string | ArrayBuffer | Blob | ReadableStream<any>,
opts?: FilesystemRequestOpts): Promise<WriteInfo>
Write content to a file.
Writing to a file that doesn't exist creates the file.
Writing to a file that already exists overwrites the file.
Writing to a file at path that doesn't exist creates the necessary directories.
Parameters
Parameter | Type | Description |
---|---|---|
path | string | path to file. |
data | string | ArrayBuffer | Blob | ReadableStream <any > | data to write to the file. Data can be a string, ArrayBuffer , Blob , or ReadableStream . |
opts ? | FilesystemRequestOpts | connection options. |
Returns
Promise
<WriteInfo
>
information about the written file
write(files, opts)
write(files: WriteEntry[], opts?: FilesystemRequestOpts): Promise<WriteInfo[]>
Parameters
Parameter | Type |
---|---|
files | WriteEntry [] |
opts ? | FilesystemRequestOpts |
Returns
Promise
<WriteInfo
[]>
Interfaces
EntryInfo
Sandbox filesystem object information.
Properties
group
group: string;
Group owner of the filesystem object.
mode
mode: number;
File mode and permission bits.
modifiedTime?
optional modifiedTime: Date;
Last modification time of the filesystem object.
name
name: string;
Name of the filesystem object.
owner
owner: string;
Owner of the filesystem object.
path
path: string;
Path to the filesystem object.
permissions
permissions: string;
String representation of file permissions (e.g. 'rwxr-xr-x').
size
size: number;
Size of the filesystem object in bytes.
symlinkTarget?
optional symlinkTarget: string;
If the filesystem object is a symlink, this is the target of the symlink.
type?
optional type: FileType;
Type of the filesystem object.
FilesystemListOpts
Options for the sandbox filesystem operations.
Properties
depth?
optional depth: number;
Depth of the directory to list.
requestTimeoutMs?
optional requestTimeoutMs: number;
Timeout for requests to the API in milliseconds.
Default
30_000 // 30 seconds
user?
optional user: Username;
User to use for the operation in the sandbox. This affects the resolution of relative paths and ownership of the created filesystem objects.
FilesystemRequestOpts
Options for the sandbox filesystem operations.
Extended by
FilesystemListOpts
WatchOpts
Properties
requestTimeoutMs?
optional requestTimeoutMs: number;
Timeout for requests to the API in milliseconds.
Default
30_000 // 30 seconds
user?
optional user: Username;
User to use for the operation in the sandbox. This affects the resolution of relative paths and ownership of the created filesystem objects.
WatchOpts
Options for watching a directory.
Properties
onExit()?
optional onExit: (err?: Error) => void | Promise<void>;
Callback to call when the watch operation stops.
Parameters
Parameter | Type |
---|---|
err ? | Error |
Returns
void
| Promise
<void
>
recursive?
optional recursive: boolean;
Watch the directory recursively
requestTimeoutMs?
optional requestTimeoutMs: number;
Timeout for requests to the API in milliseconds.
Default
30_000 // 30 seconds
timeoutMs?
optional timeoutMs: number;
Timeout for the watch operation in milliseconds.
You can pass 0
to disable the timeout.
Default
60_000 // 60 seconds
user?
optional user: Username;
User to use for the operation in the sandbox. This affects the resolution of relative paths and ownership of the created filesystem objects.
WriteInfo
Sandbox filesystem object information.
Extended by
EntryInfo
Properties
name
name: string;
Name of the filesystem object.
path
path: string;
Path to the filesystem object.
type?
optional type: FileType;
Type of the filesystem object.
Type Aliases
WriteEntry
type WriteEntry: object;
Type declaration
Name | Type |
---|---|
data | string | ArrayBuffer | Blob | ReadableStream |
path | string |