def deploy_be(): '''###### Deploy para o ambiente escolhido com o comando fab [AMB] deploy''' #update_be() check_be() os.chdir(PROJECT_ROOT + '/../src') #criaco e upload print local('pwd && ls -l') local('tar --exclude=.git/* --exclude=.git* --exclude=*.unfiltered --exclude=*.rb --exclude=deploy/* --exclude=deploy* -cvzf /tmp/package-%s.tar.gz .' % env.application) env.deploy_release_dir = env.filer_dir + '/' + env.release_sufix + '/' + env.application print run('umask 002 && mkdir -p %s' % env.deploy_release_dir) print put('/tmp/package-%s.tar.gz' % env.application,'%s/package-%s.tar.gz' % (env.deploy_release_dir, env.application)) #abrindo pacote e criando link de current de cada um cmd = ''' cd %s && umask 002 && tar -xzf %s/package-%s.tar.gz && rm -f %s/package-%s.tar.gz ''' % (env.deploy_release_dir, env.deploy_release_dir, env.application, env.deploy_release_dir, env.application) run(cmd) cmd = ''' rm -f %s/current && umask 002 && ln -s %s %s/current ''' % (env.filer_dir, env.deploy_release_dir, env.filer_dir) run(cmd) local("rm /tmp/package-%s.tar.gz" % env.application) #link para a pasta current output = run('cd /opt/puppet/django && rm -rf puppet > /dev/null && ln -s %s/current/puppet' % env.filer_dir) print 'dando graceful no httpd' services.graceful_httpd()
def reset_bd(): '''### Reseta o banco de dados''' apps = ['monitor', 'reports'] for app in apps: cmd = "cd /opt/puppet/django/puppet; python2.5 manage.py sqlclear %s | python2.5 manage.py dbshell" % app print run(cmd) print run("cd /opt/puppet/django/puppet; python2.5 manage.py syncdb") print 'dando graceful no httpd' services.graceful_httpd()