daddy 0.3.33 → 0.3.34

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7ccd54aece78155f0dc1d720a791abd2024391e5
4
- data.tar.gz: 839055c3f8929cd73179b38d3357a25c3ab8a16d
3
+ metadata.gz: 0a8406dde7747d2ecb6482a3359fc6c73a83467b
4
+ data.tar.gz: d9540330ae87efb0c0e337fa67fae7ae4e0c2372
5
5
  SHA512:
6
- metadata.gz: 6a5ed3415b414134ea2f36ea6f5c237b1baf4973596499cc1c21a467505aacc39ee72aef9f33fc509b577178a677aa6e10ee3bf3e9208750acbe11396bfb2325
7
- data.tar.gz: 61ff9b31dc665f7236330814598446f6bccb8e8e90e6c86220ed19964a5db8927de29c8c837f48666d28fd2b7d41ce450309140cbed7f47dd4662ec09de2a0bd
6
+ metadata.gz: bb19d3e42d23c63d8fc4a69f54355c098c50841e7b880e191a97a42fb5125c700a15eea6bbc7bf457ed0567d03c39e3a70b43c0035ff9e2ad5aee01d4cfb90fb
7
+ data.tar.gz: 35238380499643e4b73133460b8fffd36be52898ffaaf3ce7611fda4ec0f4ddaac6f3d43bde3e5a61001b12cf6a8d6d8b6b0cabb03305a1d1bc4ecd00485a80f
@@ -1,3 +1,3 @@
1
1
  module Daddy
2
- VERSION = '0.3.33'
2
+ VERSION = '0.3.34'
3
3
  end
@@ -5,19 +5,19 @@ namespace :dad do
5
5
 
6
6
  desc "データベースをダンプします。"
7
7
  task :dump do
8
- backup_dir = ask('出力先ディレクトリ', :required => true)
8
+ dump_dir = ENV['DUMP_DIR'] || ask('出力先ディレクトリ', :required => true)
9
9
 
10
10
  config = YAML.load_file(File.join('config', 'database.yml'))[Rails.env]
11
11
  host = config['host'] || 'localhost'
12
12
  database = config['database']
13
13
  user = config['username']
14
14
  password = config['password']
15
- now = Time.now
16
- filepath = File.join(backup_dir, "#{database}-#{now.strftime('%Y-%m-%d_%H%M')}.dump.gz")
15
+
16
+ filepath = File.join(dump_dir, "#{database}-#{Time.now.strftime('%Y-%m-%d_%H%M')}.dump.gz")
17
17
 
18
18
  run "mkdir -p #{File.dirname(filepath)}",
19
19
  "mysqldump -u #{user} -p#{password} -h #{host} #{database} | gzip > #{filepath}",
20
- :gsub => [/-p[^ ]+/, '-pFILTERED']
20
+ :mask => [/-p[^ ]+/, '-pFILTERED']
21
21
  end
22
22
  end
23
23
 
@@ -0,0 +1,26 @@
1
+ require_relative 'task_helper'
2
+
3
+ namespace :dad do
4
+ namespace :db do
5
+
6
+ desc "データベースをロードします。"
7
+ task :load do
8
+ dump_file = ENV['DUMP_FILE'] || ask('ダンプファイル', :required => true)
9
+
10
+ config = YAML.load_file(File.join('config', 'database.yml'))[Rails.env]
11
+ host = config['host'] || 'localhost'
12
+ database = config['database']
13
+ user = config['username']
14
+ password = config['password']
15
+
16
+ if dump_file.end_with?('.gz')
17
+ run "zcat #{dump_file} | mysql -u #{user} -p#{password} -h #{host} #{database}",
18
+ :mask => [/-p[^ ]+/, '-pFILTERED']
19
+ else
20
+ run "mysql -u #{user} -p#{password} -h #{host} #{database} < #{dump_file}",
21
+ :mask => [/-p[^ ]+/, '-pFILTERED']
22
+ end
23
+ end
24
+ end
25
+
26
+ end
@@ -70,15 +70,21 @@ def self.ask(prompt, options = {})
70
70
  answer.blank? ? nil : answer
71
71
  end
72
72
 
73
+ def self.quiet?
74
+ ARGV.include?('--quiet') or ARGV.include?('-q')
75
+ end
76
+
73
77
  def self.run(*commands)
74
78
  options = commands.pop if commands.last.is_a?(Hash)
75
79
  options ||= {}
76
80
 
77
81
  commands.each do |c|
82
+ masked_command = options[:mask] ? c.gsub(*options[:mask]) : c
83
+
78
84
  if dry_run?
79
- puts "command to be run: #{options[:gsub] ? c.gsub(*options[:gsub]) : c}"
85
+ puts "command to be run: #{masked_command}" unless quiet?
80
86
  else
81
- puts options[:gsub] ? c.gsub(*options[:gsub]) : c
87
+ puts masked_command unless quiet?
82
88
  fail unless system(c)
83
89
  end
84
90
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: daddy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.33
4
+ version: 0.3.34
5
5
  platform: ruby
6
6
  authors:
7
7
  - ichy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-16 00:00:00.000000000 Z
11
+ date: 2015-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capybara
@@ -322,6 +322,7 @@ files:
322
322
  - lib/tasks/db_create.rake
323
323
  - lib/tasks/db_dump.rake
324
324
  - lib/tasks/db_fixtures.rake
325
+ - lib/tasks/db_load.rake
325
326
  - lib/tasks/diary.rake
326
327
  - lib/tasks/elasticsearch.rake
327
328
  - lib/tasks/elasticsearch/elasticsearch.conf.erb