我知道之前有人问过,但我找不到一个解决方案,该解决方案并不涉及将存储库公开和/或在网址中使用带密码的https(而不是带密钥的ssh)。
我的问题与那里描述的基本相同:https://www.openshift.com/forums/openshift/gitssh-in-bashprofile-not-working-for-git-push-and-causes-error-cloning-submodules
长话短说,有一个子模块,一个主应用程序都存储在github上的私有git存储库中。在openshift上,当实例因SSH身份验证问题而尝试更新子模块时,部署推送失败。
按照上面的线程建议我尝试为git设置一个包装器,使用key和know_host文件创建app-root数据目录并设置一个GIT_SSH环境变量(使用.bash_profile,rhc set-env,pre_build hook或Steven Merrill GIT) SSH助手盒)。当你在机器上ssh时它工作正常,但是在执行部署推送时它没有好像GIT_SSH使用的是默认的而不是新设置的。
我的问题:
谢谢你的帮助!
编辑: 当我在机器中进行SSH并执行一个"齿轮部署HEAD"时,使用/var/lib/openshift//.ssh/known_hosts代替/ var / lib / openshift // app-root / data /.ssh/known_hosts
答案 0 :(得分:0)
我猜你的问题:
rhc evn set
命令但it did not work 但是,回到源问题,我认为您可以使用我在Openshift: how to install python modules from private repository?中使用的相同方法。
我找到的解决方案不是最佳解决方案,但至少我不需要使用登录/密码对来访问我的私人回购。