From 5b2509701a41562ddda539e64f963adb701a1b37 Mon Sep 17 00:00:00 2001 From: kane Date: Sun, 10 Oct 2010 00:28:03 +0200 Subject: [PATCH] only supply user parameter to pg_dump if a username is set. this allows to use db:structure:dump with postgresql 9.0 and ident authentication. --- .../lib/active_record/railties/databases.rake | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/activerecord/lib/active_record/railties/databases.rake b/activerecord/lib/active_record/railties/databases.rake index 58c705c..a4022b5 100644 --- a/activerecord/lib/active_record/railties/databases.rake +++ b/activerecord/lib/active_record/railties/databases.rake @@ -377,7 +377,8 @@ namespace :db do unless search_path.blank? search_path = search_path.split(",").map{|search_path| "--schema=#{search_path.strip}" }.join(" ") end - `pg_dump -i -U "#{abcs[Rails.env]["username"]}" -s -x -O -f db/#{Rails.env}_structure.sql #{search_path} #{abcs[Rails.env]["database"]}` + user_param = abcs[Rails.env]["username"] ? %{-U "#{abcs[Rails.env]["username"]}"} : '' + `pg_dump -i #{user_param} -s -x -O -f db/#{Rails.env}_structure.sql #{search_path} #{abcs[Rails.env]["database"]}` raise "Error dumping database" if $?.exitstatus == 1 when "sqlite", "sqlite3" dbfile = abcs[Rails.env]["database"] || abcs[Rails.env]["dbfile"] -- 1.6.3.3