Puppet

無法使用 r10k 從私有 git 儲存庫進行部署

  • July 11, 2016

我正在學習使用 r10k 來部署我的 puppet 程式碼,但在嘗試從我的控制倉庫部署時遇到了障礙。我得到的錯誤資訊是:

Failed to authenticate SSH session: Unable to extract public key from private key file: Method unimplemented in libgcrypt backend

我已驗證我的 ssh 密鑰在直接連接到伺服器時有效。

r10k 的文件有點令人困惑,但據我所知,指定 ssh 密鑰的唯一方法是使用堅固的 gem,而據我所知,Ubuntu 上的 libssh2(堅固取決於通過 libgit2)連結到 libgcrypt而不是openssl。‘shellgit’ 提供者似乎沒有任何指定 ssh 密鑰的方法。

解決這個問題的最簡單方法是什麼?

編輯:我還沒有真正解決嘗試配置“堅固”提供程序的問題,但我確實弄清楚了為什麼“shellgit”不起作用 - 我正在使用 sudo 執行 r10k 並且 git 伺服器不在 root 的 known_hosts 文件中,導緻密鑰認證失敗。一旦我將主機添加到文件中,一切都使用 shellgit 順利執行。

根據傑森的編輯:

我還沒有真正解決嘗試配置“堅固”提供程序的問題,但我確實弄清楚了為什麼“shellgit”不起作用 - 我使用 sudo 執行 r10k 並且 git 伺服器不在 root 的 known_hosts 文件中,導致密鑰認證失敗。一旦我將主機添加到文件中,一切都使用 shellgit 順利執行。

引用自:https://serverfault.com/questions/783335