问题标签 [capistrano3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
capistrano - 如何获取 Capistrano 3 中当前任务的名称?
在 Capistrano 2.x 中,我可以current_task.name
在任务内部使用来获取当前任务的名称。Capistrano 3中是否有类似的东西?
ruby-on-rails - 为什么首先使用 Capistrano 部署运行 db:migrate?
我第一次使用 Capistrano 部署到生产环境,运行时出现错误
cap production deploy
错误是:
这个错误实际上是完全有道理的。引用的表不存在。我不明白为什么迁移正在运行?为什么不是在第一次运行时从模式中创建数据库。我是否无意中删除了说明已运行哪些迁移的文件?要么只是删除它,要么通过“.gitignoring”它?
我想我知道如何修复它(rake db:create 或类似的),但我不明白的是,如果在 Capistrano v3 中它知道这是第一次,为什么它不会直接使用模式而不是运行所有迁移?我是一个菜鸟,这似乎是合理的,但另一方面,运行迁移会达到相同的结果,所以......(但是那些在生产中不盲目使用迁移的人呢;不会他们被卡住了吗?)谢谢。
git - 仅将源部署到应用服务器
我正在使用 capistrano 3 设置一个新环境,其中有一个单独的数据库服务器作为db角色。这是我正在使用的规范:
但是,它会尝试检查my-db-server上的源代码,我不想要它甚至没有git
安装它。鉴于deploy
任务是内置的,我如何阻止 capistrano 这样做?
我可以使用 来解决它ROLES=app,web cap myenv deploy
,但是我怎样才能将其设为默认值,以便我的团队成员不必担心呢?
ruby-on-rails - Capistrano 3 进程失败
我正在从 Capistrano 2 升级到 Capistrano 3,一切似乎都运行成功,除了我看到这两个在运行时失败:
为什么这些失败,我该如何解决?
ruby-on-rails - Capistrano 部署后资产链接到错误的发布
所以我是 Capistrano 的新手,并试图用 Capistrano 部署我的应用程序。
做了很多谷歌搜索,真的很难弄清楚,我找到的所有文档都适用于旧版本的 Capistrano,它们似乎破坏了与其他所有版本的兼容性。
但是我偶然发现了一个我自己似乎无法解决的问题。
Capistrano 部署后,应用程序资产链接到错误的发布文件夹,并且应用程序只是返回缺少模板错误。
事实上,他试图访问的文件夹不存在,因为当前版本文件夹链接到其他版本
请注意资产如何尝试访问20140213082235,实际上,当前发布文件夹是20140213100546。如果它有帮助,无论我运行多少次部署, 20140213082235似乎总是保持他一遍又一遍地尝试访问的同一个文件夹。
地狱这个版本甚至不存在于发布文件夹中。只有一个版本(我之前清理过)。
为了争论,我在这个特定部署之前删除了 shared/bin、releases 文件夹和当前符号链接。
这是我的 Capistrano deploy.rb
这是 Capistrano 在部署期间写入的调试信息。
如果它有任何帮助,Nginx 乘客服务器块
很感谢任何形式的帮助。
先感谢您。
ruby-on-rails - Rails 4 / Capistrano 3 部署停止工作(没有错误)
我构建了我的第一个 Rails 应用程序并在家庭服务器上运行生产。Capistrano 3 工作了大约一个月,现在它刚刚停止部署。当我运行时cap production deploy
,我的应用程序不会在服务器上更改。它将我的文件上传git-ssh.sh
到根临时目录,然后“成功”退出。自从它最初工作以来,除了修改一些 html 之外,我没有改变任何东西。
我的远程仓库在 bitbucket 上并且有最新的提交。:repo_url
我可以去注释掉里面deploy.rb
并且没有错误。
由于没有错误,而且我是新手,我觉得这是一种非常普遍的行为,我忽略了一些小问题。有任何想法吗?
正常输出:
详细输出:
shell - Capistrano 3. 在服务器上设置 bash shell 而不是 csh
当 cap3 尝试在我的 FreeBSD 服务器上执行命令时 - 我有一个错误并且我的 cap3 任务不起作用
我知道为什么 - 因为我的服务器默认使用 csh shell
以下 cap3 变量对我不起作用
如何为 cap3 任务设置 shell?
deployment - Capistrano 创建任务以更改当前符号链接
我正在尝试为我的网站设置 Capistrano 部署,我的部署工作正常,所有身份验证都很好,但是我使用 Media Temple 托管,因此默认符号链接将不起作用,因为 apache 无法访问为当前指定的路径最新发布的。
我正在尝试做一个任务来取消当前符号链接的链接,然后用相对路径重新创建它,但是 Capistrano 文档严重缺乏,我无法在任何地方找到更多关于如何准确设置它的信息。
我曾尝试使用 sh,但这似乎是在我的计算机上而不是在服务器上运行命令,找不到运行命令,我尝试执行但找不到正确的格式来执行诸如 rm 或 ln 等操作。 .
目前我正在尝试以下方法: