heroku_pg_loader 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/heroku_pg_loader.rb +37 -26
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9478602d8e02974b6fae44283ba2286aef8629db
4
- data.tar.gz: d46d0caa8a1a624da1cf6f089a2ba77582631752
3
+ metadata.gz: 961c9a4ed8bede88badf672c00e51be244062f32
4
+ data.tar.gz: a95cd05c5c99e7a3aedc2e6d7d5bd4cfae163238
5
5
  SHA512:
6
- metadata.gz: d71b3d120d9efb62ef4a522de7c46f7dc3415dc6a07191c0f567f5bf7d58ace26506043c39ff9af95cb996cd796867383e46380447b7a2bfb2dd92489874e9ca
7
- data.tar.gz: 1d2aba24040bff9b4cd94b21c72e87eee5ddd4591e9fdc50e240e28ab42d7538629b903937e7b4eb7454f333196a3a2f25ca284599001a31e1891f09ef1e68bb
6
+ metadata.gz: 75b9e01632cc906a557cbc55501c99dbfbf14243e604097a989f243a197920325aae4db1ab6a63be5410d2ffea10b1ca666062bc99503c1da76d274700974b66
7
+ data.tar.gz: 6174db8f3a3f64cba08f30b7e6ed8c79894e70116c5751155b7cb0630ccb63eb57c460b318d2d1b24ac0e198a5d500b4660d26d3549a0a678923aff8bef66490
@@ -43,7 +43,6 @@ class HerokuPgLoader
43
43
  def dump_file
44
44
  if @dump_file.nil?
45
45
  path = "#{working_dir}/latest.dump"
46
- puts "Creating dump file #{path}"
47
46
  @dump_file = File.open(path, 'w')
48
47
  end
49
48
  @dump_file
@@ -59,31 +58,40 @@ class HerokuPgLoader
59
58
 
60
59
  def get_database_details
61
60
 
62
- # Read database.yml
63
- db_config = YAML.load_file("#{working_dir}/config/database.yml")
64
-
65
- dev_config = db_config["development"]
66
- if dev_config["adapter"] == "postgresql"
67
- @db_name = dev_config["database"]
68
- @db_username = dev_config["username"]
69
- @db_password = dev_config["password"]
70
- end
61
+ guess_database_from_rails_config
71
62
 
72
63
  @db_name = prompt "Local Database Name:\n (WARNING: THIS DATABASE WILL BE ERASED)",
73
- @db_name,
74
- "Database name not entered"
64
+ @db_name,
65
+ "Database name not entered"
75
66
 
76
67
  @db_username = prompt "Database Username:",
77
- @db_username,
78
- "Database username not entered"
68
+ @db_username,
69
+ "Database username not entered"
79
70
 
80
71
  @db_password = prompt "Database Password:",
81
- @db_password,
82
- "Database Password not entered"
72
+ @db_password,
73
+ "Database Password not entered"
74
+ end
75
+
76
+ def guess_database_from_rails_config
77
+ rails_db_config_file = "#{working_dir}/config/database.yml"
78
+
79
+ if File.exist? rails_db_config_file
80
+
81
+ # Read database.yml
82
+ db_config = YAML.load_file(rails_db_config_file)
83
+
84
+ dev_config = db_config["development"]
85
+ if dev_config["adapter"] == "postgresql"
86
+ @db_name = dev_config["database"]
87
+ @db_username = dev_config["username"]
88
+ @db_password = dev_config["password"]
89
+ end
90
+ end
83
91
  end
84
92
 
85
93
  def working_dir
86
- Dir.getwd
94
+ Dir.getwd
87
95
  end
88
96
 
89
97
  def prompt(message, current_value, error_message)
@@ -97,21 +105,24 @@ class HerokuPgLoader
97
105
  end
98
106
 
99
107
  def get_app_name
100
- detect_app_name
108
+ guess_app_name
101
109
 
102
110
  @heroku_app_name = prompt "Heroku App Name:",
103
- @heroku_app_name,
104
- "No Heroku App Name entered"
111
+ @heroku_app_name,
112
+ "No Heroku App Name entered"
105
113
  end
106
114
 
107
- def detect_app_name
108
- git_remote = `git remote -v | grep heroku`
115
+ def guess_app_name
116
+
117
+ if File.exist?("#{working_dir}/.git")
118
+ git_remote = `git remote -v | grep heroku`
109
119
 
110
- /git@heroku.com:(\w*).git/.match(git_remote)
111
- @heroku_app_name = $1
120
+ /git@heroku.com:(\w*).git/.match(git_remote)
121
+ @heroku_app_name = $1
112
122
 
113
- if @heroku_app_name
114
- puts "Heroku App Detected: #{@heroku_app_name}"
123
+ if @heroku_app_name
124
+ puts "Heroku App Detected: #{@heroku_app_name}"
125
+ end
115
126
  end
116
127
  end
117
128
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: heroku_pg_loader
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gerry Eng