コード例 #1
0
ファイル: gunicorn.py プロジェクト: mativs/oparupi
def gunicorn_ensure(path, template, config, venv_path='.venv'):
    with virtualenv(path, venv_path):
        python_package_ensure('gunicorn')
        run("cp %s %s" % (template, config))
        file_update(config, lambda x: text_template(x,env))
        dir_ensure('%s/logs' % path)
        dir_ensure('%s/run' % path)
コード例 #2
0
def gunicorn_process_ensure(path, template, config, key_env, venv_path='.venv'):
    with virtualenv(path, venv_path):
        python_package_ensure('gunicorn')
        run("cp %s %s" % (template, config))
        file_update(config, lambda x: text_template(x,key_env))
        dir_ensure('%s/logs' % path)
        dir_ensure('%s/run' % path)
コード例 #3
0
def gunicorn_supervisor_ensure(project_path, project_name, template, key_env):
    with mode_sudo(), cd(project_path):
        config = '/etc/supervisor/conf.d/%s.conf' % project_name
        package_ensure('supervisor')
        python_package_ensure('setproctitle')
        run("cp %s %s" % (template, config))
        file_update(config, lambda x: text_template(x,key_env))
        run("supervisorctl reread")
        run("supervisorctl update")
        run("supervisorctl restart %s" % (project_name))
コード例 #4
0
ファイル: nginx.py プロジェクト: mativs/oparupi
def nginx_ensure(name, template):
	with mode_sudo():
	    package_ensure('nginx') 
	    run("cp %s /etc/nginx/sites-available/%s" % (template, name))
	    file_update('/etc/nginx/sites-available/%s' % name, lambda x: text_template(x,env))
	    if not file_exists("/etc/nginx/sites-enabled/%s" % name):
	        run("ln -s -t /etc/nginx/sites-enabled /etc/nginx/sites-available/%s " % (
	            env.project_name))
	    file_unlink('/etc/nginx/sites-enabled/default')
	    run("service nginx restart")
コード例 #5
0
ファイル: gunicorn.py プロジェクト: mativs/oparupi
def gunicorn_supervisor_ensure(project_name, template):
    with mode_sudo():
        config = '/etc/supervisor/conf.d/%s.conf' % project_name
        package_ensure('supervisor')
        python_package_ensure('setproctitle')
        run("cp %s %s" % (template, config))
        file_update(config, lambda x: text_template(x,env))
        run("supervisorctl reread")
        run("supervisorctl update")
        run("supervisorctl restart %s" % (project_name))
コード例 #6
0
def nginx_ensure(project_path, name, template, key_env):
	with mode_sudo(), cd(project_path):
	    package_ensure('nginx') 
	    run("cp %s /etc/nginx/sites-available/%s" % (template, name))
	    file_update('/etc/nginx/sites-available/%s' % name,
            lambda x: text_template(x,key_env))
	    if not file_exists("/etc/nginx/sites-enabled/%s" % name):
	        run("ln -s -t /etc/nginx/sites-enabled /etc/nginx/sites-available/%s " % (
	            name))
	    file_unlink('/etc/nginx/sites-enabled/default')
	    run("service nginx restart")
コード例 #7
0
ファイル: helpers.py プロジェクト: ascott1/govcode
def file_update_line(file, startswith, update):
    def update_line(text):
        ret = []
        for line in text.split('\n'):
            if line.strip().startswith(startswith):
                ret.append(update)
            else:
                ret.append(line)
        return "\n".join(ret)
    return file_update(file, update_line)
コード例 #8
0
def reconfigure_interface(host, address, netmask, gateway):
    cuisine.connect('test%s' % i)
    # Assume only two interfaces: 'eth*' and 'lo'
    eth_name = cuisine.run('ifconfig -s').split('\n')[1].split()[0]
    interfaces_config = '''auto lo
iface lo inet loopback

auto %(eth_name)s
iface %(eth_name)s inet static
address %(address)s
netmask %(netmask)s
gateway %(gateway)s
dns-nameservers 192.168.1.11
'''
    interfaces_config = interfaces_config % {'eth_name': eth_name,
                                             'address': address,
                                             'netmask': netmask,
                                             'gateway': gateway}
    cuisine.file_update('/etc/network/interfaces', lambda _: interfaces_config)
    cuisine.run('echo "ifdown %(eth_name)s; ifup %(eth_name)s" | at now + 1 minute'
                % {'eth_name': eth_name})
コード例 #9
0
def reconfigure_interface(host, address, netmask, gateway):
    cuisine.connect('test%s' % i)
    # Assume only two interfaces: 'eth*' and 'lo'
    eth_name = cuisine.run('ifconfig -s').split('\n')[1].split()[0]
    interfaces_config = '''auto lo
iface lo inet loopback

auto %(eth_name)s
iface %(eth_name)s inet static
address %(address)s
netmask %(netmask)s
gateway %(gateway)s
dns-nameservers 192.168.1.11
'''
    interfaces_config = interfaces_config % {
        'eth_name': eth_name,
        'address': address,
        'netmask': netmask,
        'gateway': gateway
    }
    cuisine.file_update('/etc/network/interfaces', lambda _: interfaces_config)
    cuisine.run(
        'echo "ifdown %(eth_name)s; ifup %(eth_name)s" | at now + 1 minute' %
        {'eth_name': eth_name})
コード例 #10
0
ファイル: hadoop.py プロジェクト: kjtanaka/fabric_hadoop
def update_env_sh():
    """ Update /usr/lib/hadoop/conf/hadoop-env.sh """
    file = '/usr/lib/hadoop/conf/hadoop-env.sh'
    with mode_sudo():
        file_update(file, _update_env_sh_like_this)
コード例 #11
0
ファイル: django.py プロジェクト: mativs/oparupi
def django_config_ensure(path, template, config):
    with cd(path):
        run("cp %s %s" % (template, config))
        file_update(config, lambda x: text_template(x,env))
コード例 #12
0
ファイル: django.py プロジェクト: mativs/oparupi
def django_disable_debug_mode(project_path, config):
    with cd(project_path):
        file_update(config, lambda x: re.sub('DEBUG = \w*', 'DEBUG = False', x) )
コード例 #13
0
def mount_line(line):
    if file_update('/etc/fstab', lambda _: text_ensure_line(_, line)):
        run('mount -a')
コード例 #14
0
ファイル: django.py プロジェクト: joeykennedy/pipfix
def django_config_ensure(project_path, template, config, key_env):
    with cd(project_path):
        run("cp %s %s" % (template, config))
        file_update(config, lambda x: text_template(x, key_env))
コード例 #15
0
ファイル: django.py プロジェクト: joeykennedy/pipfix
def django_disable_debug_mode(project_path, config):
    with cd(project_path):
        file_update(config,
                    lambda x: re.sub('DEBUG = \w*', 'DEBUG = False', x))