forked from Bitmessage/virtpool
parent
78d6d913ef
commit
db5b2e96c1
@ -0,0 +1,48 @@
|
||||
import os
|
||||
import requests
|
||||
import json
|
||||
|
||||
class RPCClient():
|
||||
"""
|
||||
RPCClient Class
|
||||
"""
|
||||
|
||||
def create_vm(self, **kwargs):
|
||||
|
||||
url= "http://127.0.0.1:8080/create?"
|
||||
if kwargs:
|
||||
q = ""
|
||||
for k in kwargs.keys():
|
||||
q += "&{}={}".format(k,kwargs[k])
|
||||
|
||||
url+=q
|
||||
|
||||
print(url)
|
||||
resp= requests.get(url)
|
||||
|
||||
return resp.json()
|
||||
|
||||
def start_vm(self, vm):
|
||||
""" get a vm and try starting it
|
||||
return the ID or appropriate message
|
||||
"""
|
||||
pass
|
||||
|
||||
def stop_vm(self, id):
|
||||
#stops vm of a given id
|
||||
pass
|
||||
|
||||
if __name__ == "__main__":
|
||||
client= RPCClient()
|
||||
print("Creating VM...")
|
||||
name= "CentOS-8-Demo"
|
||||
iso_src= "/home/coolguy/Downloads/CentOS-8.2.2004-x86_64-boot.iso"
|
||||
img_src= "/var/lib/libvirt/images/vol.img"
|
||||
|
||||
vm_info= client.create_vm(name=name, iso_source=iso_src, img_source=img_src)
|
||||
if vm_info["status"]:
|
||||
print("\n\nGuest '{}' has been created and booted".format(name))
|
||||
print("UUID for {}: {}".format(name, vm_info["uuid"]))
|
||||
print("ID for {} : {}".format(name, vm_info["id"]))
|
||||
else:
|
||||
print(vm_info["err"])
|
Loading…
Reference in new issue