replication.run_onetime

Run replication task without creating it.

Type: object

Type: array
No Additional Items

Tuple Validation

Parameter 1: replication_run_onetime

replication_run_onetime

Type: object

ReplicationRunOnetimeArgs parameters.

No Additional Properties

Direction

Type: enum (of string)

Whether task will PUSH or PULL snapshots.

Must be one of:
  • "PUSH"
  • "PULL"

Transport

Type: enum (of string)

Method of snapshots transfer.

  • SSH transfers snapshots via SSH connection. This method is supported everywhere but does not achieve great performance.
  • SSH+NETCAT uses unencrypted connection for data transfer. This can only be used in trusted networks and requires a port (specified by range from netcat_active_side_port_min to netcat_active_side_port_max) to be open on netcat_active_side.
  • LOCAL replicates to or from localhost.
Must be one of:
  • "SSH"
  • "SSH+NETCAT"
  • "LOCAL"

Ssh Credentials

Default: null

Keychain Credential ID of type SSH_CREDENTIALS.

Type: integer
Type: null

Netcat Active Side

Default: null

Which side actively establishes the netcat connection for SSH+NETCAT transport.

  • LOCAL: Local system initiates the connection
  • REMOTE: Remote system initiates the connection
  • null: Not applicable for other transport types

Type: enum (of string)
Must be one of:
  • "LOCAL"
  • "REMOTE"
Type: null

Netcat Active Side Listen Address

Default: null

IP address for the active side to listen on for SSH+NETCAT transport. null if not applicable.

Type: string
Type: null

Netcat Active Side Port Min

Default: null

Minimum port number in the range for netcat connections. null if not applicable.

Type: integer

Value must be greater or equal to 1 and lesser or equal to 65535

Type: null

Netcat Active Side Port Max

Default: null

Maximum port number in the range for netcat connections. null if not applicable.

Type: integer

Value must be greater or equal to 1 and lesser or equal to 65535

Type: null

Netcat Passive Side Connect Address

Default: null

IP address for the passive side to connect to for SSH+NETCAT transport. null if not applicable.

Type: string
Type: null

Sudo

Type: boolean Default: false

SSH and SSH+NETCAT transports should use sudo (which is expected to be passwordless) to run zfs command on the remote machine.

Source Datasets

Type: array of string

List of datasets to replicate snapshots from.

Must contain a minimum of 1 items

No Additional Items
Each item of this array must be:
Type: string

Target Dataset

Type: string

Dataset to put snapshots into.

Recursive

Type: boolean

Whether to recursively replicate child datasets.

Exclude

Type: array of string Default: []

Array of dataset patterns to exclude from replication.

No Additional Items
Each item of this array must be:
Type: string

Properties

Type: boolean Default: true

Send dataset properties along with snapshots.

Properties Exclude

Type: array of string Default: []

Array of dataset property names to exclude from replication.

No Additional Items
Each item of this array must be:
Type: string

Must be at least 1 characters long

Properties Override

Type: object Default: {}

Object mapping dataset property names to override values during replication.

Each additional property must conform to the following schema

Type: string

Replicate

Type: boolean Default: false

Whether to use full ZFS replication.

Encryption

Type: boolean Default: false

Whether to enable encryption for the replicated datasets.

Encryption Inherit

Default: null

Whether replicated datasets should inherit encryption from parent. null if encryption is disabled.

Type: boolean
Type: null

Encryption Key

Default: null

Encryption key for replicated datasets. null if not specified.

Type: string
Type: null

Encryption Key Format

Default: null

Format of the encryption key.

  • HEX: Hexadecimal-encoded key
  • PASSPHRASE: Text passphrase
  • null: Not applicable when encryption is disabled

Type: enum (of string)
Must be one of:
  • "HEX"
  • "PASSPHRASE"
Type: null

Encryption Key Location

Default: null

Filesystem path where encryption key is stored. null if not using key file.

Type: string
Type: null

Periodic Snapshot Tasks

Type: array of integer Default: []

List of periodic snapshot task IDs that are sources of snapshots for this replication task. Only push replication tasks can be bound to periodic snapshot tasks.

All items must be unique

No Additional Items
Each item of this array must be:
Type: integer

Naming Schema

Type: array of string Default: []

List of naming schemas for pull replication.

No Additional Items
Each item of this array must be:
Type: string

Also Include Naming Schema

Type: array of string Default: []

List of naming schemas for push replication.

No Additional Items
Each item of this array must be:
Type: string

Name Regex

Default: null

Replicate all snapshots which names match specified regular expression.

Type: string

Must be at least 1 characters long

Type: null

Default: null

Restricts when replication task with bound periodic snapshot tasks runs. For example, you can have periodic snapshot tasks that run every 15 minutes, but only run replication task every hour.

ReplicationTimeCronModel

Type: object
No Additional Properties

Minute

Type: string Default: "00"

"00" - "59"

Hour

Type: string Default: "*"

"00" - "23"

Dom

Type: string Default: "*"

"1" - "31"

Month

Type: string Default: "*"

"1" (January) - "12" (December)

Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

Begin

Type: string Default: "00:00"

Start time for the time window in HH:MM format.


Examples:

"00:00"
"06:30"
"18:00"
"23:00"

End

Type: string Default: "23:59"

End time for the time window in HH:MM format.


Examples:

"00:00"
"06:30"
"18:00"
"23:00"
Type: null

Allow From Scratch

Type: boolean Default: false

Will destroy all snapshots on target side and replicate everything from scratch if none of the snapshots on target side matches source snapshots.

Readonly

Type: enum (of string) Default: "SET"

Controls destination datasets readonly property.

  • SET: Set all destination datasets to readonly=on after finishing the replication.
  • REQUIRE: Require all existing destination datasets to have readonly=on property.
  • IGNORE: Avoid this kind of behavior.
Must be one of:
  • "SET"
  • "REQUIRE"
  • "IGNORE"

Hold Pending Snapshots

Type: boolean Default: false

Prevent source snapshots from being deleted by retention of replication fails for some reason.

Retention Policy

Type: enum (of string)

How to delete old snapshots on target side:

  • SOURCE: Delete snapshots that are absent on source side.
  • CUSTOM: Delete snapshots that are older than lifetime_value and lifetime_unit.
  • NONE: Do not delete any snapshots.
Must be one of:
  • "SOURCE"
  • "CUSTOM"
  • "NONE"

Lifetime Value

Default: null

Number of time units to retain snapshots for custom retention policy. Only applies when retention_policy is CUSTOM.

Type: integer

Value must be greater or equal to 1

Type: null

Lifetime Unit

Default: null

Time unit for snapshot retention for custom retention policy. Only applies when retention_policy is CUSTOM.

Type: enum (of string)
Must be one of:
  • "HOUR"
  • "DAY"
  • "WEEK"
  • "MONTH"
  • "YEAR"
Type: null

Lifetimes

Type: array of object Default: []

Array of different retention schedules with their own cron schedules and lifetime settings.

No Additional Items
Each item of this array must be:

ReplicationLifetimeModel

Type: object
No Additional Properties

CronModel

Type: object

Cron schedule for when snapshot retention policies are applied.

No Additional Properties

Minute

Type: string Default: "*"

"00" - "59"

Hour

Type: string Default: "*"

"00" - "23"

Dom

Type: string Default: "*"

"1" - "31"

Month

Type: string Default: "*"

"1" (January) - "12" (December)

Dow

Type: string Default: "*"

"1" (Monday) - "7" (Sunday)

Lifetime Value

Type: integer

Number of time units to retain snapshots.

Value must be greater or equal to 1

Lifetime Unit

Type: enum (of string)

Time unit for snapshot retention.

Must be one of:
  • "HOUR"
  • "DAY"
  • "WEEK"
  • "MONTH"
  • "YEAR"

Compression

Default: null

Compresses SSH stream. Available only for SSH transport.

Type: enum (of string)
Must be one of:
  • "LZ4"
  • "PIGZ"
  • "PLZIP"
Type: null

Speed Limit

Default: null

Limits speed of SSH stream. Available only for SSH transport.

Type: integer

Value must be greater or equal to 1

Type: null

Large Block

Type: boolean Default: true

Enable large block support for ZFS send streams.

Embed

Type: boolean Default: false

Enable embedded block support for ZFS send streams.

Compressed

Type: boolean Default: true

Enable compressed ZFS send streams.

Retries

Type: integer Default: 5

Number of retries before considering replication failed.

Value must be greater or equal to 1

Logging Level

Default: null

Log level for replication task execution. Controls verbosity of replication logs.

Type: enum (of string)
Must be one of:
  • "DEBUG"
  • "INFO"
  • "WARNING"
  • "ERROR"
Type: null

Exclude Mountpoint Property

Type: boolean Default: true

Whether to exclude the mountpoint property from replication.

Only From Scratch

Type: boolean Default: false

If true then replication will fail if target dataset already exists.

Mount

Type: boolean Default: true

Mount destination file system.

Result

Type: null

Returns null on successful one-time replication execution.



Required roles: REPLICATION_TASK_WRITE