gitlab_support_readiness 1.0.112 → 1.0.113

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
  SHA256:
3
- metadata.gz: 8edd59d6823d5030545aa74b9ce7dba68822470283bc7384a6e071ea04003f94
4
- data.tar.gz: 8f0871238aa1a5d14879f036b1e0dbaeff16e3a507c17451b51461093ec4f843
3
+ metadata.gz: '027085156c8432506c68b06131cea002a4830cc4508556ccc6a56895c4d4440b'
4
+ data.tar.gz: 8e23a57b995694c5ffe85e9d47d113001fce4d40aba51796af9c4f34f554e4db
5
5
  SHA512:
6
- metadata.gz: bc6f3c2f6f6a4408f1639a2276c74305417af57536bf3f6a0d7b268c0c7b85283613b93ef9454c44bd6f7b7fcf465d58e85cc8ea9fda18dd2d83f85329576097
7
- data.tar.gz: b7af37d1003e016d0269015402781d45c9cb25827d66024f3a3d5e7911866e7b37cc723fcdbdb087921ac2032554ced35f0dc411f06b4382da9adbfb7bcd3f26
6
+ metadata.gz: ad61f3ce7896ce12a581793771684f8e295121a3655382f5c85b94c60dd7c68393fadd7ea363b0f4ed697a6444ad118ed0e371682316f371516217bc47f0d6c4
7
+ data.tar.gz: ed9ac045fcf5e53cbb54d49356129ffb304648923c93c742455ec3b36b13f9229b645fd512b65569bc254e7b2175034c3a0ad7083790d4e4411adc9f2eb045dc
@@ -249,73 +249,73 @@ module Readiness
249
249
  # @author Jason Colyer
250
250
  # @since 1.0.112
251
251
  # @param object [Object] The object to parse
252
- def self.convert_conditions(object)
252
+ def self.convert_conditions(object, attribute_name = 'conditions')
253
253
  %w[any all].each do |type|
254
- object['conditions'][type].each_with_index do |c, i|
254
+ object[attribute_name][type].each_with_index do |c, i|
255
255
  if c['field'] == 'group_id'
256
256
  group = Readiness::Zendesk::Groups.find_by_name(@zendesk_client, c['value'], @groups)
257
257
  unless group.nil?
258
- object['conditions'][type][i]['value'] = group.id.to_s
258
+ object[attribute_name][type][i]['value'] = group.id.to_s
259
259
  end
260
260
  end
261
261
  if c['field'] == 'organization_id'
262
- code = c['value']
262
+ code = c['value'].to_s
263
263
  next if code.empty?
264
264
  next if %r{^[0-9]+$}.match code
265
265
 
266
266
  search = Readiness::Zendesk::Search.organizations(@zendesk_client, "salesforce_id:#{code}")
267
267
  if search.count == 1
268
- object['conditions'][type][i]['value'] = search.first.id.to_s
268
+ object[attribute_name][type][i]['value'] = search.first.id.to_s
269
269
  end
270
270
  end
271
271
  if c['field'] == 'satisfaction_reason_code'
272
272
  reason = Readiness::Zendesk::SatisfactionReasons.find_by_name(@zendesk_client, c['value'], @satisfaction_reasons)
273
273
  unless reason.nil?
274
- object['conditions'][type][i]['value'] = reason.reason_code.to_s
274
+ object[attribute_name][type][i]['value'] = reason.reason_code.to_s
275
275
  end
276
276
  end
277
277
  if c['field'] == 'via_id'
278
278
  via_type = Readiness::Zendesk::ViaTypes.find_by_name(c['value'])
279
279
  unless via_type.nil?
280
- object['conditions'][type][i]['value'] = via_type.id.to_s
280
+ object[attribute_name][type][i]['value'] = via_type.id.to_s
281
281
  end
282
282
  end
283
283
  if c['field'] == 'requester_role'
284
284
  role = Readiness::Zendesk::RequesterRoles.find_by_name(c['value'])
285
285
  unless role.nil?
286
- object['conditions'][type][i]['value'] = role.id.to_s
286
+ object[attribute_name][type][i]['value'] = role.id.to_s
287
287
  end
288
288
  end
289
289
  if c['field'] == 'role'
290
290
  role = Readiness::Zendesk::TicketUserTypes.find_by_name(@zendesk_client, c['value'])
291
291
  unless role.nil?
292
- object['conditions'][type][i]['value'] = role.id.to_s
292
+ object[attribute_name][type][i]['value'] = role.id.to_s
293
293
  end
294
294
  end
295
295
  if c['field'] == 'assignee_id'
296
296
  unless ['', 'current_user', 'requester_id'].include? c['value']
297
297
  search = Readiness::Zendesk::Search.users(@zendesk_client, "email:#{c['value']}")
298
298
  if search.count == 1
299
- object['conditions'][type][i]['value'] = search.first.id.to_s
299
+ object[attribute_name][type][i]['value'] = search.first.id.to_s
300
300
  end
301
301
  end
302
302
  end
303
303
  if c['field'] == 'ticket_form_id'
304
- if c['value'] =~ /Form\:\ /
304
+ if c['value'].to_s =~ /Form\:\ /
305
305
  name = c['value'].split('Form: ').last
306
306
  ticket_form = Readiness::Zendesk::TicketForms.find_by_name(@zendesk_client, name, @ticket_forms)
307
- object['conditions'][type][i]['value'] = ticket_form.id.to_s
307
+ object[attribute_name][type][i]['value'] = ticket_form.id.to_s
308
308
  end
309
309
  end
310
- if c['field'] =~ /Field\:\ /
310
+ if c['field'].to_s =~ /Field\:\ /
311
311
  name = c['field'].split('Field: ').last
312
312
  ticket_field = Readiness::Zendesk::TicketFields.find_by_name(@zendesk_client, name, @ticket_fields)
313
- object['conditions'][type][i]['field'] = "custom_fields_#{ticket_field.id}"
313
+ object[attribute_name][type][i]['field'] = "custom_fields_#{ticket_field.id}"
314
314
  end
315
315
  if c['value'].to_s =~ /Schedule\:\ /
316
316
  name = c['value'].split('Schedule: ').last
317
317
  schedule = Readiness::Zendesk::Schedules.find_by_name(@zendesk_client, name, @schedules)
318
- object['conditions'][type][i]['value'] = schedule.id.to_s
318
+ object[attribute_name][type][i]['value'] = schedule.id.to_s
319
319
  end
320
320
  end
321
321
  end
@@ -48,6 +48,7 @@ module Readiness
48
48
  # pp diffs[:updates.count]
49
49
  # # => 1
50
50
  def self.compare(zendesk_client, location = 'data', verbose = false)
51
+ @zendesk_client = zendesk_client
51
52
  diffs = {
52
53
  updates: [],
53
54
  creates: []
@@ -133,11 +134,20 @@ module Readiness
133
134
  # pp repo.count
134
135
  # # => 35
135
136
  def self.gather(location = 'data')
137
+ @categories = Readiness::Zendesk::TriggerCategories.list(@zendesk_client)
138
+ @groups = Readiness::Zendesk::Groups.list(@zendesk_client)
139
+ @schedules = Readiness::Zendesk::Schedules.list(@zendesk_client)
140
+ @satisfaction_reasons = Readiness::Zendesk::SatisfactionReasons.list(@zendesk_client)
141
+ @targets = Readiness::Zendesk::Targets.list(@zendesk_client)
142
+ @ticket_fields = Readiness::Zendesk::TicketFields.list(@zendesk_client)
143
+ @ticket_forms = Readiness::Zendesk::TicketForms.list(@zendesk_client)
144
+ @webhooks = Readiness::Zendesk::Webhooks.list(@zendesk_client)
136
145
  @errors = []
137
146
  @location = location
138
147
  array = []
139
148
  Dir["#{@location}/*.yaml"].each do |f|
140
149
  object = YAML.safe_load_file(f)
150
+ object = convert_conditions(object, 'filter')
141
151
  validity_check(f, object)
142
152
  object['id'] = nil
143
153
  array.push(Zendesk::SLAs.new(object))
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlab_support_readiness
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.112
4
+ version: 1.0.113
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Colyer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-02-03 00:00:00.000000000 Z
11
+ date: 2025-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport