fabri c (2.5) продолжает запрашивать пароль, используя соединение S SH - PullRequest
0 голосов
/ 06 мая 2020

Я улучшил fabri c с fabric3==1.14.post1 до fabric=2.5.0. Код отлично работает с fabric3==1.14.post1. И теперь у меня проблема при выполнении задач внутри других задач. Проблема в том, что когда я запускаю задачу, задача должна обновлять и устанавливать программное обеспечение на удаленном сервере, который подключается без пароля (с ключом publi c, не спрашивайте пароль!). Старая версия (1.14.post1):

from fabric.api import task, sudo, env, run

@task
def install_docker():
    sudo('apt-get update && apt-get install -qy docker.io')

@task
def task_queue():
    execute(install_docker)
    execute(install_some_soft)

Как я запускаю: fab task_queue

Новая версия (2.5.0)

@task
def install_docker(ctx):
    ctx.sudo('apt-get update && apt-get install -qy docker.io')

@task(pre=[install_docker])
def task_queue(ctx):
    pass

Как я бегаю это: fab task-queue И у меня такая ошибка:

invoke.exceptions.AuthFailure: The password submitted to prompt '[sudo] password: ' was rejected.

1 Ответ

0 голосов
/ 04 июня 2020

Используйте --prompt-for-sudo-password при запуске fab.

...