我试图从ruby脚本运行capistrano 3.x任务。
我深入研究文档,在旧版本的capistrano(2.x)中,您可以使用Capistrano :: CLI界面来访问和执行任务。
在较新的版本中,这个模块似乎已经消失,我无法找到类似的东西。
我在没有运气的情况下尝试使用Capistrano :: DSL。
为了说清楚,我看起来像这样:
require 'capistrano/all'
Capistrano::CLI.invoke(stage, task)
任何线索??
答案 0 :(得分:0)
终于解决了,这就是我所做的,
我使用了Capistrano :: Application.invoke({task})方法
对于capistrano 3.8.2
require 'capistrano/all'
require 'capistrano/setup'
require 'capistrano/deploy'
require "capistrano/scm/git"
install_plugin Capistrano::SCM::Git
stages = "production"
set :application, 'my_app_name'
set :repo_url, 'git@github.com:capistrano/capistrano.git'
set :deploy_to, '/var/www/'
set :stage, :production
role :app, %w{www}
Dir.glob("lib/capistrano/tasks/*.rake").each { |r| import r }
Capistrano::Application.invoke("common:ntp")
希望它有所帮助。