Bare Metal Solution API . projects . locations . volumes

Instance Methods

luns()

Returns the luns Resource.

snapshots()

Returns the snapshots Resource.

close()

Close httplib2 connections.

evict(name, body=None, x__xgafv=None)

Skips volume's cooloff and deletes it now. Volume must be in cooloff state.

get(name, x__xgafv=None)

Get details of a single storage volume.

list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)

List storage volumes in a given project and location.

list_next()

Retrieves the next page of results.

patch(name, body=None, updateMask=None, x__xgafv=None)

Update details of a single storage volume.

rename(name, body=None, x__xgafv=None)

RenameVolume sets a new name for a volume. Use with caution, previous names become immediately invalidated.

resize(volume, body=None, x__xgafv=None)

Emergency Volume resize.

Method Details

close()
Close httplib2 connections.
evict(name, body=None, x__xgafv=None)
Skips volume's cooloff and deletes it now. Volume must be in cooloff state.

Args:
  name: string, Required. The name of the Volume. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request for skip volume cooloff and delete it.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
get(name, x__xgafv=None)
Get details of a single storage volume.

Args:
  name: string, Required. Name of the resource. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A storage volume.
  "attached": True or False, # Output only. Is the Volume attached at at least one instance. This field is a lightweight counterpart of `instances` field. It is filled in List responses as well.
  "autoGrownSizeGib": "A String", # The size, in GiB, that this storage volume has expanded as a result of an auto grow policy. In the absence of auto-grow, the value is 0.
  "bootVolume": True or False, # Output only. Whether this volume is a boot volume. A boot volume is one which contains a boot LUN.
  "currentSizeGib": "A String", # The current size of this storage volume, in GiB, including space reserved for snapshots. This size might be different than the requested size if the storage volume has been configured with auto grow or auto shrink.
  "emergencySizeGib": "A String", # Additional emergency size that was requested for this Volume, in GiB. current_size_gib includes this value.
  "expireTime": "A String", # Output only. Time after which volume will be fully deleted. It is filled only for volumes in COOLOFF state.
  "id": "A String", # An identifier for the `Volume`, generated by the backend.
  "instances": [ # Output only. Instances this Volume is attached to. This field is set only in Get requests.
    "A String",
  ],
  "labels": { # Labels as key value pairs.
    "a_key": "A String",
  },
  "maxSizeGib": "A String", # Maximum size volume can be expanded to in case of evergency, in GiB.
  "name": "A String", # Output only. The resource name of this `Volume`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. Format: `projects/{project}/locations/{location}/volumes/{volume}`
  "notes": "A String", # Input only. User-specified notes for new Volume. Used to provision Volumes that require manual intervention.
  "originallyRequestedSizeGib": "A String", # Originally requested size, in GiB.
  "performanceTier": "A String", # Immutable. Performance tier of the Volume. Default is SHARED.
  "pod": "A String", # Immutable. Pod name. Pod is an independent part of infrastructure. Volume can only be connected to the instances allocated in the same pod.
  "protocol": "A String", # Output only. Storage protocol for the Volume.
  "remainingSpaceGib": "A String", # The space remaining in the storage volume for new LUNs, in GiB, excluding space reserved for snapshots.
  "requestedSizeGib": "A String", # The requested size of this storage volume, in GiB.
  "snapshotAutoDeleteBehavior": "A String", # The behavior to use when snapshot reserved space is full.
  "snapshotEnabled": True or False, # Whether snapshots are enabled.
  "snapshotReservationDetail": { # Details about snapshot space reservation and usage on the storage volume. # Details about snapshot space reservation and usage on the storage volume.
    "reservedSpaceGib": "A String", # The space on this storage volume reserved for snapshots, shown in GiB.
    "reservedSpacePercent": 42, # Percent of the total Volume size reserved for snapshot copies. Enabling snapshots requires reserving 20% or more of the storage volume space for snapshots. Maximum reserved space for snapshots is 40%. Setting this field will effectively set snapshot_enabled to true.
    "reservedSpaceRemainingGib": "A String", # The amount, in GiB, of available space in this storage volume's reserved snapshot space.
    "reservedSpaceUsedPercent": 42, # The percent of snapshot space on this storage volume actually being used by the snapshot copies. This value might be higher than 100% if the snapshot copies have overflowed into the data portion of the storage volume.
  },
  "state": "A String", # The state of this storage volume.
  "storageType": "A String", # The storage type for this volume.
  "workloadProfile": "A String", # The workload profile for the volume.
}
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
List storage volumes in a given project and location.

Args:
  parent: string, Required. Parent value for ListVolumesRequest. (required)
  filter: string, List filter.
  pageSize: integer, Requested page size. The server might return fewer items than requested. If unspecified, server will pick an appropriate default.
  pageToken: string, A token identifying a page of results from the server.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message containing the list of storage volumes.
  "nextPageToken": "A String", # A token identifying a page of results from the server.
  "unreachable": [ # Locations that could not be reached.
    "A String",
  ],
  "volumes": [ # The list of storage volumes.
    { # A storage volume.
      "attached": True or False, # Output only. Is the Volume attached at at least one instance. This field is a lightweight counterpart of `instances` field. It is filled in List responses as well.
      "autoGrownSizeGib": "A String", # The size, in GiB, that this storage volume has expanded as a result of an auto grow policy. In the absence of auto-grow, the value is 0.
      "bootVolume": True or False, # Output only. Whether this volume is a boot volume. A boot volume is one which contains a boot LUN.
      "currentSizeGib": "A String", # The current size of this storage volume, in GiB, including space reserved for snapshots. This size might be different than the requested size if the storage volume has been configured with auto grow or auto shrink.
      "emergencySizeGib": "A String", # Additional emergency size that was requested for this Volume, in GiB. current_size_gib includes this value.
      "expireTime": "A String", # Output only. Time after which volume will be fully deleted. It is filled only for volumes in COOLOFF state.
      "id": "A String", # An identifier for the `Volume`, generated by the backend.
      "instances": [ # Output only. Instances this Volume is attached to. This field is set only in Get requests.
        "A String",
      ],
      "labels": { # Labels as key value pairs.
        "a_key": "A String",
      },
      "maxSizeGib": "A String", # Maximum size volume can be expanded to in case of evergency, in GiB.
      "name": "A String", # Output only. The resource name of this `Volume`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. Format: `projects/{project}/locations/{location}/volumes/{volume}`
      "notes": "A String", # Input only. User-specified notes for new Volume. Used to provision Volumes that require manual intervention.
      "originallyRequestedSizeGib": "A String", # Originally requested size, in GiB.
      "performanceTier": "A String", # Immutable. Performance tier of the Volume. Default is SHARED.
      "pod": "A String", # Immutable. Pod name. Pod is an independent part of infrastructure. Volume can only be connected to the instances allocated in the same pod.
      "protocol": "A String", # Output only. Storage protocol for the Volume.
      "remainingSpaceGib": "A String", # The space remaining in the storage volume for new LUNs, in GiB, excluding space reserved for snapshots.
      "requestedSizeGib": "A String", # The requested size of this storage volume, in GiB.
      "snapshotAutoDeleteBehavior": "A String", # The behavior to use when snapshot reserved space is full.
      "snapshotEnabled": True or False, # Whether snapshots are enabled.
      "snapshotReservationDetail": { # Details about snapshot space reservation and usage on the storage volume. # Details about snapshot space reservation and usage on the storage volume.
        "reservedSpaceGib": "A String", # The space on this storage volume reserved for snapshots, shown in GiB.
        "reservedSpacePercent": 42, # Percent of the total Volume size reserved for snapshot copies. Enabling snapshots requires reserving 20% or more of the storage volume space for snapshots. Maximum reserved space for snapshots is 40%. Setting this field will effectively set snapshot_enabled to true.
        "reservedSpaceRemainingGib": "A String", # The amount, in GiB, of available space in this storage volume's reserved snapshot space.
        "reservedSpaceUsedPercent": 42, # The percent of snapshot space on this storage volume actually being used by the snapshot copies. This value might be higher than 100% if the snapshot copies have overflowed into the data portion of the storage volume.
      },
      "state": "A String", # The state of this storage volume.
      "storageType": "A String", # The storage type for this volume.
      "workloadProfile": "A String", # The workload profile for the volume.
    },
  ],
}
list_next()
Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call 'execute()' on to request the next
          page. Returns None if there are no more items in the collection.
        
patch(name, body=None, updateMask=None, x__xgafv=None)
Update details of a single storage volume.

Args:
  name: string, Output only. The resource name of this `Volume`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. Format: `projects/{project}/locations/{location}/volumes/{volume}` (required)
  body: object, The request body.
    The object takes the form of:

{ # A storage volume.
  "attached": True or False, # Output only. Is the Volume attached at at least one instance. This field is a lightweight counterpart of `instances` field. It is filled in List responses as well.
  "autoGrownSizeGib": "A String", # The size, in GiB, that this storage volume has expanded as a result of an auto grow policy. In the absence of auto-grow, the value is 0.
  "bootVolume": True or False, # Output only. Whether this volume is a boot volume. A boot volume is one which contains a boot LUN.
  "currentSizeGib": "A String", # The current size of this storage volume, in GiB, including space reserved for snapshots. This size might be different than the requested size if the storage volume has been configured with auto grow or auto shrink.
  "emergencySizeGib": "A String", # Additional emergency size that was requested for this Volume, in GiB. current_size_gib includes this value.
  "expireTime": "A String", # Output only. Time after which volume will be fully deleted. It is filled only for volumes in COOLOFF state.
  "id": "A String", # An identifier for the `Volume`, generated by the backend.
  "instances": [ # Output only. Instances this Volume is attached to. This field is set only in Get requests.
    "A String",
  ],
  "labels": { # Labels as key value pairs.
    "a_key": "A String",
  },
  "maxSizeGib": "A String", # Maximum size volume can be expanded to in case of evergency, in GiB.
  "name": "A String", # Output only. The resource name of this `Volume`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. Format: `projects/{project}/locations/{location}/volumes/{volume}`
  "notes": "A String", # Input only. User-specified notes for new Volume. Used to provision Volumes that require manual intervention.
  "originallyRequestedSizeGib": "A String", # Originally requested size, in GiB.
  "performanceTier": "A String", # Immutable. Performance tier of the Volume. Default is SHARED.
  "pod": "A String", # Immutable. Pod name. Pod is an independent part of infrastructure. Volume can only be connected to the instances allocated in the same pod.
  "protocol": "A String", # Output only. Storage protocol for the Volume.
  "remainingSpaceGib": "A String", # The space remaining in the storage volume for new LUNs, in GiB, excluding space reserved for snapshots.
  "requestedSizeGib": "A String", # The requested size of this storage volume, in GiB.
  "snapshotAutoDeleteBehavior": "A String", # The behavior to use when snapshot reserved space is full.
  "snapshotEnabled": True or False, # Whether snapshots are enabled.
  "snapshotReservationDetail": { # Details about snapshot space reservation and usage on the storage volume. # Details about snapshot space reservation and usage on the storage volume.
    "reservedSpaceGib": "A String", # The space on this storage volume reserved for snapshots, shown in GiB.
    "reservedSpacePercent": 42, # Percent of the total Volume size reserved for snapshot copies. Enabling snapshots requires reserving 20% or more of the storage volume space for snapshots. Maximum reserved space for snapshots is 40%. Setting this field will effectively set snapshot_enabled to true.
    "reservedSpaceRemainingGib": "A String", # The amount, in GiB, of available space in this storage volume's reserved snapshot space.
    "reservedSpaceUsedPercent": 42, # The percent of snapshot space on this storage volume actually being used by the snapshot copies. This value might be higher than 100% if the snapshot copies have overflowed into the data portion of the storage volume.
  },
  "state": "A String", # The state of this storage volume.
  "storageType": "A String", # The storage type for this volume.
  "workloadProfile": "A String", # The workload profile for the volume.
}

  updateMask: string, The list of fields to update. The only currently supported fields are: 'labels'
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
rename(name, body=None, x__xgafv=None)
RenameVolume sets a new name for a volume. Use with caution, previous names become immediately invalidated.

Args:
  name: string, Required. The `name` field is used to identify the volume. Format: projects/{project}/locations/{location}/volumes/{volume} (required)
  body: object, The request body.
    The object takes the form of:

{ # Message requesting rename of a server.
  "newVolumeId": "A String", # Required. The new `id` of the volume.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A storage volume.
  "attached": True or False, # Output only. Is the Volume attached at at least one instance. This field is a lightweight counterpart of `instances` field. It is filled in List responses as well.
  "autoGrownSizeGib": "A String", # The size, in GiB, that this storage volume has expanded as a result of an auto grow policy. In the absence of auto-grow, the value is 0.
  "bootVolume": True or False, # Output only. Whether this volume is a boot volume. A boot volume is one which contains a boot LUN.
  "currentSizeGib": "A String", # The current size of this storage volume, in GiB, including space reserved for snapshots. This size might be different than the requested size if the storage volume has been configured with auto grow or auto shrink.
  "emergencySizeGib": "A String", # Additional emergency size that was requested for this Volume, in GiB. current_size_gib includes this value.
  "expireTime": "A String", # Output only. Time after which volume will be fully deleted. It is filled only for volumes in COOLOFF state.
  "id": "A String", # An identifier for the `Volume`, generated by the backend.
  "instances": [ # Output only. Instances this Volume is attached to. This field is set only in Get requests.
    "A String",
  ],
  "labels": { # Labels as key value pairs.
    "a_key": "A String",
  },
  "maxSizeGib": "A String", # Maximum size volume can be expanded to in case of evergency, in GiB.
  "name": "A String", # Output only. The resource name of this `Volume`. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. Format: `projects/{project}/locations/{location}/volumes/{volume}`
  "notes": "A String", # Input only. User-specified notes for new Volume. Used to provision Volumes that require manual intervention.
  "originallyRequestedSizeGib": "A String", # Originally requested size, in GiB.
  "performanceTier": "A String", # Immutable. Performance tier of the Volume. Default is SHARED.
  "pod": "A String", # Immutable. Pod name. Pod is an independent part of infrastructure. Volume can only be connected to the instances allocated in the same pod.
  "protocol": "A String", # Output only. Storage protocol for the Volume.
  "remainingSpaceGib": "A String", # The space remaining in the storage volume for new LUNs, in GiB, excluding space reserved for snapshots.
  "requestedSizeGib": "A String", # The requested size of this storage volume, in GiB.
  "snapshotAutoDeleteBehavior": "A String", # The behavior to use when snapshot reserved space is full.
  "snapshotEnabled": True or False, # Whether snapshots are enabled.
  "snapshotReservationDetail": { # Details about snapshot space reservation and usage on the storage volume. # Details about snapshot space reservation and usage on the storage volume.
    "reservedSpaceGib": "A String", # The space on this storage volume reserved for snapshots, shown in GiB.
    "reservedSpacePercent": 42, # Percent of the total Volume size reserved for snapshot copies. Enabling snapshots requires reserving 20% or more of the storage volume space for snapshots. Maximum reserved space for snapshots is 40%. Setting this field will effectively set snapshot_enabled to true.
    "reservedSpaceRemainingGib": "A String", # The amount, in GiB, of available space in this storage volume's reserved snapshot space.
    "reservedSpaceUsedPercent": 42, # The percent of snapshot space on this storage volume actually being used by the snapshot copies. This value might be higher than 100% if the snapshot copies have overflowed into the data portion of the storage volume.
  },
  "state": "A String", # The state of this storage volume.
  "storageType": "A String", # The storage type for this volume.
  "workloadProfile": "A String", # The workload profile for the volume.
}
resize(volume, body=None, x__xgafv=None)
Emergency Volume resize.

Args:
  volume: string, Required. Volume to resize. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request for emergency resize Volume.
  "sizeGib": "A String", # New Volume size, in GiB.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}