zoukankan      html  css  js  c++  java
  • odoo 分布式快速更新

    如果odoo 服务太多的话,一个一个的重启会比较麻烦
    写一个python脚本来批量重启:

    import paramiko
    import configparser
    
    
    def get_conf():
        cf = configparser.ConfigParser()
        cf.read('./data/server.conf')
        sections = cf.sections()
        list_dict_conf = []
        for opt in sections:
            dev_item = cf.items(opt)
            list_dict_conf.append(dict(dev_item))
        return list_dict_conf
    
    
    class OdooServer(object):
        def __init__(self, hostname, port, username, password, command=''):
            # 建立一个sshclient对象
            self.ssh = paramiko.SSHClient()
            # 允许将信任的主机自动加入到host_allow 列表,此方法必须放在connect方法的前面
            self.ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
            # 调用connect方法连接服务器
            self.ssh.connect(hostname=hostname, port=port, username=username, password=password)
            self.command = command
    
        def exec_command(self):
            if not isinstance(self.command, str):
                return None
            stdin, stdout, stderr = self.ssh.exec_command(self.command)
            if stdout:
                print('Return Message:', stdout.read().decode())
            if stderr:
                print('Error Message:', stderr.read().decode())
            self.ssh.close()
    
    
    if __name__ == '__main__':
        list_config = get_conf()
        for dict_config in list_config:
            print('restart server:', dict_config)
            server = OdooServer(**dict_config)
            server.exec_command()
    
    

    server.conf

    [odoo12_dev1]
    hostname=localhost
    port = 22
    username=test
    password=password
    command = ./reload_supervisor_odoo.sh
    
    [odoo12_dev2]
    hostname=localhost
    port = 22
    username=test
    password=password
    command = ./reload_supervisor_odoo.sh
    

    懂得,原来世界如此简单!

  • 相关阅读:
    python2和3使用pip时的问题
    Python爬虫-爬取百度贴吧帖子
    Python爬虫-爬取糗事百科段子
    keras例子-matchnet
    win10-Anaconda2-Theano-cuda7.5-VS2013
    caffe-win10-cifar10另
    PHP——0126最初
    PHP——动态随机数
    PHP——投票
    PHP——内测:联系人管理
  • 原文地址:https://www.cnblogs.com/qianxunman/p/15793654.html
Copyright © 2011-2022 走看看