NomadClient.Api.Volumes (nomad_client v0.13.1)

API calls for all endpoints tagged Volumes.

Link to this section Summary

Functions

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • action (String.t): The action to perform on the Volume (create, detach, delete).
  • csi_volume_create_request (CsiVolumeCreateRequest):
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.
    • :plugin_id (String.t): Filters volume lists by plugin ID.
    • :snapshot_id (String.t): The ID of the snapshot to target.

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.
    • :force (String.t): Used to force the de-registration of a volume.

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • action (String.t): The action to perform on the Volume (create, detach, delete).
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.
    • :node (String.t): Specifies node to target volume operation for.

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :index (integer()): If set, wait until query exceeds given index. Must be provided with WaitParam.
    • :wait (String.t): Provided with IndexParam to wait for change.
    • :stale (String.t): If present, results will include stale reads.
    • :prefix (String.t): Constrains results to jobs that start with the defined prefix
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :per_page (integer()): Maximum number of results to return.
    • :next_token (String.t): Indicates where to start paging for queries that support pagination.
    • :plugin_id (String.t): Filters volume lists by plugin ID.

Returns

  • {:ok, NomadClient.Model.CsiVolumeListExternalResponse.t} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :index (integer()): If set, wait until query exceeds given index. Must be provided with WaitParam.
    • :wait (String.t): Provided with IndexParam to wait for change.
    • :stale (String.t): If present, results will include stale reads.
    • :prefix (String.t): Constrains results to jobs that start with the defined prefix
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :per_page (integer()): Maximum number of results to return.
    • :next_token (String.t): Indicates where to start paging for queries that support pagination.
    • :plugin_id (String.t): Filters volume lists by plugin ID.

Returns

  • {:ok, NomadClient.Model.CsiSnapshotListResponse.t} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :index (integer()): If set, wait until query exceeds given index. Must be provided with WaitParam.
    • :wait (String.t): Provided with IndexParam to wait for change.
    • :stale (String.t): If present, results will include stale reads.
    • :prefix (String.t): Constrains results to jobs that start with the defined prefix
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :per_page (integer()): Maximum number of results to return.
    • :next_token (String.t): Indicates where to start paging for queries that support pagination.

Returns

  • {:ok, NomadClient.Model.CsiVolume.t} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :index (integer()): If set, wait until query exceeds given index. Must be provided with WaitParam.
    • :wait (String.t): Provided with IndexParam to wait for change.
    • :stale (String.t): If present, results will include stale reads.
    • :prefix (String.t): Constrains results to jobs that start with the defined prefix
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :per_page (integer()): Maximum number of results to return.
    • :next_token (String.t): Indicates where to start paging for queries that support pagination.
    • :node_id (String.t): Filters volume lists by node ID.
    • :plugin_id (String.t): Filters volume lists by plugin ID.
    • :type (String.t): Filters volume lists to a specific type.

Returns

  • {:ok, [%CsiVolumeListStub{}, ...]} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • csi_snapshot_create_request (CsiSnapshotCreateRequest):
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.

Returns

  • {:ok, NomadClient.Model.CsiSnapshotCreateResponse.t} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • csi_volume_register_request (CsiVolumeRegisterRequest):
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • csi_volume_register_request (CsiVolumeRegisterRequest):
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

Link to this section Functions

Link to this function

create_volume(connection, volume_id, action, csi_volume_create_request, opts \\ [])

@spec create_volume(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  NomadClient.Model.CsiVolumeCreateRequest.t(),
  keyword()
) :: {:ok, nil} | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • action (String.t): The action to perform on the Volume (create, detach, delete).
  • csi_volume_create_request (CsiVolumeCreateRequest):
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.

returns

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

delete_snapshot(connection, opts \\ [])

@spec delete_snapshot(
  Tesla.Env.client(),
  keyword()
) :: {:ok, nil} | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.
    • :plugin_id (String.t): Filters volume lists by plugin ID.
    • :snapshot_id (String.t): The ID of the snapshot to target.

returns

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

delete_volume_registration(connection, volume_id, opts \\ [])

@spec delete_volume_registration(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil} | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.
    • :force (String.t): Used to force the de-registration of a volume.

returns

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

detach_or_delete_volume(connection, volume_id, action, opts \\ [])

@spec detach_or_delete_volume(Tesla.Env.client(), String.t(), String.t(), keyword()) ::
  {:ok, nil} | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • action (String.t): The action to perform on the Volume (create, detach, delete).
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.
    • :node (String.t): Specifies node to target volume operation for.

returns

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

get_external_volumes(connection, opts \\ [])

@spec get_external_volumes(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, nil}
  | {:ok, NomadClient.Model.CsiVolumeListExternalResponse.t()}
  | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :index (integer()): If set, wait until query exceeds given index. Must be provided with WaitParam.
    • :wait (String.t): Provided with IndexParam to wait for change.
    • :stale (String.t): If present, results will include stale reads.
    • :prefix (String.t): Constrains results to jobs that start with the defined prefix
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :per_page (integer()): Maximum number of results to return.
    • :next_token (String.t): Indicates where to start paging for queries that support pagination.
    • :plugin_id (String.t): Filters volume lists by plugin ID.

returns

Returns

  • {:ok, NomadClient.Model.CsiVolumeListExternalResponse.t} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

get_snapshots(connection, opts \\ [])

@spec get_snapshots(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, nil}
  | {:ok, NomadClient.Model.CsiSnapshotListResponse.t()}
  | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :index (integer()): If set, wait until query exceeds given index. Must be provided with WaitParam.
    • :wait (String.t): Provided with IndexParam to wait for change.
    • :stale (String.t): If present, results will include stale reads.
    • :prefix (String.t): Constrains results to jobs that start with the defined prefix
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :per_page (integer()): Maximum number of results to return.
    • :next_token (String.t): Indicates where to start paging for queries that support pagination.
    • :plugin_id (String.t): Filters volume lists by plugin ID.

returns

Returns

  • {:ok, NomadClient.Model.CsiSnapshotListResponse.t} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

get_volume(connection, volume_id, opts \\ [])

@spec get_volume(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, NomadClient.Model.CsiVolume.t()} | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :index (integer()): If set, wait until query exceeds given index. Must be provided with WaitParam.
    • :wait (String.t): Provided with IndexParam to wait for change.
    • :stale (String.t): If present, results will include stale reads.
    • :prefix (String.t): Constrains results to jobs that start with the defined prefix
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :per_page (integer()): Maximum number of results to return.
    • :next_token (String.t): Indicates where to start paging for queries that support pagination.

returns

Returns

  • {:ok, NomadClient.Model.CsiVolume.t} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

get_volumes(connection, opts \\ [])

@spec get_volumes(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, nil}
  | {:ok, [NomadClient.Model.CsiVolumeListStub.t()]}
  | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :index (integer()): If set, wait until query exceeds given index. Must be provided with WaitParam.
    • :wait (String.t): Provided with IndexParam to wait for change.
    • :stale (String.t): If present, results will include stale reads.
    • :prefix (String.t): Constrains results to jobs that start with the defined prefix
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :per_page (integer()): Maximum number of results to return.
    • :next_token (String.t): Indicates where to start paging for queries that support pagination.
    • :node_id (String.t): Filters volume lists by node ID.
    • :plugin_id (String.t): Filters volume lists by plugin ID.
    • :type (String.t): Filters volume lists to a specific type.

returns

Returns

  • {:ok, [%CsiVolumeListStub{}, ...]} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

post_snapshot(connection, csi_snapshot_create_request, opts \\ [])

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • csi_snapshot_create_request (CsiSnapshotCreateRequest):
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.

returns

Returns

  • {:ok, NomadClient.Model.CsiSnapshotCreateResponse.t} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

post_volume(connection, csi_volume_register_request, opts \\ [])

@spec post_volume(
  Tesla.Env.client(),
  NomadClient.Model.CsiVolumeRegisterRequest.t(),
  keyword()
) ::
  {:ok, nil} | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • csi_volume_register_request (CsiVolumeRegisterRequest):
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.

returns

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure
Link to this function

post_volume_registration(connection, volume_id, csi_volume_register_request, opts \\ [])

@spec post_volume_registration(
  Tesla.Env.client(),
  String.t(),
  NomadClient.Model.CsiVolumeRegisterRequest.t(),
  keyword()
) :: {:ok, nil} | {:error, Tesla.Env.t()}

parameters

Parameters

  • connection (NomadClient.Connection): Connection to server
  • volume_id (String.t): Volume unique identifier.
  • csi_volume_register_request (CsiVolumeRegisterRequest):
  • opts (keyword): Optional parameters
    • :region (String.t): Filters results based on the specified region.
    • :namespace (String.t): Filters results based on the specified namespace.
    • :x_nomad_token (String.t): A Nomad ACL token.
    • :idempotency_token (String.t): Can be used to ensure operations are only run once.

returns

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure