Capistrano установить и получить переменные окружения из конфигурации в грабли - PullRequest
0 голосов
/ 04 марта 2019

Я пытаюсь определить переменную окружения в /config/deploy/staging.rb, например:

set :default_env, { 
  'environment' => 'preprodv1'
}

Затем я пытаюсь получить доступ к этой переменной в моем файле / lib / capistrano / tasks / build.rake like:

desc "Builds the admin front-end"
    task :build_admin_front do
        on roles (:all) do |host|
            within "#{release_path}" do
                execute "cd #{release_path}/front_admin && npm install && npm run-script build --env=#{fetch(:environment)}"
            end
        end
    end
end

Но я получил эту ошибку: неопределенная локальная переменная или метод `environment '

У вас есть какие-либо идеи, почему?Не могу ли я получить доступ к моей переменной окружения, установленной в rb-файле, из моего файла rake?

Большое спасибо за вашу помощь!

Ответы [ 3 ]

0 голосов
/ 05 марта 2019

Спасибо за ваш ответ, я наконец-то исправил его, используя set :environment, "preprodv1" Вместо set :default_env, { 'environment' => 'preprodv1' } И сохранив #{fetch(:environment)} Большое спасибо за вашу помощь:)

0 голосов
/ 05 марта 2019
fetch(:default_env)['environment']
0 голосов
/ 04 марта 2019

Это потому, что вы установили переменную как :default_env, но вы запрашиваете ее как :environment?

...