2010-12-11 8 views
6

estoy usando Tela para ejecutar el siguiente:Tela pide la contraseña raíz

def staging(): 
    """ use staging environment on remote host""" 
    env.user = 'ubuntu' 
    env.environment = 'staging' 
    env.hosts = ['host.dev'] 
    _setup_path() 

def bootstrap(): 
    """ initialize remote host environment (virtualenv, deploy, update) """ 
    require('root', provided_by=('staging', 'production')) 
    run('mkdir -p %(root)s' % env) 
    run('mkdir -p %s' % os.path.join(env.home, 'www', 'log')) 
    create_virtualenv() 
    deploy() 
    update_requirements() 

Pero me sale esto:

[email protected]:~/projects/proj_name$ fab staging bootstrap 
[host.dev] run: mkdir -p /home/ubuntu/www/staging 
Password for [email protected]: 

¿Por qué Tela pidiendo mi contraseña? Este es el usuario root ubuntu predeterminado que no tiene contraseña en los archivos sudoers. ¿Que está pasando aqui?

Respuesta

6

meta: Acabo de darme cuenta de que esta pregunta aún no ha sido respondida. No tengo idea de lo que realmente pasó allí, pero aquí hay una conjetura.

Esto probablemente se debió a un error al usar un archivo de claves cuando se conectaba a una máquina donde la conexión de contraseña de texto claro SSH estaba deshabilitada.

El uso correcto sería:

fab -i keyfile.pem <fabric_task> 
Cuestiones relacionadas