- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过遵循 DOCS 来学习使用 Capistrano 3,并且我编写了一个简单的任务来测试我的理解。
任务在默认 task
中创建目录在 lib/capistrano/tasks
:
desc "Check status of web server"
task :nginx_status do
on roles(:web) do |host|
execute 'service nginx status'
end
end
config/deploy/staging.rb
文件包含以下内容:
set :stage, :staging
role :web, "192.168.0.11"
role :app, "192.168.0.11"
role :db, "192.168.0.11", primary:true
server '192.168.0.11', user: 'vagrant', roles: %w{web app}
# Load DSL and Setup Up Stages
require 'capistrano/setup'
# Includes default deployment tasks
require 'capistrano/deploy'
# Loads custom tasks from `lib/capistrano/tasks' if you have any defined.
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
deploy.rb
包含一个应用程序名称和一个到 github 的 repo url。
cap staging nginx_status
我收到以下错误:
** Invoke staging (first_time)
** Execute staging
** Invoke load:defaults (first_time)
** Execute load:defaults
cap aborted!
Don't know how to build task 'nginx_status'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/task_manager.rb:62:in `[]'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:149:in `invoke_task'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:106:in `block (2 levels) in top_level'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:106:in `each'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:106:in `block in top_level'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:115:in `run_with_threads'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:100:in `top_level'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:78:in `block in run'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:176:in `standard_exception_handling'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/rake-10.3.1/lib/rake/application.rb:75:in `run'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/capistrano-3.2.1/lib/capistrano/application.rb:15:in `run'
/Users/H/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/capistrano-3.2.1/bin/cap:3:in `<top (required)>'
/Users/H/.rbenv/versions/2.1.1/bin/cap:23:in `load'
/Users/H/.rbenv/versions/2.1.1/bin/cap:23:in `<main>'
cap -vT
任务
nginx_status
不在列表中(?)
config/deploy.rb
有用。所以我现在的问题是如何从任务目录运行任务?
tasks
通过以下方式查看 dir:
# Loads custom tasks from `lib/capistrano/tasks' if you have any defined.
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
.rake
它奏效了。但是文档说它应该是
.cap
最佳答案
Take a look at this commit.
他们已经从 .cap
切换过来的至 .rake
3个月前。
整个想法是让 capistrano3
完全rake-compatible
.只需使用 .rake
为您的任务扩展。
关于capistrano - Capistrano 3 中的“不知道如何构建任务”错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23306437/
我是 Capistrano 的新手,我想知道为我的项目管理 Capistrano 配置的最佳方法是什么。 具体应该在哪里config/deploy.rb与我的项目的源代码控制相关吗?我应该存储没有特定
我正在使用 Capistrano 管理在多个负载平衡服务器上运行的 Java Web 应用程序。某些任务(例如配置更改)需要重新启动服务器或重新部署应用程序,在此期间服务器变得无响应。 如果 Capi
有没有办法可以看到 capistrano 任务依赖树?我有一个大项目,有很多任务和依赖项,但我对整个画面一无所知。 帕纳约蒂斯 最佳答案 在 Capistrano 3 中,您可以添加 --trace
我有一个命名空间和一些在 deploy:updated 之后运行的命名空间中的任务。下面是一个例子: namespace :myservice do task :start do on r
我想在运行 deploy:migrate 任务之前停止一些进程。我知道我可以通过复制现有代码并在任务的开头和结尾添加停止/启动步骤来重新定义 deploy:migrate 任务。 我想知道是否有办法避
我将如何更改 Capistrano 使用的临时目录? 示例:代替 /tmp ,我想用/home/user/tmp 我现在的 VPS 有 /tmp安装为 noexec ,这使我在尝试运行时获得了权限被拒
使用 Capistrano,如何回滚到特定版本? 我服务器的文件夹有一个/release 文件夹,我如何回滚到特定的文件夹? 我是否可以在本地获取计算机上的版本列表? 我正在使用 GIT,但这不起作用
我尝试使用“cap rollback”,但出现以下错误: $ cap rollback the task `rollback' does not exist 我需要做一些额外的设置才能使回滚正常工作吗
我正在使用 Capistrano 部署 ruby on Rails 项目。我正在尝试以用户“部署”身份登录远程服务器并部署此应用程序。 当我通过 ssh 进入框进行部署并 git 克隆项目时,它可
我正在使用 Capistrano 部署 ruby on Rails 项目。我正在尝试以用户“部署”身份登录远程服务器并部署此应用程序。 当我通过 ssh 进入框进行部署并 git 克隆项目时,它可
我正在使用 capistrano、capistrano/rbenv、capistrano/bundler 和 capistrano/rails。我在 capistrano 编译 Assets 的步骤中
尝试将此代码块授予 capistrano 的版本 3 但无济于事。一切都变了。任何人都可以帮助我在正确的轨道上进行转换吗? 旧版本 2 deploy.rb: #require 'new_relic/r
我对这两种工具都是新手,还没有完全掌握。 如果我使用 Capistrano 进行部署,为什么 Gradle 是部署目标? 另见 Gradle Overview . 最佳答案 Gradle 是从 Gro
如何使用 Capistrano v3 仅部署到一台服务器?我在那里发现的所有解决方案都部署到每台服务器,因此,我认为它们适用于 v2。 我不想部署一个阶段,我已经在使用多阶段,我只想在其中一个阶段部署
在 Capistrano Multi-staging documentation set :deploy_env, 'production'用来。是 deploy_env同 rails_env其中te
部署应用程序时,我将 Capistrano 与 capistrano_rsync_with_remote_cache gem 一起使用。 使用新软件升级部署服务器后出现问题: 卡皮斯特拉诺 2.5.1
capistrano-chef 是否有替代品?厨师独奏的 gem ?主要是为了避免两次定义服务器信息。 最佳答案 我在这个话题上发现了一些新鲜而热门的东西: Roundsman gem 文件: gem
我正在尝试通过遵循 DOCS 来学习使用 Capistrano 3,并且我编写了一个简单的任务来测试我的理解。 任务在默认 task 中创建目录在 lib/capistrano/tasks : d
我有一个 capistrano 任务,它整合了 Rails 项目的多个阶段的部署。 例如: task :consolidated_task do build #creates a new re
来自 deploy.rb 的片段 task :prod1 do set :deploy_to, "/home/project/src/prod1" end task :prod2 do set
我是一名优秀的程序员,十分优秀!