Как я могу открыть TTY для взаимодействия с хуками git-push?

Я использую git-deploy Ruby gem для доставки приложения на промежуточный сервер. Развертывание выполняется с помощью ключей SSH.

В моем after_push скрипте я хочу запустить команду с sudo, которая впоследствии запрашивает мой пароль, поскольку права sudo ограничены (нельзя запускать sudo без пароля).

Фактически моя команда sudo не работает:

sudo: no tty present and no askpass program specified

Я пробовал добавить программу askpass и указать ее в соответствии с руководством по git.

Как я могу открыть TTY в git-push процессе для интерактивных команд в моем after_push скрипте?


person ringe    schedule 27.07.2012    source источник


Ответы (1)


Пока кажется, что то, что я ищу, невозможно. Нет доступного tty, это то, что я понял из чтения Запрос на настройку хука предварительного приема в git и Можно ли принимать вводимые пользователем данные как часть удаленного обработчика git post-receive?

Есть ли лучшие предложения о том, как выполнять защищенные паролем операции sudo при пост-получении?

ОБНОВЛЕНИЕ: ответ был найден в Как мне запросить пользователя из ловушки commit-msg?

Здесь невозможно сделать то, что я пытался достичь.

person ringe    schedule 27.07.2012
comment
Я хотел выполнить некоторую настройку на сервере, аналогичную той, что я могу сделать с Capistrano, но я не нашел способа сделать это. - person ringe; 31.07.2012