gitlab_support_readiness 1.0.44 → 1.0.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c93af42de05070b1bfe7139020369a5e8c171315c83dc66f4c997e172780b715
4
- data.tar.gz: '069e8c0f67891ebf8f69788728ec4317d3b5545a5b110ddd4331f16df9bf224b'
3
+ metadata.gz: cd41ce25fa47378b587b9ab02e515cd74110ee1564cb959bf9e6bb876318d6fb
4
+ data.tar.gz: 18d71e8bc1805feb4b9ccd2da04fe69d75f2a64897b128740f14f589f7854853
5
5
  SHA512:
6
- metadata.gz: 65706e165e107ca8620a1c6867066d18b6bd18811820fa301ad6f09830105a8e59ffb3023b1f4ce9ff79951478942edcb1bddf45ce2fc2fd61d45edf3f33797c
7
- data.tar.gz: 1d933b6d9642aa08834375d1d67de603bcca29b4b21eb8bf466e94258f87c1248fad0645f2c4710a33ddc131719f88868a6f7a230f49dace0e4285f3d568b250
6
+ metadata.gz: dcbdce88e2bbfe93906a0bc87238d49f171e41051f42fd47090bbd1e563d82c475c0b1612009ddbdf21ebc538a3f9a9a74c080e73789fbee26ebb32a33fe40ff
7
+ data.tar.gz: 89c640a91237666ab952a4119949c1413184884799ef0f94a9e689ed0bd5b469ab12084b8e37460a18b75b919a1e8cf367c1a7e208dce9a18330e1ca3b25ecba
@@ -28,13 +28,13 @@ module Readiness
28
28
  ticket.requester_id = zd_user.id
29
29
  ticket.submitter_id = zd_user.id
30
30
  ticket.comment = { html_body: body }
31
- ticket.subject = 'xxxxx'
31
+ ticket.subject = 'Internal Request - SM - Order Management'
32
32
  ticket.tags = %w[lnr_internal_request lnr_valid_request lnr_order_management]
33
33
  ticket.priority = 'normal'
34
34
  ticket.status = 'new'
35
35
  ticket.ticket_form_id = 360001803151
36
36
  ticket.custom_fields = [
37
- { id: 11717320292244, value: 'xxxxxxxxxxxxxxxxxxx' },
37
+ { id: 11717320292244, value: 'ir_order_management' },
38
38
  { id: 11717222771604, value: zd_user.email }
39
39
  ]
40
40
  create = Readiness::Zendesk::Tickets.create!(@zendesk_client, ticket)
@@ -25,7 +25,7 @@ module Readiness
25
25
  ticket.requester_id = zd_user.id
26
26
  ticket.submitter_id = zd_user.id
27
27
  ticket.comment = { html_body: body }
28
- ticket.subject = 'xxxxx'
28
+ ticket.subject = 'Internal Request - Other (nothing else fits the request)'
29
29
  ticket.tags = %w[lnr_internal_request lnr_valid_request lnr_internal_request_other]
30
30
  ticket.priority = 'normal'
31
31
  ticket.status = 'new'
@@ -10,6 +10,43 @@ module Readiness
10
10
  # @author Jason Colyer
11
11
  # @since 1.0.44
12
12
  class OrganizationNotes < Readiness::Client
13
+ ##
14
+ # Process an Organization Notes request for Zendesk US Government
15
+ #
16
+ # @author Jason Colyer
17
+ # @since 1.0.45
18
+ def self.process_usgov!(zendesk_client, ticket_id)
19
+ @zendesk_client = zendesk_client
20
+ @ticket_id = ticket_id
21
+ @ticket = Readiness::Zendesk::Tickets.find(@zendesk_client, @ticket_id)
22
+ puts 'No ticket found, so no org notes to add' if @ticket.is_a? Hash
23
+ exit 0 if @ticket.is_a? Hash
24
+
25
+ puts 'Ticket is closed, so no org notes to add' if @ticket.status == 'closed'
26
+ exit 0 if @ticket.status == 'closed'
27
+
28
+ puts 'No organization, so no org notes to add' if @ticket.organization_id.nil?
29
+ exit 0 if @ticket.organization_id.nil?
30
+
31
+ @organization = Readiness::Zendesk::Organizations.find!(@zendesk_client, @ticket.organization_id)
32
+ print 'Making organization info comment...'
33
+ new_ticket = Readiness::Zendesk::Tickets.new
34
+ new_ticket.id = @ticket.id
35
+ new_ticket.comment = { body: usgov_organization_info_comment.gsub("\n\n\n\n", "\n\n").strip, public: false }
36
+ Readiness::Zendesk::Tickets.update!(zendesk_client, new_ticket)
37
+ puts 'done'
38
+ sleep 3
39
+ print 'Making organization entitlement info comment...'
40
+ new_ticket.comment = { body: organization_entitlement_comment.gsub("\n\n\n\n", "\n\n").strip, public: false }
41
+ Readiness::Zendesk::Tickets.update!(zendesk_client, new_ticket)
42
+ puts 'done'
43
+ sleep 3
44
+ print 'Making organization support hours info comment...'
45
+ new_ticket.comment = { body: usgov_support_hours_comment.gsub("\n\n\n\n", "\n\n").strip, public: false }
46
+ Readiness::Zendesk::Tickets.update!(zendesk_client, new_ticket)
47
+ puts 'done'
48
+ end
49
+
13
50
  ##
14
51
  # Process an Organization Notes request for Zendesk Global
15
52
  #
@@ -134,6 +171,29 @@ module Readiness
134
171
  STRING
135
172
  end
136
173
 
174
+ def self.usgov_organization_info_comment
175
+ <<~STRING
176
+ #{usgov_org_notes_string}
177
+
178
+ #{usgov_org_details_string}
179
+
180
+ ## Organization Info
181
+
182
+ - Account type: #{@organization.organization_fields['account_type'].to_s.capitalize}
183
+ - Sales Segmentation: #{@organization.organization_fields['sales_segmentation'].to_s.capitalize}
184
+ - Account Owner: #{@organization.organization_fields['account_owner']}
185
+ - Customer Success Manager: #{@organization.organization_fields['technical_account_manager']}
186
+ - Solutions Architect: #{@organization.organization_fields['solutions_architect']}
187
+ - Expiration/Next Renewal Date: #{@organization.organization_fields['expiration_date']}
188
+ - Salesforce: [#{@organization.organization_fields['salesforce_id']}](https://gitlab.lightning.force.com/lightning/r/Account/#{@organization.organization_fields['salesforce_id']}/view)
189
+
190
+ #{emergencies_list}
191
+
192
+ #{collab_project_string}
193
+
194
+ STRING
195
+ end
196
+
137
197
  def self.escalated_string
138
198
  "---\n\n## NOTE: This organization is in an escalated state.\n\n"
139
199
  end
@@ -212,6 +272,26 @@ module Readiness
212
272
  STRING
213
273
  end
214
274
 
275
+ def self.usgov_org_notes_string
276
+ return nil if @organization.notes.to_s == ''
277
+
278
+ <<~STRING
279
+ ## Organization Notes
280
+
281
+ #{@organization.notes}
282
+ STRING
283
+ end
284
+
285
+ def self.usgov_org_details_string
286
+ return nil if @organization.details.to_s == ''
287
+
288
+ <<~STRING
289
+ ## Organization Details
290
+
291
+ #{@organization.details}
292
+ STRING
293
+ end
294
+
215
295
  def self.shared_org_string
216
296
  return nil unless @organization.shared_tickets
217
297
 
@@ -229,6 +309,13 @@ module Readiness
229
309
  STRING
230
310
  end
231
311
 
312
+ def self.usgov_organization_entitlement_comment
313
+ <<~STRING
314
+ #{subscriptions_message}
315
+ #{addons_message}
316
+ STRING
317
+ end
318
+
232
319
  def self.expired_message
233
320
  if within_grace_period?
234
321
  if @organization.organization_fields['health_score'].to_s.capitalize == 'Green'
@@ -303,6 +390,30 @@ module Readiness
303
390
  - :question: Not sure what to do?: Check the [GitLab Dedicated Handbook](https://handbook.gitlab.com/handbook/support/workflows/dedicated_logs/) for information on how to handle :ticket: Dedicated tickets including information on [working with logs](https://handbook.gitlab.com/handbook/support/workflows/dedicated_logs/#working-with-logs).
304
391
  STRING
305
392
  end
393
+
394
+ def self.usgov_support_hours_comment
395
+ type = if @organization.tags.include? '24x7_emergency_support_manual' || @organization.organization_fields['emergency_support_24x7']
396
+ '24x7'
397
+ else
398
+ '12x5'
399
+ end
400
+ hours = if @ticket.priority == 'low' || @ticket.priority == 'normal'
401
+ 'Monday through Friday, 0500-1700 Pacific Time'
402
+ elsif @organization.tags.include? '24x7_emergency_support_manual' || @organization.organization_fields['emergency_support_24x7']
403
+ '24x7'
404
+ else
405
+ 'Monday through Friday, 0500-1700 Pacific Time'
406
+ end
407
+ <<~STRING
408
+ ## Support Hours
409
+
410
+ This customer is currently entitled to #{type} support.
411
+
412
+ As this ticket has a priority of #{@ticket.priority}, this means the hours of SLA for this customer are #{hours}.
413
+
414
+ Please ensure reply times follow the above information.
415
+ STRING
416
+ end
306
417
  end
307
418
  end
308
419
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlab_support_readiness
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.44
4
+ version: 1.0.45
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Colyer