flipper-rollout 0.12.0 → 0.12.1

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: 706bb76c74fbb139f274e33917f9278407552915
4
- data.tar.gz: 4ff9d2384c2ef1cea6a9fea825e7ce7c777f49ab
3
+ metadata.gz: c3c3cd714e01fa05692efe3b02c27a55d0dfe9f7
4
+ data.tar.gz: 5eb7aa9aaed42a42804c5497d1ef38fde67c001b
5
5
  SHA512:
6
- metadata.gz: 7e8cdeb9ea928ea82398e502e584a4888f60b1c87aef28b5f05e6558c9dd26c3a707e975b6e483aa5292d897347629f2c3d59876a2ed7e4e02f7830d7e40b2bd
7
- data.tar.gz: 41d1b9753b798196069983b5284cf6288d37c89c379fb9051939cba7560587190f2855bfdca789b8ce59a87bf4834d07de764fad1017f404c9b81402ca8690f6
6
+ metadata.gz: a0090b377f1b44b68c94fad9ae4b0b22e38525a25bcd2127cad5d1e8b6bb2dcec39f94e8d3774633a918dbf97b6179c0e1defa38eac68a122d8d3915dfbb7f87
7
+ data.tar.gz: bfb725e0ad8d034fde23cbe3e5d6eb9deb727e44ceb0a28a9d807a7402efb5068fab86e6049bc4a727fd72acdcb1def5d53767260a532c90ca66d6143cb62560
@@ -0,0 +1,70 @@
1
+ # Flipper Rollout
2
+
3
+ A [Rollout](https://github.com/fetlife/rollout) adapter for [importing](https://github.com/jnunemaker/flipper/blob/master/docs/Adapters.md#user-content-swapping-adapters
4
+ ) Rollout data into [Flipper](https://github.com/jnunemaker/flipper).
5
+
6
+ requires:
7
+ * Rollout ~> 2.0
8
+ * Flipper >= 11.0
9
+
10
+ ## Installation
11
+
12
+ Add this line to your application's Gemfile:
13
+
14
+ gem 'flipper-rollout'
15
+
16
+ And then execute:
17
+
18
+ $ bundle
19
+
20
+ Or install it yourself with:
21
+
22
+ $ gem install flipper-redis
23
+
24
+ ## Usage
25
+
26
+ Assuming you've configured a [default Flipper instance](https://github.com/jnunemaker/flipper#user-content-examples)
27
+
28
+ ```ruby
29
+ require 'redis'
30
+ require 'flipper/adapters/rollout'
31
+
32
+ redis = Redis.new
33
+ rollout = Rollout.new(redis)
34
+
35
+ rollout_adapter = Flipper::Adapters::Rollout.new(rollout)
36
+ rollout_flipper = Flipper.new(rollout_adapter)
37
+
38
+ Flipper.import(rollout_flipper)
39
+ ```
40
+
41
+ That was easy.
42
+
43
+ ### Groups
44
+ If you're using [Rollout groups](https://github.com/fetlife/rollout#user-content-groups) you'll need to register them as [Flipper groups](https://github.com/jnunemaker/flipper/blob/master/docs/Gates.md#user-content-2-group):
45
+
46
+ *Rollout*
47
+ ```ruby
48
+ $rollout.define_group(:caretakers) do |user|
49
+ user.caretaker?
50
+ end
51
+ ```
52
+
53
+ *Flipper*
54
+ ```ruby
55
+ Flipper.register(:caretakers) do |user|
56
+ user.caretaker?
57
+ end
58
+ ```
59
+
60
+ ### flipper_id
61
+
62
+ Rollout expects users to respond to *id* (or method specified in [Rollout#initialize](https://github.com/fetlife/rollout/blob/master/lib/rollout.rb#L135) opts) and stores this value in Redis when a feature is activated for a user. You'll want to make sure that your Flipper actor's [flipper_id](https://github.com/jnunemaker/flipper/blob/master/docs/Gates.md#user-content-3-individual-actor) matches this logic.
63
+
64
+ ## Contributing
65
+
66
+ 1. Fork it
67
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
68
+ 3. Commit your changes (`git commit -am 'Added some feature'`)
69
+ 4. Push to the branch (`git push origin my-new-feature`)
70
+ 5. Create new Pull Request
@@ -1,3 +1,3 @@
1
1
  module Flipper
2
- VERSION = '0.12.0'.freeze
2
+ VERSION = '0.12.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flipper-rollout
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.12.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Nunemaker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-06 00:00:00.000000000 Z
11
+ date: 2018-01-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: flipper
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.12.0
19
+ version: 0.12.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.12.0
26
+ version: 0.12.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: redis
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -65,6 +65,7 @@ executables: []
65
65
  extensions: []
66
66
  extra_rdoc_files: []
67
67
  files:
68
+ - docs/rollout/README.md
68
69
  - flipper-rollout.gemspec
69
70
  - lib/flipper/adapters/rollout.rb
70
71
  - lib/flipper/version.rb