示例#1
0
文件: manager.py 项目: songjundev/b
def updateSconf(id):
    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    print("uploading sconf file ...")
    ssh.upload(conn, os.path.abspath(CONFIG_PATH %(id)), UPLOAD_PATH %(id) + "server/sconf.lua")
    ssh.sftpClose(conn)
示例#2
0
文件: manager.py 项目: songjundev/b
def installMongo(id):
    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    print("uploading zip file ...")
    ssh.upload(conn, os.path.abspath(PACK_PATH + "/mongodb.zip"), UPLOAD_ROOT+"/mongodb.zip")

    print("uploading md5 file ...")
    ssh.upload(conn, os.path.abspath(PACK_PATH + "/mongodb.md5"), UPLOAD_ROOT+"/mongodb.md5")

    print("checking md5 ...")
    cmd = "cd %s; md5sum -c %s" %(UPLOAD_ROOT, "./mongodb.md5")
    shell(id, cmd)

    print("creating mongodb folder ...")
    cmd = "mkdir %s/mongodb; mkdir %s/mongodb/bin; mkdir %s/mongodb/data; mkdir %s/mongodb/log; touch %s/mongodb/log/mongodb.log" %(UPLOAD_ROOT, UPLOAD_ROOT, UPLOAD_ROOT, UPLOAD_ROOT, UPLOAD_ROOT)
    shell(id, cmd)

    print("unziping file ...")
    cmd = "cd %s; unzip -o -d ./mongodb/bin %s" %(UPLOAD_ROOT, "./mongodb.zip")
    shell(id, cmd)

    startMongo(id)

    ssh.sftpClose(conn)
示例#3
0
def installMongo(id):
    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    print("uploading zip file ...")
    ssh.upload(conn, os.path.abspath(PACK_PATH + "/mongodb.zip"),
               UPLOAD_ROOT + "/mongodb.zip")

    print("uploading md5 file ...")
    ssh.upload(conn, os.path.abspath(PACK_PATH + "/mongodb.md5"),
               UPLOAD_ROOT + "/mongodb.md5")

    print("checking md5 ...")
    cmd = "cd %s; md5sum -c %s" % (UPLOAD_ROOT, "./mongodb.md5")
    shell(id, cmd)

    print("creating mongodb folder ...")
    cmd = "mkdir %s/mongodb; mkdir %s/mongodb/bin; mkdir %s/mongodb/data; mkdir %s/mongodb/log; touch %s/mongodb/log/mongodb.log" % (
        UPLOAD_ROOT, UPLOAD_ROOT, UPLOAD_ROOT, UPLOAD_ROOT, UPLOAD_ROOT)
    shell(id, cmd)

    print("unziping file ...")
    cmd = "cd %s; unzip -o -d ./mongodb/bin %s" % (UPLOAD_ROOT,
                                                   "./mongodb.zip")
    shell(id, cmd)

    startMongo(id)

    ssh.sftpClose(conn)
示例#4
0
def updateSconf(id):
    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    print("uploading sconf file ...")
    ssh.upload(conn, os.path.abspath(CONFIG_PATH % (id)),
               UPLOAD_PATH % (id) + "server/sconf.lua")
    ssh.sftpClose(conn)
示例#5
0
文件: manager.py 项目: songjundev/b
def initMongo(id):
    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    print("uploading mongo init file ...")
    ssh.upload(conn, os.path.abspath(MONGO_INIT_FILE), UPLOAD_ROOT + os.path.basename(MONGO_INIT_FILE))

    cmd = "cd %s/mongodb/bin; ./mongo odin_gamedb_%d '%s'" %(UPLOAD_ROOT, id, UPLOAD_ROOT + os.path.basename(MONGO_INIT_FILE))
    shell(id, cmd)
    ssh.sftpClose(conn)
示例#6
0
文件: manager.py 项目: songjundev/b
def updateServers(id, pack):
    if pack == "":
        publish(id, "odin*.tar.gz", UPLOAD_PATH %(id))
    else:
        publish(id, pack, UPLOAD_PATH %(id))

    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    print("uploading sconf file ...")
    ssh.upload(conn, os.path.abspath(CONFIG_PATH %(id)), UPLOAD_PATH %(id) + "server/sconf.lua")
    ssh.sftpClose(conn)
示例#7
0
def initMongo(id):
    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    print("uploading mongo init file ...")
    ssh.upload(conn, os.path.abspath(MONGO_INIT_FILE),
               UPLOAD_ROOT + os.path.basename(MONGO_INIT_FILE))

    cmd = "cd %s/mongodb/bin; ./mongo odin_gamedb_%d '%s'" % (
        UPLOAD_ROOT, id, UPLOAD_ROOT + os.path.basename(MONGO_INIT_FILE))
    shell(id, cmd)
    ssh.sftpClose(conn)
示例#8
0
def updateServers(id, pack):
    if pack == "":
        publish(id, "odin*.tar.gz", UPLOAD_PATH % (id))
    else:
        publish(id, pack, UPLOAD_PATH % (id))

    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    print("uploading sconf file ...")
    ssh.upload(conn, os.path.abspath(CONFIG_PATH % (id)),
               UPLOAD_PATH % (id) + "server/sconf.lua")
    ssh.sftpClose(conn)
示例#9
0
文件: deploy.py 项目: amtal/monitord
def deploy_single(hostname, password, command, src_file, 
                   dst_file='/home/usf_ubcslice5/',
                   username='******',
                   keyfile='id_rsa' 
                   ):
    'Single-node deployment.'
    # test for SSH
    if not ping.has_ssh(hostname, timeout=7.5): 
        print 'Node doesn''t have port 22 open. No SSH?'
        return (False,"no ssh")
    # upload
    if src_file:
        #print 'Uploading...'
        ok = ssh.upload(src_file, dst_file, password, username, keyfile, 
                                                                hostname)
        if ok: 
            #print '[PASS]' 
            pass
        else: 
            #print '[FAIL]'
            #print 'Moving on to the next node!'
            return (False,"upload fail")
    # run command
    #print 'Executing Command...',
    ok = ssh.command(command, password, username, keyfile, hostname)
    if ok: 
        #print '[PASS]'
        return (True,ok)
    else: 
        #print '[FAIL]'
        return (False,"cmd fail")
示例#10
0
文件: manager.py 项目: songjundev/b
def publish(id, format, upPath):
    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    cmd = "cd %s; ls -lt %s | awk '{print $9}' | sed -n '1p;'" %(PACK_PATH, format)
    (status, packFile) = commands.getstatusoutput(cmd)
    packMd5 = packFile + ".md5"
    
    print("uploading zip file ...")
    ssh.upload(conn, os.path.abspath(PACK_PATH + packFile), upPath + packFile)

    print("uploading md5 file ...")
    ssh.upload(conn, os.path.abspath(PACK_PATH + packMd5), upPath + packMd5)

    print("checking md5 ...")
    cmd = "cd %s; md5sum -c %s" %(upPath, upPath + packMd5)
    shell(id, cmd)

    print("unziping file ...")
    cmd = "cd %s; tar -zxvf %s" %(upPath, upPath + packFile)
    shell(id, cmd)

    ssh.sftpClose(conn)
示例#11
0
def publish(id, format, upPath):
    ip, port, usr, psd = servers.getServer(id, servers.loadData(SERVERS_FILE))
    conn = ssh.sftpConnect(ip, port, usr, psd)

    cmd = "cd %s; ls -lt %s | awk '{print $9}' | sed -n '1p;'" % (PACK_PATH,
                                                                  format)
    (status, packFile) = commands.getstatusoutput(cmd)
    packMd5 = packFile + ".md5"

    print("uploading zip file ...")
    ssh.upload(conn, os.path.abspath(PACK_PATH + packFile), upPath + packFile)

    print("uploading md5 file ...")
    ssh.upload(conn, os.path.abspath(PACK_PATH + packMd5), upPath + packMd5)

    print("checking md5 ...")
    cmd = "cd %s; md5sum -c %s" % (upPath, upPath + packMd5)
    shell(id, cmd)

    print("unziping file ...")
    cmd = "cd %s; tar -zxvf %s" % (upPath, upPath + packFile)
    shell(id, cmd)

    ssh.sftpClose(conn)