繁体   English   中英

使用 capistrano 在 deploy.rb 中执行 bash 脚本

[英]execute bash script inside deploy.rb using capistrano

我正在学习(通过做) RailsCapistrano

如何在deploy.rb中执行脚本?

我遇到了run(command)exec(command)execute:run:

我不必指定:dbweb所以我有以下主干:

task :myTask do
    on roles(:app) do 
      execute "bash myScript.sh"
      puts "#{:server} reports: #{myTask}"
    end
  end
  1. 这个对吗?
  2. ssh 是整个过程的一部分还是我必须在命令中使用 ssh ?
  3. 人们每次进行更改时如何在没有cap deploy的情况下开发deploy.rb

谢谢!

Ruby 允许您使用backtick运行 shell 脚本

例如

output = `pwd`
puts "output is #{output}"

查看更多https://ruby-doc.org/core-1.9.3/Kernel.html#method-i-60

这对我有用:

role :app, 'user@domain1.com'

on roles(:app) do
  within 'remote_path' do
    execute 'bash', ' myScript.sh'
  end
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM