使用capistrano进行部署时始终将环境显示为生产

问题描述 投票:0回答:1

当我运行命令cap暂存deploy时 ,它也会产生如下结果

puma:start
using conf file /var/www/rails/shared/tmp/puma.rb
01 ~/.rvm/bin/rvm default do bundle exec puma -C /var/www/rails/shared/tmp/puma.rb --daemon
01 Puma starting in single mode...
01 * Version 3.12.0 (ruby 2.5.0-p0), codename: Llamas in Pajamas
01 * Min threads: 0, max threads: 8
01 * Environment: production
01 * Daemonizing..

deploy.rb文件中,它具有以下行

set :puma_env, fetch(:rack_env, fetch(:rails_env, 'production'))

如果我将其价值从生产更改为其他任何价值,那么它也会在其中反映出来。 此行对设置部署环境是否有影响?

ruby-on-rails capistrano puma
1个回答
2
投票

根据文档 ,如果尚未设置fetch的第二个参数,它将作为第一个参数的默认值。

结果,如果您的deploy.rb文件未声明rails_env值,则该值将成为production值,因为它是默认值。

您可以通过将此行添加到deploy.rb来覆盖此行为。

set :rails_env, 'your_environment_here'

© www.soinside.com 2019 - 2024. All rights reserved.