
Dell EMC Restore
CertifiedEnterprise EditionRestore a Dell EMC PowerStore volume from a snapshot
Dell EMC Restore
Restore a Dell EMC PowerStore volume from a snapshot
Restores the parent volume in place to the state captured by the snapshot, via
POST /api/rest/volume/{volumeId}/restore with body {"from_snap_id": "<snapshotId>"}. This is
destructive: any data written to the volume after the snapshot was taken is lost. The snapshot
itself is left untouched. PowerStore may accept the request asynchronously (HTTP 202 with a job
reference); see wait and waitTimeout.
type: io.kestra.plugin.ee.dellemc.powerstore.snapshots.RestoreExamples
Restore a volume from a snapshot.
id: powerstore_restore_snapshot
namespace: company.team
tasks:
- id: restore_snapshot
type: io.kestra.plugin.ee.dellemc.powerstore.snapshots.Restore
host: "{{ secret('POWERSTORE_HOST') }}"
username: "{{ secret('POWERSTORE_USERNAME') }}"
password: "{{ secret('POWERSTORE_PASSWORD') }}"
volumeId: "{{ inputs.volume_id }}"
snapshotId: "{{ inputs.snapshot_id }}"
Properties
host *string
PowerStore management address
Hostname or IP address of the PowerStore appliance management interface, optionally including a
port if non-default (for example: powerstore.example.com or 192.168.1.20: 8443).
The REST API is reached at https://{host}/api/rest.
password *string
PowerStore password
Password for username. Store this value as a Kestra secret and reference it via
{{ secret('POWERSTORE_PASSWORD') }}.
snapshotId *string
Snapshot ID
ID of the PowerStore snapshot to restore the volume from.
username *string
PowerStore username
Username of a PowerStore local or LDAP account used to authenticate via HTTP Basic Auth.
volumeId *string
Volume ID
ID of the PowerStore volume to restore — the parent volume the snapshot was taken from.
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150skipTlsVerification booleanstring
falseSkip TLS certificate verification
When true, accepts the PowerStore appliance's TLS certificate without validation. Defaults to
false. PowerStore management interfaces are commonly deployed with a self-signed certificate;
set this to true to connect to those without importing the certificate into a trust store.
Intended for lab/non-production use — leave false in production and use a properly signed
certificate instead.
wait booleanstring
trueWait for completion
When the PowerStore array accepts the request asynchronously (HTTP 202 with a job reference),
whether to poll the job until it completes before returning. Defaults to true so downstream
tasks receive a usable result. When false, the task returns immediately with the job ID once
accepted, without waiting for it to finish. Polling blocks the worker thread running this task
for as long as the wait lasts (up to waitTimeout); size the worker pool accordingly if many
job-aware tasks run concurrently, or set this to false and poll separately.
waitTimeout string
PT10MJob wait timeout
Maximum time to wait for an asynchronously accepted job to complete when wait is true.
Defaults to PT10M. Capped at PT30M: values above that are clamped down to PT30M (with a
warning logged) to avoid tying up a worker thread indefinitely. If the timeout elapses before
the job completes, the task returns successfully without confirmed completion — the job ID is
still available in the output so its status can be checked later. Killing the execution while
this task is waiting stops it from polling immediately, but PowerStore's job REST resource has
no cancel/abort endpoint: the array-side operation itself (resize, failover, synchronize,
restore) keeps running to completion on the appliance regardless.
Outputs
jobId string
Job ID
ID of the asynchronous PowerStore job, populated only when the restore is still in progress (see wait).