ghost_adapter 0.1.2 → 0.1.3

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
  SHA256:
3
- metadata.gz: b4891b0bd885cf5afcedef2b98f14bffb64c5391871189530cc9075091ea1ead
4
- data.tar.gz: 0fc0fd7ab33fbde0ea6a62238e26ee52444dacc961bc4624834401e60053a6dc
3
+ metadata.gz: 1e41455fa006b4b041b93b335e52648d1a73fc70414833e9da5e8aa2d08a7f33
4
+ data.tar.gz: 83bb7a22b33489522b4877f7bb09d3e8011527cb30a6410f402d6124e8673483
5
5
  SHA512:
6
- metadata.gz: 8a7d0685cdb9b491df138c6a731cfed2e3b9f1e278ad51a860f2ba6cbf2ca7582509815e5629e76836fa09d0ec5d069426d83f693bbc01c9cb4025241cbf0cb3
7
- data.tar.gz: 5e2a07d6a66f2e66570f7c14b4764fad6d52b18653d8be9f2af1e970fd6b984ebf7d0fb30fcfc30ee116ee3873689a3896cee71078184d3984cc71bb18016bd1
6
+ metadata.gz: 9a44d227afa21a6b94303c73419b6d56ebc5971d681ce7cc8b6384b7e802556e9e782467aa1c6695bc4461dc411560f02040bea4ba1ebf713ad098f58a670369
7
+ data.tar.gz: 5a8a939e4cc7ea44d135273c32c921ca4f79d35aac568c1160d32daae0b41d587180968772f13047a4fbb1ca93edbba68372fad89e46ff96b4db9d0df0852b33
data/.gitignore CHANGED
@@ -1,3 +1,5 @@
1
+ .rspec_status
2
+ .DS_Store
1
3
  /.bundle/
2
4
  /.yardoc
3
5
  /_yardoc/
data/.rubocop.yml CHANGED
@@ -9,7 +9,7 @@ Style/RescueModifier:
9
9
 
10
10
  Metrics/BlockLength:
11
11
  Exclude:
12
- - test/**/*_test.rb
12
+ - spec/**/*_spec.rb
13
13
 
14
14
  Metrics/MethodLength:
15
15
  IgnoredMethods:
data/.travis.yml CHANGED
@@ -20,6 +20,6 @@ jobs:
20
20
  script:
21
21
  - bundle exec rake rubocop
22
22
  - stage: Tests
23
- name: Run minitest
23
+ name: Run specs
24
24
  script:
25
- - bundle exec rake test
25
+ - bundle exec rake spec
data/CHANGELOG.md CHANGED
@@ -1,4 +1,7 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 0.1.3
4
+ - Fix bug [#26](https://github.com/WeTransfer/ghost_adapter/issues/26) causing environment configuration to be overwritten by some other configuration methods.
5
+
3
6
  ## 0.1.2
4
7
  - Fix bug [#28](https://github.com/WeTransfer/ghost_adapter/issues/28) that resulted in add_index and remove_index calls to not run through `gh-ost`
data/Gemfile.lock CHANGED
@@ -1,8 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ghost_adapter (0.1.2)
4
+ ghost_adapter (0.1.3)
5
5
  activerecord (>= 5)
6
+ mysql2 (>= 0.4.0, < 0.6.0)
6
7
 
7
8
  GEM
8
9
  remote: https://rubygems.org/
@@ -22,9 +23,11 @@ GEM
22
23
  bump (0.10.0)
23
24
  byebug (11.1.3)
24
25
  concurrent-ruby (1.1.8)
26
+ diff-lcs (1.4.4)
25
27
  i18n (1.8.9)
26
28
  concurrent-ruby (~> 1.0)
27
29
  minitest (5.14.3)
30
+ mysql2 (0.5.2)
28
31
  parallel (1.20.1)
29
32
  parser (3.0.0.0)
30
33
  ast (~> 2.4.1)
@@ -32,6 +35,19 @@ GEM
32
35
  rake (13.0.3)
33
36
  regexp_parser (2.0.3)
34
37
  rexml (3.2.4)
38
+ rspec (3.10.0)
39
+ rspec-core (~> 3.10.0)
40
+ rspec-expectations (~> 3.10.0)
41
+ rspec-mocks (~> 3.10.0)
42
+ rspec-core (3.10.1)
43
+ rspec-support (~> 3.10.0)
44
+ rspec-expectations (3.10.1)
45
+ diff-lcs (>= 1.2.0, < 2.0)
46
+ rspec-support (~> 3.10.0)
47
+ rspec-mocks (3.10.2)
48
+ diff-lcs (>= 1.2.0, < 2.0)
49
+ rspec-support (~> 3.10.0)
50
+ rspec-support (3.10.2)
35
51
  rubocop (1.8.1)
36
52
  parallel (~> 1.10)
37
53
  parser (>= 3.0.0.0)
@@ -58,8 +74,8 @@ DEPENDENCIES
58
74
  bundler (~> 2)
59
75
  byebug (~> 11.1)
60
76
  ghost_adapter!
61
- minitest (~> 5.14)
62
77
  rake (~> 13.0)
78
+ rspec (~> 3)
63
79
  rubocop (~> 1)
64
80
 
65
81
  BUNDLED WITH
data/Rakefile CHANGED
@@ -1,14 +1,8 @@
1
1
  require 'bundler/gem_tasks'
2
- require 'rake/testtask'
3
-
4
- Rake::TestTask.new(:test) do |t|
5
- t.libs << 'test'
6
- t.libs << 'lib'
7
- t.test_files = FileList['test/**/*_test.rb']
8
- end
9
-
2
+ require 'rspec/core/rake_task'
10
3
  require 'rubocop/rake_task'
11
4
 
12
5
  RuboCop::RakeTask.new
6
+ RSpec::Core::RakeTask.new(:spec)
13
7
 
14
- task default: %i[test rubocop]
8
+ task default: %i[spec rubocop]
@@ -23,11 +23,12 @@ Gem::Specification.new do |spec|
23
23
  spec.require_paths = ['lib']
24
24
 
25
25
  spec.add_dependency 'activerecord', '>= 5'
26
+ spec.add_dependency 'mysql2', '>= 0.4.0', '< 0.6.0'
26
27
 
27
28
  spec.add_development_dependency 'bump', '~> 0'
28
29
  spec.add_development_dependency 'bundler', '~> 2'
29
30
  spec.add_development_dependency 'byebug', '~> 11.1'
30
- spec.add_development_dependency 'minitest', '~> 5.14'
31
31
  spec.add_development_dependency 'rake', '~> 13.0'
32
+ spec.add_development_dependency 'rspec', '~> 3'
32
33
  spec.add_development_dependency 'rubocop', '~> 1'
33
34
  end
@@ -1,8 +1,6 @@
1
1
  require 'active_record/connection_adapters/mysql2_adapter'
2
2
  require 'ghost_adapter/migrator'
3
3
  require 'ghost_adapter/version_checker'
4
-
5
- gem 'mysql2', '>= 0.4.4', '< 0.6.0'
6
4
  require 'mysql2'
7
5
 
8
6
  module ActiveRecord
data/lib/ghost_adapter.rb CHANGED
@@ -1,3 +1,8 @@
1
+ require 'active_record'
2
+ require 'active_support/all'
3
+
4
+ require 'active_record/connection_adapters/mysql2_ghost_adapter'
5
+
1
6
  require 'ghost_adapter/config'
2
7
 
3
8
  require 'ghost_adapter/railtie' if defined? ::Rails::Railtie
@@ -78,32 +78,35 @@ module GhostAdapter
78
78
  user
79
79
  verbose].freeze
80
80
  Config = Struct.new(*CONFIG_KEYS, keyword_init: true) do
81
- def initialize(options = {})
82
- env_config = EnvParser.new(ENV).config
83
- config_options = options.merge(env_config)
84
- super(config_options)
85
- end
86
-
87
81
  def merge!(other_config)
88
82
  other_config.compact.each { |k, v| self[k] = v }
89
83
  self
90
84
  end
91
85
 
86
+ def with_env
87
+ env_config = EnvParser.new(ENV).config
88
+ compact.merge(env_config)
89
+ end
90
+
92
91
  def compact
93
92
  to_h.compact
94
93
  end
95
94
 
96
95
  def as_args
97
- compact.map do |key, value|
98
- next unless value # Skip both false and null values
96
+ with_env.map { |key, value| arg(key, value) }.compact
97
+ end
98
+
99
+ private
100
+
101
+ def arg(key, value)
102
+ return unless value
99
103
 
100
- hyphenated_key = key.to_s.gsub('_', '-')
101
- if value == true
102
- "--#{hyphenated_key}"
103
- else
104
- "--#{hyphenated_key}=#{value}"
105
- end
106
- end.compact
104
+ hyphenated_key = key.to_s.gsub('_', '-')
105
+ if value == true
106
+ "--#{hyphenated_key}"
107
+ else
108
+ "--#{hyphenated_key}=#{value}"
109
+ end
107
110
  end
108
111
  end
109
112
  end
@@ -7,6 +7,9 @@ module GhostAdapter
7
7
  next unless ghost_key?(key)
8
8
 
9
9
  config_key = convert_env_key(key)
10
+
11
+ next unless GhostAdapter::CONFIG_KEYS.include?(config_key)
12
+
10
13
  config_value = convert_env_value(value)
11
14
 
12
15
  [config_key, config_value]
@@ -20,7 +23,7 @@ module GhostAdapter
20
23
  end
21
24
 
22
25
  def convert_env_key(key)
23
- key.gsub('GHOST_', '').downcase
26
+ key.gsub('GHOST_', '').downcase.to_sym
24
27
  end
25
28
 
26
29
  def convert_env_value(value)
@@ -1,3 +1,3 @@
1
1
  module GhostAdapter
2
- VERSION = '0.1.2'.freeze
2
+ VERSION = '0.1.3'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ghost_adapter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Austin C Roos
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-17 00:00:00.000000000 Z
11
+ date: 2021-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -24,6 +24,26 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '5'
27
+ - !ruby/object:Gem::Dependency
28
+ name: mysql2
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 0.4.0
34
+ - - "<"
35
+ - !ruby/object:Gem::Version
36
+ version: 0.6.0
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 0.4.0
44
+ - - "<"
45
+ - !ruby/object:Gem::Version
46
+ version: 0.6.0
27
47
  - !ruby/object:Gem::Dependency
28
48
  name: bump
29
49
  requirement: !ruby/object:Gem::Requirement
@@ -67,33 +87,33 @@ dependencies:
67
87
  - !ruby/object:Gem::Version
68
88
  version: '11.1'
69
89
  - !ruby/object:Gem::Dependency
70
- name: minitest
90
+ name: rake
71
91
  requirement: !ruby/object:Gem::Requirement
72
92
  requirements:
73
93
  - - "~>"
74
94
  - !ruby/object:Gem::Version
75
- version: '5.14'
95
+ version: '13.0'
76
96
  type: :development
77
97
  prerelease: false
78
98
  version_requirements: !ruby/object:Gem::Requirement
79
99
  requirements:
80
100
  - - "~>"
81
101
  - !ruby/object:Gem::Version
82
- version: '5.14'
102
+ version: '13.0'
83
103
  - !ruby/object:Gem::Dependency
84
- name: rake
104
+ name: rspec
85
105
  requirement: !ruby/object:Gem::Requirement
86
106
  requirements:
87
107
  - - "~>"
88
108
  - !ruby/object:Gem::Version
89
- version: '13.0'
109
+ version: '3'
90
110
  type: :development
91
111
  prerelease: false
92
112
  version_requirements: !ruby/object:Gem::Requirement
93
113
  requirements:
94
114
  - - "~>"
95
115
  - !ruby/object:Gem::Version
96
- version: '13.0'
116
+ version: '3'
97
117
  - !ruby/object:Gem::Dependency
98
118
  name: rubocop
99
119
  requirement: !ruby/object:Gem::Requirement