rbflagr 0.1.2 → 1.1.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/README.md +17 -7
  4. data/docs/CreateFlagRequest.md +2 -0
  5. data/docs/CreateTagRequest.md +8 -0
  6. data/docs/Distribution.md +0 -1
  7. data/docs/EvalContext.md +4 -2
  8. data/docs/EvalResult.md +8 -7
  9. data/docs/EvaluationBatchRequest.md +3 -1
  10. data/docs/EvaluationEntity.md +1 -1
  11. data/docs/ExportApi.md +97 -0
  12. data/docs/Flag.md +7 -0
  13. data/docs/FlagApi.md +46 -1
  14. data/docs/Health.md +8 -0
  15. data/docs/HealthApi.md +9 -6
  16. data/docs/PutFlagRequest.md +5 -1
  17. data/docs/PutVariantRequest.md +1 -1
  18. data/docs/Tag.md +9 -0
  19. data/docs/TagApi.md +198 -0
  20. data/lib/rbflagr/api/constraint_api.rb +3 -3
  21. data/lib/rbflagr/api/distribution_api.rb +3 -3
  22. data/lib/rbflagr/api/evaluation_api.rb +3 -3
  23. data/lib/rbflagr/api/export_api.rb +118 -0
  24. data/lib/rbflagr/api/flag_api.rb +56 -3
  25. data/lib/rbflagr/api/health_api.rb +15 -12
  26. data/lib/rbflagr/api/segment_api.rb +3 -3
  27. data/lib/rbflagr/api/tag_api.rb +253 -0
  28. data/lib/rbflagr/api/variant_api.rb +3 -3
  29. data/lib/rbflagr/api_client.rb +8 -6
  30. data/lib/rbflagr/api_error.rb +3 -3
  31. data/lib/rbflagr/configuration.rb +5 -5
  32. data/lib/rbflagr/models/constraint.rb +5 -4
  33. data/lib/rbflagr/models/create_constraint_request.rb +5 -4
  34. data/lib/rbflagr/models/create_flag_request.rb +29 -8
  35. data/lib/rbflagr/models/create_segment_request.rb +5 -4
  36. data/lib/rbflagr/models/create_tag_request.rb +208 -0
  37. data/lib/rbflagr/models/create_variant_request.rb +5 -4
  38. data/lib/rbflagr/models/distribution.rb +6 -29
  39. data/lib/rbflagr/models/error.rb +5 -4
  40. data/lib/rbflagr/models/eval_context.rb +35 -44
  41. data/lib/rbflagr/models/eval_debug_log.rb +5 -4
  42. data/lib/rbflagr/models/eval_result.rb +15 -135
  43. data/lib/rbflagr/models/evaluation_batch_request.rb +34 -13
  44. data/lib/rbflagr/models/evaluation_batch_response.rb +5 -4
  45. data/lib/rbflagr/models/evaluation_entity.rb +5 -28
  46. data/lib/rbflagr/models/flag.rb +92 -8
  47. data/lib/rbflagr/models/flag_snapshot.rb +5 -4
  48. data/lib/rbflagr/models/health.rb +184 -0
  49. data/lib/rbflagr/models/put_distributions_request.rb +5 -4
  50. data/lib/rbflagr/models/put_flag_request.rb +49 -20
  51. data/lib/rbflagr/models/put_segment_reorder_request.rb +5 -4
  52. data/lib/rbflagr/models/put_segment_request.rb +5 -4
  53. data/lib/rbflagr/models/put_variant_request.rb +5 -9
  54. data/lib/rbflagr/models/segment.rb +5 -4
  55. data/lib/rbflagr/models/segment_debug_log.rb +5 -4
  56. data/lib/rbflagr/models/set_flag_enabled_request.rb +5 -4
  57. data/lib/rbflagr/models/tag.rb +232 -0
  58. data/lib/rbflagr/models/variant.rb +5 -4
  59. data/lib/rbflagr/version.rb +4 -4
  60. data/lib/rbflagr.rb +8 -3
  61. data/rbflagr.gemspec +5 -4
  62. data/spec/api/export_api_spec.rb +45 -0
  63. data/spec/api/tag_api_spec.rb +79 -0
  64. data/spec/models/create_tag_request_spec.rb +41 -0
  65. data/spec/models/health_spec.rb +41 -0
  66. data/spec/models/tag_spec.rb +47 -0
  67. data/swagger.yaml +309 -43
  68. data/swagger_ruby.json +1 -1
  69. metadata +72 -32
@@ -4,6 +4,6 @@
4
4
  Name | Type | Description | Notes
5
5
  ------------ | ------------- | ------------- | -------------
6
6
  **key** | **String** | |
7
- **attachment** | **Object** | |
7
+ **attachment** | **Object** | | [optional]
8
8
 
9
9
 
data/docs/Tag.md ADDED
@@ -0,0 +1,9 @@
1
+ # Flagr::Tag
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **id** | **Integer** | | [optional]
7
+ **value** | **String** | |
8
+
9
+
data/docs/TagApi.md ADDED
@@ -0,0 +1,198 @@
1
+ # Flagr::TagApi
2
+
3
+ All URIs are relative to *http://localhost/api/v1*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**create_tag**](TagApi.md#create_tag) | **POST** /flags/{flagID}/tags |
8
+ [**delete_tag**](TagApi.md#delete_tag) | **DELETE** /flags/{flagID}/tags/{tagID} |
9
+ [**find_all_tags**](TagApi.md#find_all_tags) | **GET** /tags |
10
+ [**find_tags**](TagApi.md#find_tags) | **GET** /flags/{flagID}/tags |
11
+
12
+
13
+ # **create_tag**
14
+ > Tag create_tag(flag_id, body)
15
+
16
+
17
+
18
+ ### Example
19
+ ```ruby
20
+ # load the gem
21
+ require 'rbflagr'
22
+
23
+ api_instance = Flagr::TagApi.new
24
+
25
+ flag_id = 789 # Integer | numeric ID of the flag
26
+
27
+ body = Flagr::CreateTagRequest.new # CreateTagRequest | create a tag
28
+
29
+
30
+ begin
31
+ result = api_instance.create_tag(flag_id, body)
32
+ p result
33
+ rescue Flagr::ApiError => e
34
+ puts "Exception when calling TagApi->create_tag: #{e}"
35
+ end
36
+ ```
37
+
38
+ ### Parameters
39
+
40
+ Name | Type | Description | Notes
41
+ ------------- | ------------- | ------------- | -------------
42
+ **flag_id** | **Integer**| numeric ID of the flag |
43
+ **body** | [**CreateTagRequest**](CreateTagRequest.md)| create a tag |
44
+
45
+ ### Return type
46
+
47
+ [**Tag**](Tag.md)
48
+
49
+ ### Authorization
50
+
51
+ No authorization required
52
+
53
+ ### HTTP request headers
54
+
55
+ - **Content-Type**: application/json
56
+ - **Accept**: application/json
57
+
58
+
59
+
60
+ # **delete_tag**
61
+ > delete_tag(flag_id, tag_id)
62
+
63
+
64
+
65
+ ### Example
66
+ ```ruby
67
+ # load the gem
68
+ require 'rbflagr'
69
+
70
+ api_instance = Flagr::TagApi.new
71
+
72
+ flag_id = 789 # Integer | numeric ID of the flag
73
+
74
+ tag_id = 789 # Integer | numeric ID of the tag
75
+
76
+
77
+ begin
78
+ api_instance.delete_tag(flag_id, tag_id)
79
+ rescue Flagr::ApiError => e
80
+ puts "Exception when calling TagApi->delete_tag: #{e}"
81
+ end
82
+ ```
83
+
84
+ ### Parameters
85
+
86
+ Name | Type | Description | Notes
87
+ ------------- | ------------- | ------------- | -------------
88
+ **flag_id** | **Integer**| numeric ID of the flag |
89
+ **tag_id** | **Integer**| numeric ID of the tag |
90
+
91
+ ### Return type
92
+
93
+ nil (empty response body)
94
+
95
+ ### Authorization
96
+
97
+ No authorization required
98
+
99
+ ### HTTP request headers
100
+
101
+ - **Content-Type**: application/json
102
+ - **Accept**: application/json
103
+
104
+
105
+
106
+ # **find_all_tags**
107
+ > Array<Tag> find_all_tags(opts)
108
+
109
+
110
+
111
+ ### Example
112
+ ```ruby
113
+ # load the gem
114
+ require 'rbflagr'
115
+
116
+ api_instance = Flagr::TagApi.new
117
+
118
+ opts = {
119
+ limit: 789, # Integer | the numbers of tags to return
120
+ offset: 789, # Integer | return tags given the offset, it should usually set together with limit
121
+ value_like: 'value_like_example' # String | return tags partially matching given value
122
+ }
123
+
124
+ begin
125
+ result = api_instance.find_all_tags(opts)
126
+ p result
127
+ rescue Flagr::ApiError => e
128
+ puts "Exception when calling TagApi->find_all_tags: #{e}"
129
+ end
130
+ ```
131
+
132
+ ### Parameters
133
+
134
+ Name | Type | Description | Notes
135
+ ------------- | ------------- | ------------- | -------------
136
+ **limit** | **Integer**| the numbers of tags to return | [optional]
137
+ **offset** | **Integer**| return tags given the offset, it should usually set together with limit | [optional]
138
+ **value_like** | **String**| return tags partially matching given value | [optional]
139
+
140
+ ### Return type
141
+
142
+ [**Array<Tag>**](Tag.md)
143
+
144
+ ### Authorization
145
+
146
+ No authorization required
147
+
148
+ ### HTTP request headers
149
+
150
+ - **Content-Type**: application/json
151
+ - **Accept**: application/json
152
+
153
+
154
+
155
+ # **find_tags**
156
+ > Array<Tag> find_tags(flag_id)
157
+
158
+
159
+
160
+ ### Example
161
+ ```ruby
162
+ # load the gem
163
+ require 'rbflagr'
164
+
165
+ api_instance = Flagr::TagApi.new
166
+
167
+ flag_id = 789 # Integer | numeric ID of the flag
168
+
169
+
170
+ begin
171
+ result = api_instance.find_tags(flag_id)
172
+ p result
173
+ rescue Flagr::ApiError => e
174
+ puts "Exception when calling TagApi->find_tags: #{e}"
175
+ end
176
+ ```
177
+
178
+ ### Parameters
179
+
180
+ Name | Type | Description | Notes
181
+ ------------- | ------------- | ------------- | -------------
182
+ **flag_id** | **Integer**| numeric ID of the flag |
183
+
184
+ ### Return type
185
+
186
+ [**Array<Tag>**](Tag.md)
187
+
188
+ ### Authorization
189
+
190
+ No authorization required
191
+
192
+ ### HTTP request headers
193
+
194
+ - **Content-Type**: application/json
195
+ - **Accept**: application/json
196
+
197
+
198
+
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.1.12
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.0-SNAPSHOT
9
+ Swagger Codegen version: 2.4.21
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.1.12
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.0-SNAPSHOT
9
+ Swagger Codegen version: 2.4.21
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.1.12
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.0-SNAPSHOT
9
+ Swagger Codegen version: 2.4.21
10
10
 
11
11
  =end
12
12
 
@@ -0,0 +1,118 @@
1
+ =begin
2
+ #Flagr
3
+
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
+
6
+ OpenAPI spec version: 1.1.12
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.21
10
+
11
+ =end
12
+
13
+ require 'uri'
14
+
15
+ module Flagr
16
+ class ExportApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Export JSON format of the eval cache dump
23
+ # @param [Hash] opts the optional parameters
24
+ # @return [Object]
25
+ def get_export_eval_cache_json(opts = {})
26
+ data, _status_code, _headers = get_export_eval_cache_json_with_http_info(opts)
27
+ data
28
+ end
29
+
30
+ # Export JSON format of the eval cache dump
31
+ # @param [Hash] opts the optional parameters
32
+ # @return [Array<(Object, Fixnum, Hash)>] Object data, response status code and response headers
33
+ def get_export_eval_cache_json_with_http_info(opts = {})
34
+ if @api_client.config.debugging
35
+ @api_client.config.logger.debug 'Calling API: ExportApi.get_export_eval_cache_json ...'
36
+ end
37
+ # resource path
38
+ local_var_path = '/export/eval_cache/json'
39
+
40
+ # query parameters
41
+ query_params = {}
42
+
43
+ # header parameters
44
+ header_params = {}
45
+ # HTTP header 'Accept' (if needed)
46
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
47
+ # HTTP header 'Content-Type'
48
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
49
+
50
+ # form parameters
51
+ form_params = {}
52
+
53
+ # http body (model)
54
+ post_body = nil
55
+ auth_names = []
56
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
57
+ :header_params => header_params,
58
+ :query_params => query_params,
59
+ :form_params => form_params,
60
+ :body => post_body,
61
+ :auth_names => auth_names,
62
+ :return_type => 'Object')
63
+ if @api_client.config.debugging
64
+ @api_client.config.logger.debug "API called: ExportApi#get_export_eval_cache_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
65
+ end
66
+ return data, status_code, headers
67
+ end
68
+ # Export sqlite3 format of the db dump, which is converted from the main database.
69
+ # @param [Hash] opts the optional parameters
70
+ # @option opts [BOOLEAN] :exclude_snapshots export without snapshots data - useful for smaller db without snapshots
71
+ # @return [File]
72
+ def get_export_sqlite(opts = {})
73
+ data, _status_code, _headers = get_export_sqlite_with_http_info(opts)
74
+ data
75
+ end
76
+
77
+ # Export sqlite3 format of the db dump, which is converted from the main database.
78
+ # @param [Hash] opts the optional parameters
79
+ # @option opts [BOOLEAN] :exclude_snapshots export without snapshots data - useful for smaller db without snapshots
80
+ # @return [Array<(File, Fixnum, Hash)>] File data, response status code and response headers
81
+ def get_export_sqlite_with_http_info(opts = {})
82
+ if @api_client.config.debugging
83
+ @api_client.config.logger.debug 'Calling API: ExportApi.get_export_sqlite ...'
84
+ end
85
+ # resource path
86
+ local_var_path = '/export/sqlite'
87
+
88
+ # query parameters
89
+ query_params = {}
90
+ query_params[:'exclude_snapshots'] = opts[:'exclude_snapshots'] if !opts[:'exclude_snapshots'].nil?
91
+
92
+ # header parameters
93
+ header_params = {}
94
+ # HTTP header 'Accept' (if needed)
95
+ header_params['Accept'] = @api_client.select_header_accept(['application/octet-stream'])
96
+ # HTTP header 'Content-Type'
97
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
98
+
99
+ # form parameters
100
+ form_params = {}
101
+
102
+ # http body (model)
103
+ post_body = nil
104
+ auth_names = []
105
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
106
+ :header_params => header_params,
107
+ :query_params => query_params,
108
+ :form_params => form_params,
109
+ :body => post_body,
110
+ :auth_names => auth_names,
111
+ :return_type => 'File')
112
+ if @api_client.config.debugging
113
+ @api_client.config.logger.debug "API called: ExportApi#get_export_sqlite\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
114
+ end
115
+ return data, status_code, headers
116
+ end
117
+ end
118
+ end
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Flagr
3
3
 
4
- #Flagr is a feature flagging, A/B testing and dynamic configuration microservice
4
+ #Flagr is a feature flagging, A/B testing and dynamic configuration microservice. The base path for all the APIs is \"/api/v1\".
5
5
 
6
- OpenAPI spec version: 1.0.8
6
+ OpenAPI spec version: 1.1.12
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.0-SNAPSHOT
9
+ Swagger Codegen version: 2.4.21
10
10
 
11
11
  =end
12
12
 
@@ -126,8 +126,11 @@ module Flagr
126
126
  # @option opts [Integer] :limit the numbers of flags to return
127
127
  # @option opts [BOOLEAN] :enabled return flags having given enabled status
128
128
  # @option opts [String] :description return flags exactly matching given description
129
+ # @option opts [String] :tags return flags with the given tags (comma separated)
129
130
  # @option opts [String] :description_like return flags partially matching given description
131
+ # @option opts [String] :key return flags matching given key
130
132
  # @option opts [Integer] :offset return flags given the offset, it should usually set together with limit
133
+ # @option opts [BOOLEAN] :preload return flags with preloaded segments and variants
131
134
  # @return [Array<Flag>]
132
135
  def find_flags(opts = {})
133
136
  data, _status_code, _headers = find_flags_with_http_info(opts)
@@ -138,8 +141,11 @@ module Flagr
138
141
  # @option opts [Integer] :limit the numbers of flags to return
139
142
  # @option opts [BOOLEAN] :enabled return flags having given enabled status
140
143
  # @option opts [String] :description return flags exactly matching given description
144
+ # @option opts [String] :tags return flags with the given tags (comma separated)
141
145
  # @option opts [String] :description_like return flags partially matching given description
146
+ # @option opts [String] :key return flags matching given key
142
147
  # @option opts [Integer] :offset return flags given the offset, it should usually set together with limit
148
+ # @option opts [BOOLEAN] :preload return flags with preloaded segments and variants
143
149
  # @return [Array<(Array<Flag>, Fixnum, Hash)>] Array<Flag> data, response status code and response headers
144
150
  def find_flags_with_http_info(opts = {})
145
151
  if @api_client.config.debugging
@@ -153,8 +159,11 @@ module Flagr
153
159
  query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
154
160
  query_params[:'enabled'] = opts[:'enabled'] if !opts[:'enabled'].nil?
155
161
  query_params[:'description'] = opts[:'description'] if !opts[:'description'].nil?
162
+ query_params[:'tags'] = opts[:'tags'] if !opts[:'tags'].nil?
156
163
  query_params[:'description_like'] = opts[:'description_like'] if !opts[:'description_like'].nil?
164
+ query_params[:'key'] = opts[:'key'] if !opts[:'key'].nil?
157
165
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
166
+ query_params[:'preload'] = opts[:'preload'] if !opts[:'preload'].nil?
158
167
 
159
168
  # header parameters
160
169
  header_params = {}
@@ -235,6 +244,50 @@ module Flagr
235
244
  end
236
245
  return data, status_code, headers
237
246
  end
247
+ # @param [Hash] opts the optional parameters
248
+ # @return [Array<String>]
249
+ def get_flag_entity_types(opts = {})
250
+ data, _status_code, _headers = get_flag_entity_types_with_http_info(opts)
251
+ data
252
+ end
253
+
254
+ # @param [Hash] opts the optional parameters
255
+ # @return [Array<(Array<String>, Fixnum, Hash)>] Array<String> data, response status code and response headers
256
+ def get_flag_entity_types_with_http_info(opts = {})
257
+ if @api_client.config.debugging
258
+ @api_client.config.logger.debug 'Calling API: FlagApi.get_flag_entity_types ...'
259
+ end
260
+ # resource path
261
+ local_var_path = '/flags/entity_types'
262
+
263
+ # query parameters
264
+ query_params = {}
265
+
266
+ # header parameters
267
+ header_params = {}
268
+ # HTTP header 'Accept' (if needed)
269
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
270
+ # HTTP header 'Content-Type'
271
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
272
+
273
+ # form parameters
274
+ form_params = {}
275
+
276
+ # http body (model)
277
+ post_body = nil
278
+ auth_names = []
279
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
280
+ :header_params => header_params,
281
+ :query_params => query_params,
282
+ :form_params => form_params,
283
+ :body => post_body,
284
+ :auth_names => auth_names,
285
+ :return_type => 'Array<String>')
286
+ if @api_client.config.debugging
287
+ @api_client.config.logger.debug "API called: FlagApi#get_flag_entity_types\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
288
+ end
289
+ return data, status_code, headers
290
+ end
238
291
  # @param flag_id numeric ID of the flag to get
239
292
  # @param [Hash] opts the optional parameters
240
293
  # @return [Array<FlagSnapshot>]