在rails app中使用Capistrano 3部署database.yml

时间:2015-07-02 02:50:06

标签: ruby-on-rails ruby-on-rails-4 heroku capistrano capistrano3

我有一个连接到第二个外部数据库的Rails 4应用程序。所以我将数据库凭据添加到我的database.yml文件中,并将其从git中的版本控制中排除。我需要使用push Heroku Capistrano Capistrano 3进行部署。

我发现了一些针对此任务提出的问题,但它们并不适用于我,而且在capistrano发布之前就已经得到了解答。

我通过添加:{/ p>来设置group :development, :test do gem 'capistrano-rails', '~> 1.1.1' end

bundle install

按照安装说明中的说明运行bundle exec cap install然后database.yml

我在我的应用中创建了一个新文件夹并将myApp/shared/config/database.yml文件复制到那里:deply.rb(不确定是否有必要)

最后,我在after "deploy:update_code","deploy:config_symlink" namespace :deploy do task :config_symlink do run "cp #{shared_path}/shared/config/database.yml #{release_path}/config/database.yml" end end 中创建了以下任务:

Heroku

当推送到/app/vendor/bundle/ruby/2.0.0/gems/activerecord-4.2.1/lib/active_record/connection_adapters/connection_specification.rb:248:in `resolve_symbol_connection': 'pg_development' database is not configured. Available: ["production"] (ActiveRecord::AdapterNotSpecified) 时,这不起作用并引发错误:

production.rb

我尝试将此任务放在set :linked_files, %w{config/database.yml}文件中,并将development.rb添加到database.yml文件中。

有人可以帮助我将Heroku文件投放到 ^ - Start of the line \s - Single whitespace character (space or tab or line return) * - 0 or more of the previous item \s* - Zero or more whitespace characters [] - Character class. Matches any of the characters or groups of characters contained [\w\s.] - Matches a word character, a whitespace character or a period ('.') [\w\s.]* - Matches 0 or more of the above $ - End of the line 生产?

0 个答案:

没有答案