2

我正在使用 capistrano 3 设置一个新环境,其中有一个单独的数据库服务器作为db角色。这是我正在使用的规范:

set :stage, "preview"
server 'my-web-server', roles: %w{app web}
server 'my-db-server', roles: %{db}

但是,它会尝试检查my-db-server上的源代码,我不想要它甚至没有git安装它。鉴于deploy任务是内置的,我如何阻止 capistrano 这样做?

我可以使用 来解决它ROLES=app,web cap myenv deploy,但是我怎样才能将其设为默认值,以便我的团队成员不必担心呢?

4

1 回答 1

0

默认情况下,Capistrano 使用一种remote策略从 Git 获取源代码,这意味着服务器将尝试提取源代码。

我认为你想要的是一种local策略。在这种情况下,Capistrano 可以从您的机器上获取源代码,然后通过 scp 复制文件。

它可以通过deploy_via属性进行配置。正确的值为copy

http://bu.chsta.be/blog/2013-02-24/capistrano-deployment-strategies-deploy-via-a-copy/

于 2014-02-10T14:08:27.210 回答