Compare commits
3 Commits
e3563fce97
...
dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2b4c99d1fc | ||
|
|
1e51967f95 | ||
|
|
d07d4be932 |
18
create.py
18
create.py
@@ -10,6 +10,7 @@ parser.add_argument("serverName")
|
||||
parser.add_argument("serverType")
|
||||
parser.add_argument("serverImage")
|
||||
parser.add_argument('-ci', '--cloudInit', dest='ciFile', metavar='cloud-init filepath')
|
||||
parser.add_argument('-s', '--sshKeys', dest='sshKeys', metavar='ssh keys (comma separated)')
|
||||
|
||||
parser.add_argument("apiKey")
|
||||
|
||||
@@ -20,19 +21,30 @@ serverType = args.serverType
|
||||
serverImage = args.serverImage
|
||||
apiKey = args.apiKey
|
||||
ciFile = args.ciFile
|
||||
sshKeys = args.sshKeys
|
||||
ssh_keys = [];
|
||||
|
||||
|
||||
try:
|
||||
client = Client(token=apiKey)
|
||||
|
||||
if ciFile:
|
||||
with open(ciFile, 'r') as file:
|
||||
cloud_init = file.read()
|
||||
else:
|
||||
cloud_init=''
|
||||
|
||||
client = Client(token=apiKey)
|
||||
if sshKeys:
|
||||
for sshKey in sshKeys.split(','):
|
||||
ssh_keys.append(client.ssh_keys.get_by_name(sshKey))
|
||||
else:
|
||||
ssh_keys=''
|
||||
|
||||
response = client.servers.create(name=serverName, server_type=ServerType(
|
||||
name=serverType), image=Image(name=serverImage), user_data=cloud_init)
|
||||
name=serverType), image=Image(name=serverImage), user_data=cloud_init, ssh_keys=ssh_keys)
|
||||
server = response.server
|
||||
print(server)
|
||||
|
||||
if response.root_password:
|
||||
print("Root Password: " + response.root_password)
|
||||
print("IP: " + response.server.public_net.ipv4.ip)
|
||||
|
||||
|
||||
3
list.py
3
list.py
@@ -14,8 +14,7 @@ try:
|
||||
|
||||
servers = client.servers.get_all()
|
||||
for server in servers:
|
||||
print("Servername:", server.name)
|
||||
print("Servername:", server.status)
|
||||
print("Servername: %s\t\tStatus: %s" %(server.name ,server.status))
|
||||
|
||||
except APIException as e:
|
||||
print("API Error ", e)
|
||||
|
||||
21
sshkeys.py
Executable file
21
sshkeys.py
Executable file
@@ -0,0 +1,21 @@
|
||||
#!/usr/bin/env python3
|
||||
from hcloud import Client, APIException
|
||||
import argparse
|
||||
|
||||
# Get Servername
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("apiKey")
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
apiKey = args.apiKey
|
||||
|
||||
try:
|
||||
client = Client(token=apiKey)
|
||||
ssh_keys = client.ssh_keys.get_all()
|
||||
|
||||
for ssh_key in ssh_keys:
|
||||
print("Key Name:", ssh_key.name)
|
||||
|
||||
except APIException as e:
|
||||
print("API Error ", e)
|
||||
Reference in New Issue
Block a user