예제 #1
0
def request(server, attrs):
	get.intialize(server, 200)

	try:
		name = attrs["name"]
		instance_type = int(attrs["instance_type"])
		#addr = "[email protected]/"
		
		machine = get.machine_list[random()*len(get.machines_list)]
		user = machine[0]
		ip = machine[1]
		connect = libv.open(get.make_path(user, ip))
		req = connect.defineXML(create_xml(name, connect.getType().lower()))
		try:
			req.create()
		except:
			server.write(json_out({"vmid":0}))

		vmid = get.next_vmid()
		get.req[vmid] = [name, instance_type, machine[2]]

		server.write(json_out({"vmid":vmid}))
	except:
		server.write(json_out({"vmid":0}))
예제 #2
0
파일: install.py 프로젝트: autovmnet/kvm
from pysphere.resources import VimService_services as VI
from server import get_server, get_center, get_ssh, get_arg, response, append, space, path, write, delete

def generate_key(password):
  c_password = (password + '\x00' * 8)[:8]
  encrypted = deskey(c_password, False)
  encrypted_bytes = struct.pack('i' * 32, *encrypted)
  encrypted_string = base64.b64encode(encrypted_bytes)
  key = (encrypted_string)
  return key

# Log
delete('log')

# Status
write('status', '1:5')

# Connect to server
serve = get_center()

if not serve:
  serve = get_server()
  
if not serve:
  response(False, log=10)

# Status
write('status', '1:15')
  
# Address
address = get_arg('ip[ip]')
예제 #3
0
파일: install.py 프로젝트: meliholog/autovm
import os
import time
from netaddr import IPAddress
from pysphere.resources import VimService_services as VI
from server import get_server, get_center, get_ssh, get_arg, response, append, space, path, write, delete

# Log
delete('log')

# Status
write('status', '1:5')

# Connect to server
serve = get_center()

if not serve:
    serve = get_server()

if not serve:
    response(False, log=10)

# Status
write('status', '1:15')

# Address
address = get_arg('ip[ip]')

# Operating system
os_name = get_arg('os[operation_system]')
os_type = get_arg('os[type]')
os_guest = get_arg('os[guest]')
예제 #4
0
파일: exporter.py 프로젝트: moriyalb/hades
def export():
	opts, args = getopt.getopt(sys.argv[1:], '-h-u:', ['help', 
		'server_path=', 
		'client_lua_path=', 'client_cs_path=', 'client_cpp_path=', 'client_js_path=', 'client_python_path=', 
		'user='******'-h', '--help'):
			print('''
--server_path 表示服务器项目路径(内含Defines、Entities、Configs、CustomConfigs等文件夹)
--client_lua_path 表示客户端Lua导出路径(内含Proxy、ProxyDefine文件夹,此路径将放置导出的lua客户端脚本)
--client_cs_path 表示客户端C#导出路径(内含Proxy、ProxyDefine文件夹,此路径将放置导出的C#客户端脚本)
--client_cpp_path 表示客户端C++导出路径(内含Proxy、ProxyDefine文件夹,此路径将放置导出的C++客户端脚本)
--client_js_path 表示客户端js导出路径(内含Proxy、ProxyDefine文件夹,此路径将放置导出的js客户端脚本)
--client_python_path 表示客户端js导出路径(内含Proxy、ProxyDefine文件夹,此路径将放置导出的python客户端脚本)
--user(-u) 表示服务器用户环境(不指定用户将无法导出服务器相关配置)
--help(-h) 显示帮助信息''')
			exit()
		if tag in ('-u','--user'):
			user = value
		if tag == '--server_path':
			exportServer = value
		if tag in CLIENT_TYPE:
			exportClient[CLIENT_TYPE[tag]] = value		

	if not exportServer:
		print("Error in Exporter : no server_path -> ")
		return
	elif not os.path.exists(exportServer):
		print("Error in Exporter : invalid server_path -> ", exportServer)
		return

	if not user:
		print("== Please set your user name in preference.bat ==")
		print("== set USER=mario ==")
		print("The user name settings exists at Server/Project/CustomConfigs")
		return
	else:
		cfgPath = exportServer + "/CustomConfigs/" + user
		if not os.path.exists(cfgPath):
			print("Error in Exporter : invalid user -> ", user)
			return

	for ctype, cpath in exportClient.items():
		if not os.path.exists(cpath):
			print("Error in Exporter : invalid client_path -> ", ctype, cpath)

	define_path = exportServer + "/Defines"
	schemaCfg = schema.load(define_path)

	cfgPath = exportServer + "/CustomConfigs/" + user
	serverCfg = server.load(cfgPath)

	exportCfgPath = exportServer + "/Configs"
	exportSchemaPath = exportCfgPath + "/Schema"
	exportServerPath = exportCfgPath + "/Server"
	exportOrmPath = exportCfgPath + "/Orm"

	schema.write(schemaCfg, exportSchemaPath)
	server.write(serverCfg, exportServerPath)
	orm.write(schemaCfg, exportOrmPath)

	exportServerScriptPath = exportServer + "/Entities"
	ss = __import__('server_js', globals(), locals(), [], 0)
	ss.write(schemaCfg, exportServerScriptPath)
	for ctype, cpath in exportClient.items():
		sc = None
		try:
			sc = __import__('client_' + ctype, globals(), locals(), [], 0)			
		except Exception as e:
			print("Exporter don't support the client script now. -> ", ctype)
		if sc:
			sc.writeCfg(schemaCfg, cpath + "/ProxyDefine")
			sc.writeScript(schemaCfg, cpath + "/Proxy")
예제 #5
0
from server import response, write

write('log', 'Test')
write('status', '4')
예제 #6
0
import re
import sys
import time
import help
import shutil
import libvirt
from server import get_arg, get_server, write, delete

# Log
delete('log')

# Status
write('status', '1:5')

# VM name
name = get_arg('ip[ip]')

# Template
template = get_arg('os[kvm_type]')

# Pool data
pool_name = get_arg('datastore[pool_name]')
pool_path = get_arg('datastore[pool_path]')

# Connect to KVM
serve = get_server()

# Default pool
try:
  default_pool = serve.storagePoolLookupByName(pool_name)
except: