【发布时间】:2015-01-15 15:19:45
【问题描述】:
我正在尝试在 vagrant 机器上使用 Chef 部署 Rails 应用程序。我正在使用 depoly_revision 资源来部署 rails 应用程序。但我收到以下错误。
致命:Errno::ENOENT: deploy_revision[/var/www/app_name](applications::recipe_name 第 130 行)出现错误:Errno::ENOENT: No such file or directory - /var/www/app_name/releases /03d4548d9351df442ec9b5e08baef5b4ec3fce1b
我的部署块如下
directory "/var/www" do
owner "root"
group "root"
action :create
end
directory "/var/www/#{app_name}" do
owner app_name
group app_name
end
directory "/var/www/#{app_name}/shared/" do
owner app_name
group app_name
end
directory "/var/www/#{app_name}/releases/" do
owner app_name
group app_name
end
directory "/var/www/#{app_name}/shared/cached-copy" do
owner app_name
group app_name
end
deploy_revision deploy_to do
deploy_to "/var/www/#{app_name}"
action app_environment_config["action"]
repo app_config["repository"]
revision app_environment_config["revision"]
user app_name
group app_name
migrate params[:migrate]
migration_command "rake db:migrate --trace &> migrate.log"
environment("RAILS_ENV" => env, "APPLICATION_NAME" => app_name)
shallow_clone true
symlinks("assets" => "public/assets", "pids" => "tmp/pids", "sockets" => "tmp/sockets", "log" => "log")
symlink_before_migrate({})
before_migrate do
execute "bundle install --path #{deploy_to}/shared/bundle --deployment --without development test" do
cwd release_path
user app_name
end
end
end
【问题讨论】:
-
/var/www/#{app_name}不存在,是吗?
标签: ruby-on-rails-4 deployment chef-infra