Без флага -H для команды sudo вызовы pip могут завершиться ошибкой при запуске через sudo, потому что для HOME по-прежнему установлено имя пользователя SSH, а не имя пользователя sudo. Это требуется, например, для записи журнала ошибок в случае сбоя сборки пакета.
Либо установите это по умолчанию, либо предоставьте аргумент sudo (), который включит его в удаленной команде sudo.
Меня это тоже укусило. Несмотря на то, что env_reset установлен в файле sudoers ubuntu по умолчанию, HOME не устанавливается для пользователя, которому вы выполняете sudo ... Прежде чем он окажется в самой структуре, есть простой способ всегда установить опцию '-H'. В верхней части вашего fabfile установите это:
env['sudo_prefix'] += '-H '
Я собираюсь сложить это в # 503, нет смысла обсуждать это дважды.
@tobiasmcnulty и @reinout У меня есть комментарий к # 503 re: использование -i
вместо -H
, если у вас есть отзывы по этому поводу, оставьте, пожалуйста :)
Самый полезный комментарий
Меня это тоже укусило. Несмотря на то, что env_reset установлен в файле sudoers ubuntu по умолчанию, HOME не устанавливается для пользователя, которому вы выполняете sudo ... Прежде чем он окажется в самой структуре, есть простой способ всегда установить опцию '-H'. В верхней части вашего fabfile установите это: