コード例 #1
0
ファイル: st_comm_lib1.py プロジェクト: dsxyy/tecs
def login_user(addr,account):
    server_addr = addr
    server_port = "8080"
    cloud_user = "******"
    cloud_passwd = "admin"
    guest_user = account
    guest_passwd = account
  
    server_url = '%s%s%s%s%s%s%s%s%s' % ('http://',cloud_user,':',cloud_passwd,'@',server_addr,':',server_port,'/RPC2')
    print "Connect to xmlrpc url %s ..." % server_url                                                
    try:                                                                                             
        server = xmlrpclibex.ServerProxy(server_url)                                                 
    except:                                                                                          
        st_exit(-1,lines(),"failed to create xmlrpc ServerProxy!") 
        
    server.system.listMethods()
    
    encrypted_root_session = login(server,cloud_user,cloud_passwd)                                   
    if encrypted_root_session is None:                                                               
        st_exit(-1,lines(),"failed to get encrypted root session!")  
        
    # 查询用户帐号是否已经注册                                               
    u = user(server,encrypted_root_session)                                  
    if u.query(0L, 1000L, guest_user) != True:
        # 不存在,则创建普通帐号用户,存在则直接登录
        if u.allocate(account,account,account,3,"st_group") != True:
            st_exit(-1,lines(),"failed to create new account!") 
コード例 #2
0
ファイル: rpc.py プロジェクト: dsxyy/tecs
 def __init__(self, server_addr):
     server_url = '%s%s%s%s%s%s%s%s%s' % ('http://',RPC_ROOT_NAME,':',RPC_ROOT_PWD,'@',server_addr,':',RPC_PORT,'/RPC2')
     print "Connect to xmlrpc url %s ..." % server_url
     try:
         self.server = xmlrpclibex.ServerProxy(server_url)
     except:
         ci_exit(-1,"failed to create xmlrpc ServerProxy!")
コード例 #3
0
            print "execute db except: %s!!!" % e
        return results

def ci_exit(value=0,error="null"):
    '''exit function'''
    if value == 0:
        sys.exit(0)
    else:
        print "tecs ci test exit code = %d, error string = %s" % (value,error)
        f.write(time.strftime('%Y-%m-%d-%H-%M-%S ',time.localtime(time.time()))+"tecs ci test exit code=%d" %value+",error string="+error+"\n")
        sys.exit(value)
        
server_url = '%s%s%s%s%s%s%s%s%s' % ('http://',test_root_user,':',test_root_passwd,'@',server_addr,':',server_port,'/RPC2')
print "Connect to xmlrpc url %s ..." % server_url
try:
    server = xmlrpclibex.ServerProxy(server_url,allow_none=True)
except:
    ci_exit(-1,"failed to create xmlrpc ServerProxy!")
root_session = login(server,test_root_user,test_root_passwd)
if root_session is None:
    ci_exit(-1,"root_session is none") 
#w_addr["target_workflow"] = [{"target":"tecscluster.cc.workflow_engine_0","workflow_id":"w-3e16ad30-60aa-4aa3-ae14-5b69904b0209"},{"target":v_target,"workflow_id":v_workflow_id}]
#w_addr["target_workflow"] = [{"target":v_target,"workflow_id":v_workflow_id},{"target":v_target,"workflow_id":v_workflow_id}]

w = worflow(server,root_session)
p = project(server,root_session)
i =  image(server,root_session)
v = vmcfg(server,root_session)
w_addr = {}

def workflow_max_query(target,workflow_id):
コード例 #4
0
ファイル: test_007_image.py プロジェクト: dsxyy/tecs
    #用-p或--port可以指定tc的xmlrpc服务器端口号,默认为8080
    if o in ("-p", "--port"):
        server_port = v
    #用-i或--image可以指定虚拟机所用的映像文件
    if o in ("-i", "--image"):
        test_image = v
        if os.path.isfile(test_image) is not True:
            ci_exit(-2,"image file %s not exist!" % test_image)
        
# 自动化集成测试开始!!!
print "===================TECS CI TEST START==================="        
# 创建一个xml rpc客户端,之所以使用xmlrpclibex,而非系统原装的xmlrpclib.py,是因为原装的不支持i8数据类型
server_url = '%s%s%s%s%s%s%s%s%s' % ('http://',test_root_user,':',test_root_passwd,'@',server_addr,':',server_port,'/RPC2')
print "Connect to xmlrpc url %s ..." % server_url
try:
    server = xmlrpclibex.ServerProxy(server_url)
except:
    ci_exit(-1,"failed to create xmlrpc ServerProxy!")

#列出当前支持的所有xmlrpc接口    
server.system.listMethods()

class ImageTestCase(unittest.TestCase):
    def setUp(self):        
        pass; 
    def tearDown(self):        
        pass;
        
    def testImage(self):   
        # ------------------环境准备------------------
        # 登录tecs,获取管理员账户加密后的session