54 lines
1.6 KiB
Python
54 lines
1.6 KiB
Python
#!/usr/bin/env python3
|
|
from hcloud import Client
|
|
from hcloud.images.domain import Image
|
|
from hcloud.networks.domain import NetworkSubnet
|
|
from hcloud.locations.domain import Location
|
|
from hcloud.server_types.domain import ServerType
|
|
import sys
|
|
|
|
if(len(sys.argv) > 1):
|
|
index = sys.argv[1]
|
|
else:
|
|
index = "478874"
|
|
|
|
client = Client(
|
|
token="KccUEiddxtzGoLWSNC3V8tylq7MYHCjdnShtgasQ8jSbHqCjGoaa6Rq7yoz4uS23"
|
|
)
|
|
|
|
servers = client.servers.get_all()
|
|
print(f"Deleting servers")
|
|
for s in servers:
|
|
if s.data_model.name.startswith(index):
|
|
action = client.servers.delete(s)
|
|
action.wait_until_finished()
|
|
print(f"\tDeleting servers {s.data_model.name} ({s.data_model.public_net.ipv4.ip}): {action.data_model.status}")
|
|
|
|
ssh_keys = client.ssh_keys.get_all()
|
|
print(f"Deleting SSH keys")
|
|
for s in ssh_keys:
|
|
if s.data_model.name.startswith(index):
|
|
action = client.ssh_keys.delete(s)
|
|
print(f"\tDeleting keys {s.name}: {action}")
|
|
|
|
vnets = client.networks.get_all()
|
|
print(f"Deleting sub-networks")
|
|
for s in vnets:
|
|
if s.data_model.name.startswith(index):
|
|
action = client.networks.delete(s)
|
|
print(f"\tDeleting networks {s.name}: {action}")
|
|
|
|
volumes = client.volumes.get_all()
|
|
print(f"Deleting volumes")
|
|
for v in volumes:
|
|
if v.data_model.name.startswith(index):
|
|
action = client.volumes.delete(v)
|
|
print(f"\tDeleting volumes {v.name}: {action}")
|
|
|
|
|
|
|
|
load_balancers = client.load_balancers.get_all()
|
|
print(f"Deleting load balancers")
|
|
for v in load_balancers:
|
|
if v.data_model.name.startswith(index):
|
|
action = client.load_balancers.delete(v)
|
|
print(f"\tDeleting load balancers {v.name}: {action}") |