使用 Capistrano 激活 Virtualenv Wrapper
Activate Virtualenv Wrapper with Capistrano
我正在尝试使用 Capistrano 部署 Django 项目。 Capistrano 将代码部署到我的服务器并完成部署步骤。
但是当我尝试添加这样的自定义任务时...
task :collect_static do
on roles(:app) do |host|
execute "cd #{release_path}/myproject"
execute "workon myproject"
execute "./manage.py collectstatic"
end
end
after "deploy:updated", "collect_static"
它抛出以下错误...
02 bash: workon: command not found
部署后,如果我手动通过 SSH 连接到服务器并使用 运行 workon 命令,它可以正常工作(同一用户)。只是 Capistrano 不认识它?
workon
不是程序,而是来自 virtualenvwrapper
的 shell 函数。要 bash
找到它,您必须在 shell.
中找到 virtualenvwrapper.sh
我正在尝试使用 Capistrano 部署 Django 项目。 Capistrano 将代码部署到我的服务器并完成部署步骤。
但是当我尝试添加这样的自定义任务时...
task :collect_static do
on roles(:app) do |host|
execute "cd #{release_path}/myproject"
execute "workon myproject"
execute "./manage.py collectstatic"
end
end
after "deploy:updated", "collect_static"
它抛出以下错误...
02 bash: workon: command not found
部署后,如果我手动通过 SSH 连接到服务器并使用 运行 workon 命令,它可以正常工作(同一用户)。只是 Capistrano 不认识它?
workon
不是程序,而是来自 virtualenvwrapper
的 shell 函数。要 bash
找到它,您必须在 shell.
virtualenvwrapper.sh