【问题标题】:aws opsworks chef, git cloningaws opsworks 厨师,git 克隆
【发布时间】:2017-01-27 06:03:04
【问题描述】:

我正在使用 AWS opworks chef 来测试部署功能和其他功能。 我在网络上有本地 git 服务器/存储库,我只是想从该服务器将存储库克隆到实例中的目录。我看到厨师有 git 的资源,所以我把这个添加到我的食谱中:

git 'test_deploy' do
      repository 'http://git@192.0.0.10/scm/in/test.git'
      revision 'master'
      action :sync
      destination '/home/ubuntu'   
 end

Opsworks 完成后,实例处于“在线”状态,控制台输出中没有错误:

[2016-09-19T13:37:01+00:00] INFO: Processing git[test_deploy] action sync (test::default line 38)
[2016-09-19T13:37:02+00:00] INFO: Chef Run complete in 10.401210434 seconds

几天以来,我在尝试让 SSH 工作时遇到问题,但无济于事并且没有工作,所以为了尝试解决这个问题,我只使用 HTTP 并将 repo 公开(停止 ssh 提示)以查看当通过 opworks 发出“设置”阶段时,如果我能在实例上获得任何东西。

考虑到没有错误,当我登录实例时,没有源代码被克隆到主用户目录???不知道如何调试。 谁能帮我解决我做错了什么,我不知道为什么克隆一些东西这么挑剔?

PS 厨师 git 资源文档对我有帮助(除非我在这里遗漏了什么)有点遗憾,没有明确的例子。我确实对我的 rb 文件运行了 ruby​​ -c 来检查语法,这一切都很好

任何建议都将不胜感激

【问题讨论】:

  • 当我在实例上运行正常的“git clone git@192.0.0.10/scm/in/test.git”(http://infront)时,我想添加,repo 服务器也是一个测试 bitbucket 服务器
  • 尝试git clone http://git@192.0.0.10/scm/in/test.git /home/ubuntu 与您要求厨师执行的操作相同。
  • 这很有趣,因为上面的内容不适用于 git clone "git@192.0.0.10/scm/in/test.git" 末尾的 "/home/ubuntu" 我想知道是否应该将目标属性留空,因为它正在尝试点击主目录,看看是否有效?现在去试试
  • 不行,后面给个目录。如果您删除目标属性,它将成为资源的名称(此处为 test_deploy)并将写入某处(厨师缓存或厨师启动时的当前目录,我无法确定)
  • 是的,可以,嗯,我可以尝试将“目标”留空,如果这不起作用,我会尝试放置一个随机目录并查看,现在尝试

标签: git amazon-web-services chef-infra


【解决方案1】:

这是下面最初问题的答案:

@Tensibai 添加 '/home/ubuntu/test' 确实有效:O 啊!而不是仅仅做'/home/ubuntu',这似乎非常微妙,因为在厨师aws opworks控制台中它实际上并没有显示'目录已经存在'的git致命错误。相反,它只是说上面的消息说明它成功执行/运行了 git 资源。太痛苦了。我还假设 git clone 会像通常的过程一样创建它需要放置源的文件夹。但是谢谢你以不同的方式看待它,这个问题确实让我有些失望,因为厨师 aws 控制台没有显示那个错误。

【讨论】:

    猜你喜欢
    • 2014-10-15
    • 2019-03-06
    • 1970-01-01
    • 2016-07-19
    • 1970-01-01
    • 2015-01-27
    • 2016-05-28
    • 2014-09-06
    • 1970-01-01
    相关资源
    最近更新 更多