o2h 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/o2h/recipes/sync.rb +9 -3
- data/lib/o2h/version.rb +1 -1
- data/o2h.gemspec +1 -1
- data/spec/recipes/sync_spec.rb +2 -1
- metadata +10 -10
data/lib/o2h/recipes/sync.rb
CHANGED
@@ -5,6 +5,9 @@ _cset(:sync_db_remote_config) { "#{shared_path}/config/database.yml" }
|
|
5
5
|
_cset(:sync_db_local_file) { "tmp/#{sync_db_file}" }
|
6
6
|
_cset(:sync_db_local_config) { "config/database.yml" }
|
7
7
|
|
8
|
+
require 'pg_dumper'
|
9
|
+
require 'capistrano/cli'
|
10
|
+
|
8
11
|
namespace :sync do
|
9
12
|
|
10
13
|
namespace :db do
|
@@ -45,11 +48,11 @@ namespace :sync do
|
|
45
48
|
|
46
49
|
raise "remote database config not found" unless remote
|
47
50
|
|
48
|
-
require 'pg_dumper'
|
49
51
|
pg = PgDumper.new(remote["database"], 'pg_dump')
|
50
52
|
pg.output = remote_file
|
51
53
|
pg.clean!
|
52
54
|
pg.compress! 9
|
55
|
+
pg.skip_owner!
|
53
56
|
pg.auth = remote
|
54
57
|
|
55
58
|
run pg.command
|
@@ -60,11 +63,14 @@ namespace :sync do
|
|
60
63
|
local = database_config
|
61
64
|
raise "local database config not found" unless local
|
62
65
|
|
63
|
-
require 'pg_dumper'
|
64
66
|
pg = PgDumper.new(local["database"], "psql")
|
65
67
|
pg.auth = local
|
66
68
|
|
67
|
-
|
69
|
+
agree = Capistrano::CLI.ui.agree("Rewrite local database '#{local["database"]}'? (Yes, [No]) ") do |q|
|
70
|
+
q.default = 'n'
|
71
|
+
end
|
72
|
+
|
73
|
+
run_locally "gunzip --stdout #{sync_db_local_file} | #{pg.command}" if agree
|
68
74
|
end
|
69
75
|
|
70
76
|
task :fetch do
|
data/lib/o2h/version.rb
CHANGED
data/o2h.gemspec
CHANGED
@@ -18,5 +18,5 @@ Gem::Specification.new do |gem|
|
|
18
18
|
gem.add_dependency 'newrelic_rpm', '~> 3.3.0'
|
19
19
|
gem.add_dependency 'capistrano', '~> 2.9.0'
|
20
20
|
gem.add_dependency 'rvm', '~> 1.9.2'
|
21
|
-
gem.add_dependency 'pg_dumper', '~> 0.1.
|
21
|
+
gem.add_dependency 'pg_dumper', '~> 0.1.6'
|
22
22
|
end
|
data/spec/recipes/sync_spec.rb
CHANGED
@@ -23,10 +23,11 @@ describe "sync" do
|
|
23
23
|
end
|
24
24
|
|
25
25
|
it "should set proper repository" do
|
26
|
+
Capistrano::CLI.ui.stub(:agree) { true }
|
26
27
|
subject.should_receive(:download)
|
27
28
|
subject.should_receive(:run_locally).with("gunzip --stdout tmp/app-dump.sql.gz | psql -p local-port local-db")
|
28
29
|
subject.execute_task(task)
|
29
|
-
subject.should have_run("pg_dump -c -Z 9 -p #{port} -h #{host} -U #{username} -f /shared/app/backup/app-dump.sql.gz #{database}")
|
30
|
+
subject.should have_run("pg_dump -c -Z 9 --no-owner -p #{port} -h #{host} -U #{username} -f /shared/app/backup/app-dump.sql.gz #{database}")
|
30
31
|
end
|
31
32
|
end
|
32
33
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: o2h
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2011-12-06 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: newrelic_rpm
|
16
|
-
requirement: &
|
16
|
+
requirement: &70217441008420 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 3.3.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70217441008420
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: capistrano
|
27
|
-
requirement: &
|
27
|
+
requirement: &70217441007880 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 2.9.0
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70217441007880
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rvm
|
38
|
-
requirement: &
|
38
|
+
requirement: &70217441007260 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,18 +43,18 @@ dependencies:
|
|
43
43
|
version: 1.9.2
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70217441007260
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: pg_dumper
|
49
|
-
requirement: &
|
49
|
+
requirement: &70217441006580 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.1.
|
54
|
+
version: 0.1.6
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70217441006580
|
58
58
|
description: Collection of recipes and gem dependencies for o2h deployment
|
59
59
|
email:
|
60
60
|
- michal@o2h.cz
|