从Chef克隆git存储库

时间:2017-09-26 10:27:55

标签: ruby chef chef-recipe

我在网上发现我们可以从以下主厨资源块中克隆git存储库。

git "/path/to/check/out/to" do
  repository "git://github.com/opscode/chef.git"
  reference "master"
  action :sync
end

我的问题是如何在此资源块中使用我的Git用户凭据。

3 个答案:

答案 0 :(得分:0)

查看主厨的文档,您可以为此https://docs.chef.io/resource_git.html添加ssh_wrapper参数,以便您可以使用特定用户进行克隆。

可能ssh_wrapper

您的ssh_wrapper可能如下:

ssh_wrapper "ssh -i /some/path/id_rsa"

所有参数

git 'name' do
  additional_remotes         Hash
  checkout_branch            String
  depth                      Integer
  destination                String # defaults to 'name' if not specified
  enable_checkout            TrueClass, FalseClass
  enable_submodules          TrueClass, FalseClass
  environment                Hash
  group                      String, Integer
  notifies                   # see description
  provider                   Chef::Provider::Scm::Git
  reference                  String
  remote                     String
  repository                 String
  revision                   String
  ssh_wrapper                String
  subscribes                 # see description
  timeout                    Integer
  user                       String, Integer
  action                     Symbol # defaults to :sync if not specified
end

答案 1 :(得分:0)

如果您想使用SSH密钥作为凭据,请查看poise_git cookbook and resource,它会为您处理。

答案 2 :(得分:0)

我相信这样更容易:

git clone https://username:password@github.com/opscode/chef.git