Ubuntu Vagrant puppet-无法使用专用存储库运行composer安装
因此,我的问题基本上与这个问题非常相似: 我试图让composer使用puppet在Ubuntu12.04上安装部署的应用程序 作为composer运行的一部分,我尝试安装的其中一个包需要部署密钥。作为puppet运行的一部分,我已将部署密钥(私有、公共、授权和已知的\u主机)复制到vagrant users主目录(Ubuntu Vagrant puppet-无法使用专用存储库运行composer安装,ubuntu,ssh,repository,composer-php,puppet,Ubuntu,Ssh,Repository,Composer Php,Puppet,因此,我的问题基本上与这个问题非常相似: 我试图让composer使用puppet在Ubuntu12.04上安装部署的应用程序 作为composer运行的一部分,我尝试安装的其中一个包需要部署密钥。作为puppet运行的一部分,我已将部署密钥(私有、公共、授权和已知的\u主机)复制到vagrant users主目录(/home/vagrant/.ssh/) 这就是我的问题与参考问题的不同之处,安全性不是一个问题,也不是此版本的多操作系统兼容性,因此我很高兴将密钥复制到框中,我已经完成了 我还将
/home/vagrant/.ssh/
)
这就是我的问题与参考问题的不同之处,安全性不是一个问题,也不是此版本的多操作系统兼容性,因此我很高兴将密钥复制到框中,我已经完成了
我还将这个密钥加载到users.profile中,这样如果我使用ssh连接到机器上,我就可以运行composer安装,一切都正常运行。问题是,我想让应用程序作为puppet运行的一部分进行安装,我正在努力让它正常工作(所有程序都会安装,直到它到达需要部署密钥的包为止)
Mycomposer.json
当前包含以下内容(当前尝试使其工作):
My puppet run使用vcsrepo(允许您传入密钥)从git提取回购:
这一部分工作正常,但当我按如下方式运行composer安装时,当它命中composer.json中引用的包时,它就会死掉:
composer::exec { 'site-composer-run':
cmd => 'install',
cwd => '/var/www/site.dev',
require => [
Class['composer'],
Vcsrepo["/var/www/site.dev"]
]
}
我认为我需要的是一种为用户添加ssh密钥的方法,而不需要将用户连接到bash终端,但我不太确定,因此我愿意接受任何建议。提前感谢。“它死了”-错误信息是什么?同意作曲家的错误会有帮助。这是可以通过密钥转发实现的吗?我相信这是最理想的方式。
vcsrepo { "/var/www/site.dev":
require => [ File["/home/vagrant/.ssh/key"] ],
ensure => present,
owner => vagrant,
provider => git,
source => "ssh://git@bitbucket.org/account/site.git",
revision => 'master',
identity => '/home/vagrant/.ssh/key',
}
composer::exec { 'site-composer-run':
cmd => 'install',
cwd => '/var/www/site.dev',
require => [
Class['composer'],
Vcsrepo["/var/www/site.dev"]
]
}