rubber 3.0.0 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +8 -0
- data/lib/rubber.rb +16 -4
- data/lib/rubber/configuration.rb +14 -3
- data/lib/rubber/railtie.rb +6 -3
- data/lib/rubber/version.rb +1 -1
- metadata +3 -3
data/CHANGELOG
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
3.0.1 (04/27/2015)
|
2
|
+
|
3
|
+
Improvements:
|
4
|
+
============
|
5
|
+
|
6
|
+
[core] Force reload of Rubber config between Spring sessions in Rails 4+. <ef18da4>
|
7
|
+
|
8
|
+
|
1
9
|
3.0.0 (04/24/2015)
|
2
10
|
|
3
11
|
This is a major Rubber release in 3 years. Most of the Rubber internals haven't changed from the 2.x series. However,
|
data/lib/rubber.rb
CHANGED
@@ -13,8 +13,8 @@ module Rubber
|
|
13
13
|
|
14
14
|
@@root = project_root
|
15
15
|
@@env = project_env
|
16
|
-
Object.const_set(
|
17
|
-
Object.const_set(
|
16
|
+
Object.const_set(:RUBBER_ENV, project_env)
|
17
|
+
Object.const_set(:RUBBER_ROOT, File.expand_path(project_root))
|
18
18
|
|
19
19
|
if ! defined?(Rails) && ! Rubber::Util::is_bundler?
|
20
20
|
# pull in basic rails env. rubber only needs RAILS_ROOT and RAILS_ENV.
|
@@ -34,8 +34,8 @@ module Rubber
|
|
34
34
|
end
|
35
35
|
|
36
36
|
# conveniences for backwards compatibility with old names
|
37
|
-
Object.const_set(
|
38
|
-
Object.const_set(
|
37
|
+
Object.const_set(:RUBBER_CONFIG, self.config)
|
38
|
+
Object.const_set(:RUBBER_INSTANCES, self.instances)
|
39
39
|
|
40
40
|
end
|
41
41
|
|
@@ -80,6 +80,18 @@ module Rubber
|
|
80
80
|
# create a new instance per thread
|
81
81
|
Rubber::ThreadSafeProxy.new { Rubber::Cloud::get_provider(self.config.cloud_provider || "aws", self.config, capistrano) }
|
82
82
|
end
|
83
|
+
|
84
|
+
def self.reset
|
85
|
+
[:RUBBER_ENV, :RUBBER_ROOT, :RUBBER_CONFIG, :RUBBER_INSTANCES].each do |const|
|
86
|
+
Object.send(:remove_const, const) if Object.constants.include?(const)
|
87
|
+
end
|
88
|
+
|
89
|
+
Rubber::Configuration.reset
|
90
|
+
|
91
|
+
synchronize do
|
92
|
+
@config = nil
|
93
|
+
end
|
94
|
+
end
|
83
95
|
|
84
96
|
end
|
85
97
|
|
data/lib/rubber/configuration.rb
CHANGED
@@ -5,15 +5,20 @@ require 'rubber/generator'
|
|
5
5
|
|
6
6
|
module Rubber
|
7
7
|
module Configuration
|
8
|
+
extend MonitorMixin
|
8
9
|
|
9
10
|
@@configurations = {}
|
10
11
|
|
11
12
|
def self.get_configuration(env=nil, root=nil)
|
12
13
|
key = "#{env}-#{root}"
|
13
|
-
|
14
|
-
|
15
|
-
@@configurations[key]
|
14
|
+
|
15
|
+
synchronize do
|
16
|
+
unless @@configurations[key]
|
17
|
+
@@configurations[key] = ConfigHolder.new(env, root)
|
18
|
+
@@configurations[key].load()
|
19
|
+
end
|
16
20
|
end
|
21
|
+
|
17
22
|
return @@configurations[key]
|
18
23
|
end
|
19
24
|
|
@@ -30,6 +35,12 @@ module Rubber
|
|
30
35
|
Rubber::Configuration.get_configuration(Rubber.env).instance
|
31
36
|
end
|
32
37
|
|
38
|
+
def self.reset
|
39
|
+
synchronize do
|
40
|
+
@@configurations.clear
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
33
44
|
class ConfigHolder
|
34
45
|
def initialize(env=nil, root=nil)
|
35
46
|
@env = env
|
data/lib/rubber/railtie.rb
CHANGED
@@ -2,13 +2,16 @@ require 'rubber'
|
|
2
2
|
require 'rails'
|
3
3
|
|
4
4
|
module Rubber
|
5
|
-
|
6
5
|
class Railtie < Rails::Railtie
|
7
|
-
|
8
6
|
config.before_configuration do
|
9
7
|
Rubber::initialize(Rails.root, Rails.env)
|
10
8
|
end
|
11
|
-
|
12
9
|
end
|
10
|
+
end
|
13
11
|
|
12
|
+
if defined?(Spring)
|
13
|
+
Spring.after_fork do
|
14
|
+
Rubber.reset
|
15
|
+
Rubber::initialize(Rails.root, Rails.env)
|
16
|
+
end
|
14
17
|
end
|
data/lib/rubber/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2015-04-
|
13
|
+
date: 2015-04-28 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: capistrano
|
@@ -720,7 +720,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
720
720
|
version: '0'
|
721
721
|
segments:
|
722
722
|
- 0
|
723
|
-
hash:
|
723
|
+
hash: 1883985794562211035
|
724
724
|
requirements: []
|
725
725
|
rubyforge_project:
|
726
726
|
rubygems_version: 1.8.23.2
|