[英]Capistrano current application path
在使用 Capistrano 3 進行部署時,我需要從任務中獲取當前的本地應用程序路徑,Capistrano 是否提供任何包含此信息的靜態變量?
使用當前工作目錄Dir.pwd
解決
我最近遇到了一個類似的問題,我正在使用 Capistrano 下載遠程文件,並希望將它相對於我的開發機器上的任務文件放置。 我的 rake 任務看起來像這樣:
# lib/capistrano/tasks/awesome_tasks.rake
namespace :awesome_tasks do
task :do_something_awesome do
# Set path to local folder containing the task
path = Pathname.new(File.join(__dir__)) # => "parent_folders/app_root/lib/capistrano/tasks"
# Do something with path...
end
end
如果您需要應用程序根目錄的路徑,您可以執行以下操作:
# lib/capistrano/tasks/awesome_tasks.rake
namespace :awesome_tasks do
task :do_something_awesome do
# Set path to the root of the application.
# Use #realpath to exclude the extra dots (optional)
path = Pathname.new(File.join(__dir__, '../../..')).realpath # => "parent_folders/app_root"
# Do something with path...
end
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.