rpyc

import json
import socket
from thread import *
from ansible_api import *
from rpyc import Service
from rpyc.utils.server import ThreadedServer


class ManagerService(Service):

    def exposed_login(self,user,passwd):

        if user=="ANuser" and passwd=="KJS23o4ij09gHF734iuhsdfhkGYSihoiwhj38u4h":
            self.Checkout_pass=True
        else:
            self.Checkout_pass=False

    def exposed_Runcommands(self,conn):

        self.data = conn
        recvData = eval(self.data)
        if recvData['task_type'] == '初始化及软件安装':
            push_resource = recvData['resource']
            task = MyTask(push_resource)
            if recvData['init_type'] == 'initalize':
                res = task.qd_initialize()
            elif recvData['init_type'] == 'php':
                res = task.qd_php()
            elif recvData['init_type'] == 'tomcat':
                res = task.qd_tomcat()
        elif recvData['task_type'] == 'root密码修改':
            push_resource, password, username = recvData['resource'], recvData['pass_new'], 'root'
            for i in push_resource:
                task = MyTask(i)
                pass_auth = task.passwd_auth
                if pass_auth == 'pong':
                    res = task.chan_root_pw(username, password_new)
                elif pass_auth == 'bad':
                    res = 'root密码错误,重新确认后再输入'
        else:
            push_resource, yml, upstreams, upstream, servers, server_ssls, locations = recvData['resource'], recvData['yml'], recvData['upstreams'], recvData['upstream'], recvData['servers'], recvData['server_ssls'], recvData['locations']
            for i in push_resource:
                task = MyTask(i)
                pass_auth = task.passwd_auth
                if pass_auth == 'pong':
                    task = App(i)
                    res = task.nginx_conf_deploy(yml, upstreams, upstream, servers, server_ssls, locations)
                    a = {}
                    a['mqqpass'] = i
                    res = dict(res, **a)

        print res
        returnString = str(res)
        return returnString


s = ThreadedServer(ManagerService,port=28080,auto_register=False)
s.start()

 

转载于:https://www.cnblogs.com/muzinan110/p/7573962.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值