2016-03-01 80 views
1

我目前正在使用厨师在opsworks上部署服务器,然后使用'部署'配方,从私人回购部署应用程序。厨师和git结帐

一切正常,因为我的回购是正确克隆。虽然克隆我的目录我结束了与一些子目录如

  • 当前的
  • 发布

我希望做的是刚刚拿到主分支不是在一个子文件夹,所以我本质上是从git获取我的web应用程序的根。

我当前的厨师代码看起来像

deploy '/var/www/html' do 
    repo 'myrepo.git' 
    git_ssh_wrapper "/git-ssh-wrapper" # For private Git repos 
    deploy_to '/var/www/html' 
    symlink_before_migrate.clear 
    create_dirs_before_symlink.clear 
    purge_before_symlink.clear 
    symlinks.clear 
    action :deploy 
end 

我不知道如果任一“动作”是不正确以上,或者我应该使用“deploy_revision”,而不是部署在这里?

感谢

+0

您是如何解决问题的?它是一个稀疏的结帐和你需要的浅层克隆吗?看起来厨师的git资源并没有给我们解决这个问题所需的一切。 – MondKin

回答

0

使用git资源,而不是deploy资源。

+0

对不起,在接受此延迟。我对厨师不太熟悉,所以不得不熟悉git资源上的选项。也许你可以扩大你的答案更多的人看待这一点(例如git_ssh_wrapper应该只是ssh_wrapper和'行动:部署'不存在等,因为我只通过试验和错误发现了一些这些(显然没有) – TommyBs

+0

您可以在Chef文档(https://docs.chef.io/resource_git.html)中找到它,包括顶部的示例 – coderanger

+0

正如我所说我找到了文档,但只是认为最好能扩展你的答案,而不仅仅是为潜在的未来观众提供链接,因为很明显,网址并不总是永久性的,然后一切都会在一个地方,但无论如何, – TommyBs