Block storages
- class cherryservers_sdk_python.block_storages.BlockStorage(client: C, model: T)[source]
Cherry Servers block storage resource.
This class represents an existing Cherry Servers resource and should only be initialized by
BlockStorageClient. Additional configuration is required. Refer to https://docs.cherryservers.com/knowledge/elastic-block-storage-linux.- attach(attach_schema: AttachRequest) None[source]
Attach Cherry Servers block storage resource to server.
Block storage volumes can only be attached to baremetal servers.
- update(update_schema: UpdateRequest) None[source]
Update Cherry Servers block storage resource.
WARNING: increasing storage size will change its ID!
- class cherryservers_sdk_python.block_storages.BlockStorageModel(*, id: int, name: str | None = None, href: str | None = None, size: int, allow_edit_size: bool | None = None, unit: str | None = None, attached_to: AttachedServerModel | None = None, vlan_id: str | None = None, vlan_ip: str | None = None, initiator: str | None = None, discovery_ip: str | None = None, region: RegionModel | None = None)[source]
Cherry Servers Elastic Block Storage model.
This model is frozen by default, since it represents an actual Cherry Servers EBS resource state.
- id
EBS ID.
- Type:
int
- name
EBS name.
- Type:
str | None
- href
EBS href.
- Type:
str | None
- size
EBS size.
- Type:
int
- allow_edit_size
Whether size can be edited.
- Type:
bool | None
- unit
Size measurement unit.
- Type:
str | None
- attached_to
EBS attached server data.
- Type:
- vlan_id
EBS VLAN ID.
- Type:
str | None
- vlan_ip
EBS VLAN IP address.
- Type:
str | None
- initiator
EBS initiator.
- Type:
str | None
- discovery_ip
EBS discovery IP address.
- Type:
str | None
- region
Region data.
- Type:
- class cherryservers_sdk_python.block_storages.BlockStorageClient(api_client: _client.CherryApiClient, request_timeout: int = 120)[source]
Cherry Servers block storage client.
Manage Cherry Servers block storage resources. This class should typically be initialized by
cherryservers_sdk_python.facade.CherryApiFacade.Example
# Get storage by ID. storage = facade.block_storages.get_by_id(123456) # List all project storages. print("List of all project storages:") for storage in facade.block_storages.list_by_project(123456): print(storage.get_model()) # Create a storage. creation_req = cherryservers_sdk_python.block_storages.CreationRequest( region="LT-Siauliai", size=1 ) storage = facade.block_storages.create(creation_req, project_id=123456) # Update storage. update_req = cherryservers_sdk_python.block_storages.UpdateRequest( description="updated", size=2 ) storage.update(update_req) # Attach storage. attach_req = cherryservers_sdk_python.block_storages.AttachRequest( attach_to=123456 ) storage.attach(attach_req) # Detach storage. storage.detach() # Delete storage. storage.delete()
- attach(storage_id: int, attach_schema: AttachRequest) BlockStorage[source]
Attach block storage to server.
- create(creation_schema: CreationRequest, project_id: int) BlockStorage[source]
Create a new block storage.
- detach(storage_id: int) BlockStorage[source]
Detach block storage from server.
- get_by_id(storage_id: int) BlockStorage[source]
Retrieve a block storage by ID.
- list_by_project(project_id: int) list[BlockStorage][source]
Retrieve all block storages that belong to a specified project.
- update(storage_id: int, update_schema: UpdateRequest) BlockStorage[source]
Update block storage.
WARNING: increasing storage size will change its ID!
- class cherryservers_sdk_python.block_storages.CreationRequest(*, region: str, size: int, description: str | None = None)[source]
Cherry Servers block storage creation request schema.
- region
Region slug. Required.
- Type:
str
- size
Block storage size in GB. Required.
- Type:
int
- description
Block storage description.
- Type:
str | None
- class cherryservers_sdk_python.block_storages.UpdateRequest(*, size: int | None = None, description: str | None = None)[source]
Cherry Servers block storage update request schema.
- size
Block storage size in GB. Storage size cannot be reduced.
- Type:
int | None
- description
Block storage description.
- Type:
str | None