capistrano-container-db 0.0.1 → 0.0.2

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: 3d98988d18e9e5933477ae48f580f326c1437354
4
- data.tar.gz: 34fa561aa7fe1c6f24d5104a9d62d71dd027278b
3
+ metadata.gz: accfd01a57b36bf5bf799394faceb69324eccafc
4
+ data.tar.gz: 6640b2e0187000c2dac210ab71fe85865845eabb
5
5
  SHA512:
6
- metadata.gz: ca50a7a187fe63763af30a83ae7017178210bbfbf5ebbba12633464bcfd01a0de95485de113f56990490603d466db8e4faf4e4df97d2bb31daed54789e2ee72e
7
- data.tar.gz: 73e5b05349530e7dad385de6125639be794a918981a45083a36fc3a5b080f2769f9ba3ba2572af883b6ae73a473aa1b1e07e5af291778ee5bd3ee3c227144937
6
+ metadata.gz: 56d167b94712f52aad9e3bab2d01042121ad4a75b04241417e62487ee7e911958b2c65359aa075dc4eb886b2c38c1765fbcb256edd2d48f266ad27af92fefe9e
7
+ data.tar.gz: 34e9c0f0860637e94d052e6d705c87d1a22f3e837000e78b26dab1931c777490eb6b9697175d51a13611b8e87e2fe39810879038fbbdcd7c0fe397a2519ebaed
data/.gitignore CHANGED
@@ -2,3 +2,4 @@
2
2
  .bundle
3
3
  Gemfile.lock
4
4
  pkg/*
5
+ .DS_Store
data/README.md CHANGED
@@ -74,13 +74,18 @@ set :db_remote_dump, '/tmp/dump.sql'
74
74
  set :db_local_dump, 'config/db/dump.sql'
75
75
  set :db_is_container, false
76
76
  set :db_container_name, 'db'
77
+ set :local_stage_name, :local
78
+ set :filter_on_import, lambda{ |sql_dump| return sql_dump }
77
79
  ```
78
80
 
79
81
  ## TODO
80
- * Implement provider pattern for other db engines.
82
+ * Implement adapter pattern for other db engines.
81
83
  * Write tests.
82
84
 
83
85
  ## Changes
86
+ ### Version 0.0.2
87
+ * autodetect local and remote container
88
+
84
89
  ### Version 0.0.1
85
90
  * Initial release
86
91
 
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'capistrano-container-db'
7
- spec.version = '0.0.1'
7
+ spec.version = '0.0.2'
8
8
  spec.date = '2016-09-26'
9
9
  spec.summary = 'Helps managing databases on local and remote stages, also on remote docker container'
10
10
  spec.description = spec.summary
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ['lib']
20
20
 
21
21
  spec.add_dependency 'capistrano', '>= 3.0.0.pre'
22
- spec.add_dependency 'capistrano-container', '>= 0.0.4'
22
+ spec.add_dependency 'capistrano-container', '>= 0.0.5'
23
23
  spec.add_development_dependency 'bundler', '~> 1.3'
24
24
  spec.add_development_dependency 'rake', '~> 10.1'
25
25
  end
@@ -6,10 +6,10 @@ namespace :db do
6
6
  desc "export a local, remote or remote container mysql db"
7
7
  task :export do
8
8
  on roles(:db, :container_host) do |host|
9
-
10
9
  if fetch(:db_is_container)
10
+ raise 'huhu!'
11
11
  DumpHelper::dump_on_container_and_download container_by_name(fetch(:db_container_name))
12
- elsif fetch(:stage) == :local
12
+ elsif Helper::local_stage?
13
13
  DumpHelper::dump_on_local
14
14
  else
15
15
  DumpHelper::dump_on_server_and_download
@@ -24,7 +24,7 @@ namespace :db do
24
24
  on roles(:db, :container_host) do
25
25
  if fetch(:db_is_container)
26
26
  LoadHelper::import_on_container container_by_name(fetch(:db_container_name))
27
- elsif fetch(:stage) == :local
27
+ elsif Helper::local_stage?
28
28
  LoadHelper::import_on_local
29
29
  else
30
30
  LoadHelper::import_on_server
@@ -42,5 +42,7 @@ namespace :load do
42
42
  set :db_local_dump, 'config/db/dump.sql'
43
43
  set :db_is_container, false
44
44
  set :db_container_name, 'db'
45
+ set :local_stage_name, :local
46
+ set :filter_on_import, lambda{ |sql_dump| return sql_dump }
45
47
  end
46
48
  end
data/lib/db/helper.rb CHANGED
@@ -21,4 +21,18 @@ module Helper
21
21
 
22
22
  FileUtils.cp(fetch(:db_local_dump), staged_file)
23
23
  end
24
+
25
+ def self.local_stage?
26
+ fetch(:local_stage_name).to_sym == fetch(:stage).to_sym
27
+ end
28
+
29
+ def execute_local_or_remote(cmd)
30
+ if local_stage?
31
+ run_locally do
32
+ execute cmd
33
+ end
34
+ else
35
+ execute cmd
36
+ end
37
+ end
24
38
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano-container-db
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Hanoldt
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 0.0.4
33
+ version: 0.0.5
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 0.0.4
40
+ version: 0.0.5
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -74,7 +74,6 @@ executables: []
74
74
  extensions: []
75
75
  extra_rdoc_files: []
76
76
  files:
77
- - ".DS_Store"
78
77
  - ".gitignore"
79
78
  - Gemfile
80
79
  - LICENSE
data/.DS_Store DELETED
Binary file