promoted-ruby-client 0.1.23 → 0.1.24
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/dev.md +1 -1
- data/lib/promoted/ruby/client/request_builder.rb +13 -16
- data/lib/promoted/ruby/client/version.rb +1 -1
- data/lib/promoted/ruby/client.rb +8 -4
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 99f637dce3d3f85f13e8937bf586e6e9f5a11891b262e84a6e66d57a44bc6b09
|
4
|
+
data.tar.gz: 0c517b9e7b0049c6ae873c90db9536eae6b153367114cc50af887f36efcf79f2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 640878d97d82424619a60ebf451db0f1501d15e625adfc2c53f3a47511e2661cb4d61bc8788d5b42f93c11f778411bc3bad59d5bab3fd787270a9b015f9968c3
|
7
|
+
data.tar.gz: e4a99864846f7d542e773d84897f9ce3ff9db842115d0ebd835f604a7763bebfa7c875656377e22f57442637f71a7d0663b098379e2603c5b6852f9696e626ce
|
data/Gemfile.lock
CHANGED
data/dev.md
CHANGED
@@ -4,5 +4,5 @@
|
|
4
4
|
2. Get credentials for deployment from 1password.
|
5
5
|
3. Modify `promoted-ruby-client.gemspec`'s push block.
|
6
6
|
4. Run `gem build promoted-ruby-client.gemspec` to generate `gem`.
|
7
|
-
5. Run (using new output) `gem push promoted-ruby-client-0.1.
|
7
|
+
5. Run (using new output) `gem push promoted-ruby-client-0.1.24.gem`
|
8
8
|
6. Update README with new version.
|
@@ -100,17 +100,12 @@ module Promoted
|
|
100
100
|
filled_in_copy
|
101
101
|
end
|
102
102
|
|
103
|
-
def log_request_params(
|
103
|
+
def log_request_params(include_delivery_log:, exec_server:)
|
104
104
|
params = {
|
105
105
|
user_info: user_info,
|
106
106
|
timing: timing,
|
107
107
|
client_info: merge_client_info_defaults,
|
108
108
|
device: @device,
|
109
|
-
delivery_log: [{
|
110
|
-
execution: {
|
111
|
-
execution_server: Promoted::Ruby::Client::EXECUTION_SERVER['SDK']
|
112
|
-
}
|
113
|
-
}]
|
114
109
|
}
|
115
110
|
|
116
111
|
if @experiment
|
@@ -118,17 +113,19 @@ module Promoted
|
|
118
113
|
end
|
119
114
|
|
120
115
|
# Log request allows for multiple requests but here we only send one.
|
121
|
-
if
|
116
|
+
if include_delivery_log
|
122
117
|
request[:request_id] = request[:request_id] || @id_generator.newID
|
123
|
-
# Set request on delivery log.
|
124
|
-
params[:delivery_log][0][:request] = request
|
125
|
-
end
|
126
118
|
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
119
|
+
params[:delivery_log] = [{
|
120
|
+
execution: {
|
121
|
+
execution_server: exec_server
|
122
|
+
},
|
123
|
+
request: request,
|
124
|
+
response: {
|
125
|
+
insertion: insertions_with_compact_metrics_properties
|
126
|
+
}
|
127
|
+
}]
|
128
|
+
|
132
129
|
add_missing_ids_on_insertions! request, params[:delivery_log][0][:response][:insertion]
|
133
130
|
end
|
134
131
|
|
@@ -170,7 +167,7 @@ module Promoted
|
|
170
167
|
end
|
171
168
|
|
172
169
|
# TODO: This looks overly complicated.
|
173
|
-
def
|
170
|
+
def insertions_with_compact_metrics_properties
|
174
171
|
@insertion = [] # insertion should be set according to the compact insertion
|
175
172
|
paging = request[:paging] || {}
|
176
173
|
size = paging[:size] ? paging[:size].to_i : 0
|
data/lib/promoted/ruby/client.rb
CHANGED
@@ -194,6 +194,8 @@ module Promoted
|
|
194
194
|
end
|
195
195
|
|
196
196
|
log_req = nil
|
197
|
+
exec_server = (insertions_from_delivery ? Promoted::Ruby::Client::EXECUTION_SERVER['API'] : Promoted::Ruby::Client::EXECUTION_SERVER['SDK'])
|
198
|
+
|
197
199
|
# We only return a log request if there's a request or cohort to log.
|
198
200
|
if request_to_log || cohort_membership_to_log
|
199
201
|
log_request_builder = RequestBuilder.new
|
@@ -212,14 +214,14 @@ module Promoted
|
|
212
214
|
# On a successful delivery request, we don't log the insertions
|
213
215
|
# or the request since they are logged on the server-side.
|
214
216
|
log_req = log_request_builder.log_request_params(
|
215
|
-
|
216
|
-
|
217
|
+
include_delivery_log: !insertions_from_delivery,
|
218
|
+
exec_server: exec_server)
|
217
219
|
end
|
218
220
|
|
219
221
|
client_response = {
|
220
222
|
insertion: response_insertions,
|
221
223
|
log_request: log_req,
|
222
|
-
execution_server:
|
224
|
+
execution_server: exec_server,
|
223
225
|
client_request_id: delivery_request_builder.client_request_id
|
224
226
|
}
|
225
227
|
return client_response
|
@@ -258,7 +260,9 @@ module Promoted
|
|
258
260
|
deliver_shadow_traffic args, headers
|
259
261
|
end
|
260
262
|
|
261
|
-
log_request_builder.log_request_params
|
263
|
+
log_request_builder.log_request_params(
|
264
|
+
include_delivery_log: true,
|
265
|
+
exec_server: Promoted::Ruby::Client::EXECUTION_SERVER['SDK'])
|
262
266
|
end
|
263
267
|
|
264
268
|
##
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: promoted-ruby-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.24
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- scottmcmaster
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-10-
|
11
|
+
date: 2021-10-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|