Added Argparse
This commit is contained in:
27
create.py
Normal file → Executable file
27
create.py
Normal file → Executable file
@@ -1,13 +1,36 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
from hcloud import Client
|
from hcloud import Client
|
||||||
|
from hcloud import APIException
|
||||||
from hcloud.server_types.domain import ServerType
|
from hcloud.server_types.domain import ServerType
|
||||||
from hcloud.images.domain import Image
|
from hcloud.images.domain import Image
|
||||||
|
import argparse
|
||||||
|
|
||||||
|
# Get Servername
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument("serverName")
|
||||||
|
parser.add_argument("serverType")
|
||||||
|
parser.add_argument("serverImage")
|
||||||
|
parser.add_argument("apiKey")
|
||||||
|
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
serverName = args.serverName
|
||||||
|
serverType = args.serverType
|
||||||
|
serverImage = args.serverImage
|
||||||
|
apiKey = args.apiKey
|
||||||
|
|
||||||
|
try:
|
||||||
with open('/Users/Philipp/Documents/Server/cloud-init/default.yaml', 'r') as file:
|
with open('/Users/Philipp/Documents/Server/cloud-init/default.yaml', 'r') as file:
|
||||||
cloud_init = file.read()
|
cloud_init = file.read()
|
||||||
|
|
||||||
client = Client(token="JalvbaPbizgErC2PoBSmDiFX0TKW0WLzbarxwFyNtJpx1xCvnEx3LI1B2Thl836f") # Please paste your API token here between the quotes
|
# Please paste your API token here between the quotes
|
||||||
response = client.servers.create(name="my-server", server_type=ServerType(name="cx11"), image=Image(name="centos-8"), user_data=cloud_init)
|
client = Client(token=apiKey)
|
||||||
|
response = client.servers.create(name=serverName, server_type=ServerType(
|
||||||
|
name=serverType), image=Image(name=serverImage), user_data=cloud_init)
|
||||||
server = response.server
|
server = response.server
|
||||||
print(server)
|
print(server)
|
||||||
print("Root Password: " + response.root_password)
|
print("Root Password: " + response.root_password)
|
||||||
print("IP: " + response.server.public_net.ipv4.ip)
|
print("IP: " + response.server.public_net.ipv4.ip)
|
||||||
|
|
||||||
|
except APIException as e:
|
||||||
|
print("API Error ", e)
|
||||||
|
|||||||
17
delete.py
Normal file → Executable file
17
delete.py
Normal file → Executable file
@@ -1,13 +1,24 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
from hcloud import Client
|
from hcloud import Client
|
||||||
|
import argparse
|
||||||
|
|
||||||
|
# Get Servername
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument("serverName")
|
||||||
|
parser.add_argument("apiKey")
|
||||||
|
|
||||||
client = Client(token="JalvbaPbizgErC2PoBSmDiFX0TKW0WLzbarxwFyNtJpx1xCvnEx3LI1B2Thl836f") # Please paste your API token here between the quotes
|
args = parser.parse_args()
|
||||||
|
|
||||||
server = client.servers.get_by_name(name="my-server")
|
serverName = args.serverName
|
||||||
|
apiKey = args.apiKey
|
||||||
|
|
||||||
|
# Please paste your API token here between the quotes
|
||||||
|
client = Client(token=apiKey)
|
||||||
|
|
||||||
|
server = client.servers.get_by_name(name=serverName)
|
||||||
print("Deleting: ", server.name)
|
print("Deleting: ", server.name)
|
||||||
response = client.servers.delete(server)
|
response = client.servers.delete(server)
|
||||||
|
|
||||||
|
|
||||||
print("Remaining servers: ")
|
print("Remaining servers: ")
|
||||||
servers = client.servers.get_all()
|
servers = client.servers.get_all()
|
||||||
for server in servers:
|
for server in servers:
|
||||||
|
|||||||
13
details.py
Normal file → Executable file
13
details.py
Normal file → Executable file
@@ -1,13 +1,20 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
from hcloud import Client
|
from hcloud import Client
|
||||||
import argparse
|
import argparse
|
||||||
|
|
||||||
|
# Get Servername
|
||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
parser.add_argument("serverName")
|
parser.add_argument("serverName")
|
||||||
|
parser.add_argument("apiKey")
|
||||||
|
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
serverName = args.serverName
|
serverName = args.serverName
|
||||||
print(serverName)
|
apiKey = args.apiKey
|
||||||
|
|
||||||
client = Client(token="JalvbaPbizgErC2PoBSmDiFX0TKW0WLzbarxwFyNtJpx1xCvnEx3LI1B2Thl836f") # Please paste your API token here between the quotes
|
|
||||||
|
|
||||||
|
# Please paste your API token here between the quotes
|
||||||
|
client = Client(token=apiKey)
|
||||||
server = client.servers.get_by_name(serverName)
|
server = client.servers.get_by_name(serverName)
|
||||||
|
print("Name: ", server.name)
|
||||||
print("Status: ", server.status)
|
print("Status: ", server.status)
|
||||||
|
print("Type: ", server.server_type.name)
|
||||||
|
|||||||
@@ -1,49 +0,0 @@
|
|||||||
from hcloud import Client
|
|
||||||
from hcloud.server_types.domain import ServerType
|
|
||||||
import time
|
|
||||||
import argparse
|
|
||||||
|
|
||||||
|
|
||||||
# Get Servername
|
|
||||||
parser = argparse.ArgumentParser()
|
|
||||||
parser.add_argument("serverName")
|
|
||||||
serverName = parser.parse_args()
|
|
||||||
print args.serverName
|
|
||||||
|
|
||||||
# Please paste your API token here between the quotes
|
|
||||||
client = Client(
|
|
||||||
token="JalvbaPbizgErC2PoBSmDiFX0TKW0WLzbarxwFyNtJpx1xCvnEx3LI1B2Thl836f")
|
|
||||||
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
if server.status != "off":
|
|
||||||
print("Stopping: ", server.name)
|
|
||||||
response = client.servers.power_off(server)
|
|
||||||
|
|
||||||
while server.status != "off":
|
|
||||||
print("Server not yet powerd off, waiting 2 seconds")
|
|
||||||
time.sleep(2)
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
|
|
||||||
print("Change Server Type: ", server.name, " to: cx11")
|
|
||||||
response = client.servers.change_type(
|
|
||||||
server, server_type=ServerType(name="cx11"), upgrade_disk="false")
|
|
||||||
|
|
||||||
print("Change server type initiated. Waiting 10 seconds.")
|
|
||||||
time.sleep(10)
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
|
|
||||||
while server.status == "migrating":
|
|
||||||
print("Server is migrating, waiting 10 seconds.")
|
|
||||||
time.sleep(10)
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
|
|
||||||
while server.status == "starting":
|
|
||||||
print("Server is starting, waiting 5 seconds.")
|
|
||||||
time.sleep(5)
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
|
|
||||||
if server.status == "running":
|
|
||||||
print("Server finished migration successfully")
|
|
||||||
else:
|
|
||||||
print("Server finished migration with unexpected status.")
|
|
||||||
print("Server status: ", server.status)
|
|
||||||
12
list.py
Normal file → Executable file
12
list.py
Normal file → Executable file
@@ -1,6 +1,16 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
from hcloud import Client
|
from hcloud import Client
|
||||||
|
import argparse
|
||||||
|
|
||||||
|
# Get Servername
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument("apiKey")
|
||||||
|
args = parser.parse_args()
|
||||||
|
apiKey = args.apiKey
|
||||||
|
|
||||||
|
# Please paste your API token here between the quotes
|
||||||
|
client = Client(token=apiKey)
|
||||||
|
|
||||||
client = Client(token="JalvbaPbizgErC2PoBSmDiFX0TKW0WLzbarxwFyNtJpx1xCvnEx3LI1B2Thl836f") # Please paste your API token here between the quotes
|
|
||||||
servers = client.servers.get_all()
|
servers = client.servers.get_all()
|
||||||
for server in servers:
|
for server in servers:
|
||||||
print("Servername:", server.name)
|
print("Servername:", server.name)
|
||||||
|
|||||||
59
rescale_server.py
Executable file
59
rescale_server.py
Executable file
@@ -0,0 +1,59 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
from hcloud import Client
|
||||||
|
from hcloud.server_types.domain import ServerType
|
||||||
|
import time
|
||||||
|
import argparse
|
||||||
|
|
||||||
|
|
||||||
|
# Get Servername
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument("serverName")
|
||||||
|
parser.add_argument("serverType")
|
||||||
|
parser.add_argument("apiKey")
|
||||||
|
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
serverName = args.serverName
|
||||||
|
serverType = args.serverType
|
||||||
|
apiKey = args.apiKey
|
||||||
|
|
||||||
|
try:
|
||||||
|
# Please paste your API token here between the quotes
|
||||||
|
client = Client(token=apiKey)
|
||||||
|
|
||||||
|
server = client.servers.get_by_name(name=serverName)
|
||||||
|
if server.status != "off":
|
||||||
|
print("Stopping: ", server.name)
|
||||||
|
response = client.servers.power_off(server)
|
||||||
|
|
||||||
|
while server.status != "off":
|
||||||
|
print("Server not yet powerd off, waiting 2 seconds")
|
||||||
|
time.sleep(2)
|
||||||
|
server = client.servers.get_by_name(name=serverName)
|
||||||
|
|
||||||
|
print("Change Server Type: ", server.name, " to: ", serverType)
|
||||||
|
response = client.servers.change_type(
|
||||||
|
server, server_type=ServerType(name=serverType), upgrade_disk="false")
|
||||||
|
|
||||||
|
print("Change server type initiated. Waiting 10 seconds.")
|
||||||
|
time.sleep(10)
|
||||||
|
server = client.servers.get_by_name(name=serverName)
|
||||||
|
|
||||||
|
while server.status == "migrating":
|
||||||
|
print("Server is migrating, waiting 10 seconds.")
|
||||||
|
time.sleep(10)
|
||||||
|
server = client.servers.get_by_name(name=serverName)
|
||||||
|
|
||||||
|
while server.status == "starting":
|
||||||
|
print("Server is starting, waiting 5 seconds.")
|
||||||
|
time.sleep(5)
|
||||||
|
server = client.servers.get_by_name(name=serverName)
|
||||||
|
|
||||||
|
if server.status == "running":
|
||||||
|
print("Server finished migration successfully")
|
||||||
|
else:
|
||||||
|
print("Server finished migration with unexpected status.")
|
||||||
|
print("Server status: ", server.status)
|
||||||
|
|
||||||
|
except APIException as e:
|
||||||
|
print("API Error ", e)
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
from hcloud import Client
|
|
||||||
from hcloud.server_types.domain import ServerType
|
|
||||||
import time
|
|
||||||
|
|
||||||
|
|
||||||
# Please paste your API token here between the quotes
|
|
||||||
client = Client(
|
|
||||||
token="JalvbaPbizgErC2PoBSmDiFX0TKW0WLzbarxwFyNtJpx1xCvnEx3LI1B2Thl836f")
|
|
||||||
serverName="my-server"
|
|
||||||
|
|
||||||
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
if server.status != "off":
|
|
||||||
print("Stopping: ", server.name)
|
|
||||||
response = client.servers.power_off(server)
|
|
||||||
|
|
||||||
while server.status != "off":
|
|
||||||
print("Server not yet powerd off, waiting 2 seconds")
|
|
||||||
time.sleep(2)
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
|
|
||||||
print("Change server type : ", server.name, " to: CPX31")
|
|
||||||
response = client.servers.change_type(
|
|
||||||
server, server_type=ServerType(name="cpx31"), upgrade_disk="false")
|
|
||||||
|
|
||||||
print("Change server type initiated. Waiting 10 seconds.")
|
|
||||||
time.sleep(10)
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
|
|
||||||
while server.status == "migrating":
|
|
||||||
print("Server is migrating, waiting 10 seconds.")
|
|
||||||
time.sleep(10)
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
|
|
||||||
while server.status == "starting":
|
|
||||||
print("Server is starting, waiting 5 seconds.")
|
|
||||||
time.sleep(5)
|
|
||||||
server = client.servers.get_by_name(name=serverName)
|
|
||||||
|
|
||||||
if server.status == "running":
|
|
||||||
print("Server finished migration successfully")
|
|
||||||
else:
|
|
||||||
print("Server finished migration with unexpected status.")
|
|
||||||
print("Server status: ", server.status)
|
|
||||||
Reference in New Issue
Block a user