Skip to main content

Snapshot Management

Snapshot Management

Create a Snapshot from an Instance

You can create a snapshot from a running instance to save its current state.

from morphcloud.api import MorphCloudClient

client = MorphCloudClient()

instance_id = "instance_your_instance_id" # Replace with a valid instance ID
instance = client.instances.get(instance_id=instance_id)

# Create a snapshot
snapshot = instance.snapshot()

print(f"Snapshot ID: {snapshot.id}")

List Snapshots

You can get a list of all snapshots you've created.

from morphcloud.api import MorphCloudClient

client = MorphCloudClient()

snapshots = client.snapshots.list()

for snapshot in snapshots:
print(f"ID: {snapshot.id}, Created At: {snapshot.created}")

Get Snapshot Details

You can retrieve detailed information about a specific snapshot.

from morphcloud.api import MorphCloudClient

client = MorphCloudClient()

snapshot_id = "snapshot_your_snapshot_id" # Replace with a valid snapshot ID
snapshot = client.snapshots.get(snapshot_id=snapshot_id)

print(f"Snapshot ID: {snapshot.id}")
print(f"Created At: {snapshot.created}")
print(f"Metadata: {snapshot.metadata}")

Set Snapshot Metadata

You can add metadata to snapshots for organization and search purposes.

from morphcloud.api import MorphCloudClient

client = MorphCloudClient()

snapshot_id = "snapshot_your_snapshot_id" # Replace with a valid snapshot ID
snapshot = client.snapshots.get(snapshot_id=snapshot_id)

# Set metadata
snapshot.set_metadata({"environment": "production", "version": "1.0.0"})

print(f"Snapshot '{snapshot_id}' metadata updated: {snapshot.metadata}")

Delete a Snapshot

When you no longer need a snapshot, you can delete it.

from morphcloud.api import MorphCloudClient

client = MorphCloudClient()

snapshot_id = "snapshot_your_snapshot_id" # Replace with a valid snapshot ID
snapshot = client.snapshots.get(snapshot_id=snapshot_id)
snapshot.delete()

print(f"Snapshot {snapshot_id} has been deleted")