Проблема:
Мне нужно проверить свойства git репо (ключ ssh, URL репо) в ruby.
Решения:
1) записать ключ ssh в файл ~/.ssh/id_rsa
и выполнить команду git clone
со свойством repo url - самый простой способ
- вызывает условия гонки, когда несколько пользователей пытаются проверить свои репо.
2) записать ключ в любой файл и сервер ссылок и ввести в файл ssh.config
, чтобы выполнить git по порядку
- ssh.config
длина файла ограничена (255 записей)
3) добавить ключ через ssh-agent
и выполнить git по порядку
- ruby не может обработать запрос парольной фразы (если ключ ssh защищен парольной фразой)
Резюме:
, поэтому мне нужно универсальное решение (например, ssh -i
), которое простое в использовании, чистое, будет работать в многопоточной среде, и все ошибки могут обрабатываться с помощью базового ввода-вывода (exec и т. Д.)