예제 #1
0
def putjson(c, env, local=False):
    """ 生成 config.json 并上传
    """
    d = Deploy(env, enviroments, c, basedir)
    d.put_tpl('config_json',
              config_json,
              dstname='config.json',
              force=True,
              local=local)
예제 #2
0
def putpy(c, env, local=False):
    """ 生成 gunicorn.conf.py 并上传
    """
    d = Deploy(env, enviroments, c, basedir)
    d.put_tpl('gunicorn_conf_py',
              gunicorn_conf_py,
              dstname='gunicorn.conf.py',
              force=True,
              local=local)
예제 #3
0
def putenv(c, env, local=False):
    """ 生成 .env 或上传
    """
    d = Deploy(env, enviroments, c, basedir)
    d.put_tpl('_env',
              _env,
              dstname='.env',
              wrapkey='options',
              force=True,
              local=local)
예제 #4
0
def venv(c, env, init=False, upgrade=None):
    """ 创建虚拟环境
    """
    d = Deploy(env, enviroments, c, basedir)
    if init:
        d.init_remote_venv()
    if upgrade == 'all':
        d.pipupgrade(all=True)
    elif isinstance(upgrade, str):
        d.pipupgrade(names=upgrade.split(','))
예제 #5
0
def putcfiles(c, env, local=False):
    """ 根据tpl文件生成配置文件并上传
    """
    d = Deploy(env, enviroments, c, basedir)
    d.put_tpl('config_json',
              config_json,
              dstname='config.json',
              force=True,
              local=local)
    d.put_tpl('_env',
              _env,
              dstname='.env',
              wrapkey='options',
              force=True,
              local=local)
    d.put_tpl('gunicorn_conf_py',
              _env,
              dstname='gunicorn.conf.py',
              force=True,
              local=local)
예제 #6
0
def pipoutdated(c, env):
    """ 打印所有的过期的 package
    """
    d = Deploy(env, enviroments, c, basedir)
    d.pipoutdated()
예제 #7
0
def reload(c, env):
    """ 在服务器上重载一个 API
    """
    d = Deploy(env, enviroments, c, basedir)
    d.reload()
예제 #8
0
def stop(c, env):
    """ 在服务器上停止一个 API
    """
    d = Deploy(env, enviroments, c, basedir)
    d.stop()
예제 #9
0
def start(c, env, wsgi_app='wsgi:pyape_app'):
    """ 在服务器上启动一个 API
    """
    d = Deploy(env, enviroments, c, basedir)
    d.start(wsgi_app)
예제 #10
0
def deploy(c, env):
    """ 部署最新程序到远程服务器
    """
    d = Deploy(env, enviroments, c, basedir)
    d.rsync(exclude=rsync_exclude)
    putcfiles(c, env, False)