Skip to content

Commit 5df9a41

Browse files
committed
Update all the examples to use defaults
1 parent cf7dfc0 commit 5df9a41

File tree

14 files changed

+76
-107
lines changed

14 files changed

+76
-107
lines changed

examples/mongo/basic.rb

+5-8
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,20 @@
11
require 'bundler/setup'
22
require 'logger'
33

4+
ENV["FLIPPER_MONGO_URL"] ||= "127.0.0.1:#{ENV["MONGODB_PORT"] || 27017}"
45
require 'flipper/adapters/mongo'
5-
Mongo::Logger.logger.level = Logger::INFO
6-
collection = Mongo::Client.new(["127.0.0.1:#{ENV["MONGODB_PORT"] || 27017}"], :database => 'testing')['flipper']
7-
adapter = Flipper::Adapters::Mongo.new(collection)
8-
flipper = Flipper.new(adapter)
96

10-
flipper[:stats].enable
7+
Flipper[:stats].enable
118

12-
if flipper[:stats].enabled?
9+
if Flipper[:stats].enabled?
1310
puts "Enabled!"
1411
else
1512
puts "Disabled!"
1613
end
1714

18-
flipper[:stats].disable
15+
Flipper[:stats].disable
1916

20-
if flipper[:stats].enabled?
17+
if Flipper[:stats].enabled?
2118
puts "Enabled!"
2219
else
2320
puts "Disabled!"

examples/mongo/internals.rb

+11-14
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,8 @@
22
require 'pp'
33
require 'logger'
44

5+
ENV["FLIPPER_MONGO_URL"] ||= "127.0.0.1:#{ENV["MONGODB_PORT"] || 27017}"
56
require 'flipper/adapters/mongo'
6-
Mongo::Logger.logger.level = Logger::INFO
7-
collection = Mongo::Client.new(["127.0.0.1:#{ENV["MONGODB_PORT"] || 27017}"], :database => 'testing')['flipper']
8-
adapter = Flipper::Adapters::Mongo.new(collection)
9-
flipper = Flipper.new(adapter)
107

118
# Register a few groups.
129
Flipper.register(:admins) { |thing| thing.admin? }
@@ -15,16 +12,16 @@
1512
# Create a user class that has flipper_id instance method.
1613
User = Struct.new(:flipper_id)
1714

18-
flipper[:stats].enable
19-
flipper[:stats].enable_group :admins
20-
flipper[:stats].enable_group :early_access
21-
flipper[:stats].enable_actor User.new('25')
22-
flipper[:stats].enable_actor User.new('90')
23-
flipper[:stats].enable_actor User.new('180')
24-
flipper[:stats].enable_percentage_of_time 15
25-
flipper[:stats].enable_percentage_of_actors 45
15+
Flipper[:stats].enable
16+
Flipper[:stats].enable_group :admins
17+
Flipper[:stats].enable_group :early_access
18+
Flipper[:stats].enable_actor User.new('25')
19+
Flipper[:stats].enable_actor User.new('90')
20+
Flipper[:stats].enable_actor User.new('180')
21+
Flipper[:stats].enable_percentage_of_time 15
22+
Flipper[:stats].enable_percentage_of_actors 45
2623

27-
flipper[:search].enable
24+
Flipper[:search].enable
2825

2926
puts 'all docs in collection'
3027
pp collection.find.to_a
@@ -40,7 +37,7 @@
4037
puts
4138

4239
puts 'flipper get of feature'
43-
pp adapter.get(flipper[:stats])
40+
pp Flipper.adapter.get(Flipper[:stats])
4441
# flipper get of feature
4542
# {:boolean=>"true",
4643
# :groups=>#<Set: {"admins", "early_access"}>,

examples/redis/basic.rb

+4-11
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,18 @@
22
require 'logger'
33

44
require 'flipper/adapters/redis'
5-
options = {}
6-
if ENV['REDIS_URL']
7-
options[:url] = ENV['REDIS_URL']
8-
end
9-
client = Redis.new(options)
10-
adapter = Flipper::Adapters::Redis.new(client)
11-
flipper = Flipper.new(adapter)
125

13-
flipper[:stats].enable
6+
Flipper[:stats].enable
147

15-
if flipper[:stats].enabled?
8+
if Flipper[:stats].enabled?
169
puts "Enabled!"
1710
else
1811
puts "Disabled!"
1912
end
2013

21-
flipper[:stats].disable
14+
Flipper[:stats].disable
2215

23-
if flipper[:stats].enabled?
16+
if Flipper[:stats].enabled?
2417
puts "Enabled!"
2518
else
2619
puts "Disabled!"

examples/redis/internals.rb

+11-18
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,9 @@
11
require 'bundler/setup'
22
require 'pp'
33
require 'logger'
4-
54
require 'flipper/adapters/redis'
65

7-
options = {}
8-
if ENV['REDIS_URL']
9-
options[:url] = ENV['REDIS_URL']
10-
end
11-
client = Redis.new(options)
12-
adapter = Flipper::Adapters::Redis.new(client)
13-
flipper = Flipper.new(adapter)
6+
client = Redis.new
147

158
# Register a few groups.
169
Flipper.register(:admins) { |thing| thing.admin? }
@@ -19,16 +12,16 @@
1912
# Create a user class that has flipper_id instance method.
2013
User = Struct.new(:flipper_id)
2114

22-
flipper[:stats].enable
23-
flipper[:stats].enable_group :admins
24-
flipper[:stats].enable_group :early_access
25-
flipper[:stats].enable_actor User.new('25')
26-
flipper[:stats].enable_actor User.new('90')
27-
flipper[:stats].enable_actor User.new('180')
28-
flipper[:stats].enable_percentage_of_time 15
29-
flipper[:stats].enable_percentage_of_actors 45
15+
Flipper[:stats].enable
16+
Flipper[:stats].enable_group :admins
17+
Flipper[:stats].enable_group :early_access
18+
Flipper[:stats].enable_actor User.new('25')
19+
Flipper[:stats].enable_actor User.new('90')
20+
Flipper[:stats].enable_actor User.new('180')
21+
Flipper[:stats].enable_percentage_of_time 15
22+
Flipper[:stats].enable_percentage_of_actors 45
3023

31-
flipper[:search].enable
24+
Flipper[:search].enable
3225

3326
print 'all keys: '
3427
pp client.keys
@@ -60,7 +53,7 @@
6053
puts
6154

6255
puts 'flipper get of feature'
63-
pp adapter.get(flipper[:stats])
56+
pp Flipper.adapter.get(Flipper[:stats])
6457
# flipper get of feature
6558
# {:boolean=>"true",
6659
# :groups=>#<Set: {"admins", "early_access"}>,

examples/sequel/basic.rb

+4-6
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,18 @@
77
CreateFlipperTablesSequel.new(Sequel::Model.db).up
88

99
require 'flipper/adapters/sequel'
10-
adapter = Flipper::Adapters::Sequel.new
11-
flipper = Flipper.new(adapter)
1210

13-
flipper[:stats].enable
11+
Flipper[:stats].enable
1412

15-
if flipper[:stats].enabled?
13+
if Flipper[:stats].enabled?
1614
puts "Enabled!"
1715
else
1816
puts "Disabled!"
1917
end
2018

21-
flipper[:stats].disable
19+
Flipper[:stats].disable
2220

23-
if flipper[:stats].enabled?
21+
if Flipper[:stats].enabled?
2422
puts "Enabled!"
2523
else
2624
puts "Disabled!"

examples/sequel/internals.rb

+10-12
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
CreateFlipperTablesSequel.new(Sequel::Model.db).up
88

99
require 'flipper/adapters/sequel'
10-
adapter = Flipper::Adapters::Sequel.new
11-
flipper = Flipper.new(adapter)
1210

1311
# Register a few groups.
1412
Flipper.register(:admins) { |thing| thing.admin? }
@@ -17,16 +15,16 @@
1715
# Create a user class that has flipper_id instance method.
1816
User = Struct.new(:flipper_id)
1917

20-
flipper[:stats].enable
21-
flipper[:stats].enable_group :admins
22-
flipper[:stats].enable_group :early_access
23-
flipper[:stats].enable_actor User.new('25')
24-
flipper[:stats].enable_actor User.new('90')
25-
flipper[:stats].enable_actor User.new('180')
26-
flipper[:stats].enable_percentage_of_time 15
27-
flipper[:stats].enable_percentage_of_actors 45
18+
Flipper[:stats].enable
19+
Flipper[:stats].enable_group :admins
20+
Flipper[:stats].enable_group :early_access
21+
Flipper[:stats].enable_actor User.new('25')
22+
Flipper[:stats].enable_actor User.new('90')
23+
Flipper[:stats].enable_actor User.new('180')
24+
Flipper[:stats].enable_percentage_of_time 15
25+
Flipper[:stats].enable_percentage_of_actors 45
2826

29-
flipper[:search].enable
27+
Flipper[:search].enable
3028

3129
puts 'all rows in features table'
3230
pp Flipper::Adapters::Sequel::Feature.all
@@ -48,7 +46,7 @@
4846
puts
4947

5048
puts 'flipper get of feature'
51-
pp adapter.get(flipper[:stats])
49+
pp Flipper.adapter.get(Flipper[:stats])
5250
# {:boolean=>"true",
5351
# :groups=>#<Set: {"admins", "early_access"}>,
5452
# :actors=>#<Set: {"180", "25", "90"}>,

examples/ui/basic.ru

+1-12
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
require 'bundler/setup'
1212
require "flipper-ui"
1313
require "flipper/adapters/pstore"
14-
require "active_support/notifications"
1514

1615
Flipper.register(:admins) { |actor|
1716
actor.respond_to?(:admin?) && actor.admin?
@@ -21,16 +20,6 @@ Flipper.register(:early_access) { |actor|
2120
actor.respond_to?(:early?) && actor.early?
2221
}
2322

24-
# Setup logging of flipper calls.
25-
if ENV["LOG"] == "1"
26-
$logger = Logger.new(STDOUT)
27-
require "flipper/instrumentation/log_subscriber"
28-
Flipper::Instrumentation::LogSubscriber.logger = $logger
29-
end
30-
31-
adapter = Flipper::Adapters::PStore.new
32-
flipper = Flipper.new(adapter, instrumenter: ActiveSupport::Notifications)
33-
3423
Flipper::UI.configure do |config|
3524
# config.banner_text = 'Production Environment'
3625
# config.banner_class = 'danger'
@@ -64,6 +53,6 @@ end
6453
# flipper[:new_cache].enable_percentage_of_actors 15
6554
# flipper["a/b"].add
6655

67-
run Flipper::UI.app(flipper) { |builder|
56+
run Flipper::UI.app { |builder|
6857
builder.use Rack::Session::Cookie, secret: "_super_secret"
6958
}

lib/flipper-mongo.rb

-13
Original file line numberDiff line numberDiff line change
@@ -1,14 +1 @@
11
require 'flipper/adapters/mongo'
2-
3-
Flipper.configure do |config|
4-
config.adapter do
5-
url = ENV["FLIPPER_MONGO_URL"] || ENV["MONGO_URL"]
6-
collection = ENV["FLIPPER_MONGO_COLLECTION"] || "flipper"
7-
8-
unless url
9-
raise ArgumentError, "The MONGO_URL environment variable must be set. For example: mongodb://127.0.0.1:27017/flipper"
10-
end
11-
12-
Flipper::Adapters::Mongo.new(Mongo::Client.new(url)[collection])
13-
end
14-
end

lib/flipper-redis.rb

-7
Original file line numberDiff line numberDiff line change
@@ -1,8 +1 @@
11
require 'flipper/adapters/redis'
2-
3-
Flipper.configure do |config|
4-
config.adapter do
5-
client = Redis.new(url: ENV["FLIPPER_REDIS_URL"] || ENV["REDIS_URL"])
6-
Flipper::Adapters::Redis.new(client)
7-
end
8-
end

lib/flipper-sequel.rb

-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1 @@
11
require 'flipper/adapters/sequel'
2-
3-
Flipper.configure do |config|
4-
config.adapter { Flipper::Adapters::Sequel.new }
5-
end
6-
7-
Sequel::Model.include Flipper::Identifier

lib/flipper/adapters/mongo.rb

+13
Original file line numberDiff line numberDiff line change
@@ -173,3 +173,16 @@ def result_for_feature(feature, doc)
173173
end
174174
end
175175
end
176+
177+
Flipper.configure do |config|
178+
config.adapter do
179+
url = ENV["FLIPPER_MONGO_URL"] || ENV["MONGO_URL"]
180+
collection = ENV["FLIPPER_MONGO_COLLECTION"] || "flipper"
181+
182+
unless url
183+
raise ArgumentError, "The MONGO_URL environment variable must be set. For example: mongodb://127.0.0.1:27017/flipper"
184+
end
185+
186+
Flipper::Adapters::Mongo.new(Mongo::Client.new(url)[collection])
187+
end
188+
end

lib/flipper/adapters/pstore.rb

+4
Original file line numberDiff line numberDiff line change
@@ -216,3 +216,7 @@ def set_members(key)
216216
end
217217
end
218218
end
219+
220+
Flipper.configure do |config|
221+
config.adapter { Flipper::Adapters::PStore.new }
222+
end

lib/flipper/adapters/redis.rb

+7
Original file line numberDiff line numberDiff line change
@@ -178,3 +178,10 @@ def unsupported_data_type(data_type)
178178
end
179179
end
180180
end
181+
182+
Flipper.configure do |config|
183+
config.adapter do
184+
client = Redis.new(url: ENV["FLIPPER_REDIS_URL"] || ENV["REDIS_URL"])
185+
Flipper::Adapters::Redis.new(client)
186+
end
187+
end

lib/flipper/adapters/sequel.rb

+6
Original file line numberDiff line numberDiff line change
@@ -210,3 +210,9 @@ def result_for_feature(feature, db_gates)
210210
end
211211
end
212212
end
213+
214+
Flipper.configure do |config|
215+
config.adapter { Flipper::Adapters::Sequel.new }
216+
end
217+
218+
Sequel::Model.include Flipper::Identifier

0 commit comments

Comments
 (0)