gitlab_support_readiness 1.0.11 → 1.0.12

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.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/lib/support_readiness/calendly/client.rb +64 -0
  3. data/lib/support_readiness/calendly/configuration.rb +45 -0
  4. data/lib/support_readiness/calendly/organization_memberships.rb +67 -0
  5. data/lib/support_readiness/calendly/organizations.rb +123 -0
  6. data/lib/support_readiness/calendly/users.rb +105 -0
  7. data/lib/support_readiness/calendly.rb +16 -0
  8. data/lib/support_readiness/client.rb +88 -1
  9. data/lib/support_readiness/dates.rb +90 -0
  10. data/lib/support_readiness/gitlab/configuration.rb +0 -1
  11. data/lib/support_readiness/gitlab/groups.rb +35 -0
  12. data/lib/support_readiness/gitlab/markdown.rb +37 -0
  13. data/lib/support_readiness/gitlab/merge_requests.rb +127 -0
  14. data/lib/support_readiness/gitlab/namespaces.rb +22 -0
  15. data/lib/support_readiness/gitlab/projects.rb +36 -1
  16. data/lib/support_readiness/gitlab/repositories.rb +174 -0
  17. data/lib/support_readiness/gitlab/users.rb +24 -0
  18. data/lib/support_readiness/gitlab.rb +2 -0
  19. data/lib/support_readiness/google_calendar/client.rb +59 -0
  20. data/lib/support_readiness/google_calendar/configuration.rb +39 -0
  21. data/lib/support_readiness/google_calendar/events.rb +169 -0
  22. data/lib/support_readiness/google_calendar.rb +14 -0
  23. data/lib/support_readiness/mailgun/bounces.rb +103 -0
  24. data/lib/support_readiness/mailgun/client.rb +65 -0
  25. data/lib/support_readiness/mailgun/configuration.rb +46 -0
  26. data/lib/support_readiness/mailgun/emails.rb +95 -0
  27. data/lib/support_readiness/mailgun.rb +15 -0
  28. data/lib/support_readiness/pagerduty/escalation_policies.rb +1 -1
  29. data/lib/support_readiness/pagerduty/schedules.rb +27 -3
  30. data/lib/support_readiness/pagerduty/services.rb +1 -1
  31. data/lib/support_readiness/pagerduty/users.rb +197 -0
  32. data/lib/support_readiness/pagerduty.rb +1 -0
  33. data/lib/support_readiness/repos/articles.rb +335 -0
  34. data/lib/support_readiness/repos/automations.rb +247 -0
  35. data/lib/support_readiness/repos/groups.rb +188 -0
  36. data/lib/support_readiness/repos/macros.rb +224 -0
  37. data/lib/support_readiness/repos/organization_fields.rb +193 -0
  38. data/lib/support_readiness/repos/sla_policies.rb +192 -0
  39. data/lib/support_readiness/repos/ticket_fields.rb +200 -0
  40. data/lib/support_readiness/repos/ticket_forms.rb +200 -0
  41. data/lib/support_readiness/repos/triggers.rb +255 -0
  42. data/lib/support_readiness/repos/user_fields.rb +201 -0
  43. data/lib/support_readiness/repos/views.rb +362 -0
  44. data/lib/support_readiness/repos.rb +22 -0
  45. data/lib/support_readiness/salesforce/accounts.rb +109 -0
  46. data/lib/support_readiness/salesforce/cases.rb +109 -0
  47. data/lib/support_readiness/salesforce/client.rb +64 -0
  48. data/lib/support_readiness/salesforce/configuration.rb +49 -0
  49. data/lib/support_readiness/salesforce/queries.rb +62 -0
  50. data/lib/support_readiness/salesforce.rb +16 -0
  51. data/lib/support_readiness/slack/client.rb +63 -0
  52. data/lib/support_readiness/slack/configuration.rb +43 -0
  53. data/lib/support_readiness/slack/messages.rb +37 -0
  54. data/lib/support_readiness/slack.rb +14 -0
  55. data/lib/support_readiness/zendesk/app_job_statuses.rb +140 -0
  56. data/lib/support_readiness/zendesk/apps.rb +209 -0
  57. data/lib/support_readiness/zendesk/automations.rb +1 -2
  58. data/lib/support_readiness/zendesk/macros.rb +1 -3
  59. data/lib/support_readiness/zendesk/organization_fields.rb +1 -1
  60. data/lib/support_readiness/zendesk/theme_job_statuses.rb +136 -0
  61. data/lib/support_readiness/zendesk/themes.rb +303 -0
  62. data/lib/support_readiness/zendesk/ticket_field_options.rb +110 -0
  63. data/lib/support_readiness/zendesk/ticket_fields.rb +85 -16
  64. data/lib/support_readiness/zendesk/ticket_forms.rb +65 -2
  65. data/lib/support_readiness/zendesk/tickets.rb +77 -0
  66. data/lib/support_readiness/zendesk/triggers.rb +1 -2
  67. data/lib/support_readiness/zendesk/user_field_options.rb +110 -0
  68. data/lib/support_readiness/zendesk/user_fields.rb +257 -0
  69. data/lib/support_readiness/zendesk/views.rb +49 -2
  70. data/lib/support_readiness/zendesk.rb +7 -0
  71. data/lib/support_readiness.rb +16 -0
  72. metadata +120 -2
@@ -0,0 +1,257 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Defines the module Readiness.
4
+ module Readiness
5
+ # Defines the module Zendesk
6
+ module Zendesk
7
+ ##
8
+ # Defines the class UserFields within the module {Readiness::Zendesk}.
9
+ #
10
+ # @author Jason Colyer
11
+ # @since 1.0.12
12
+ class UserFields < Readiness::Client
13
+ attr_accessor :active, :custom_field_options, :id, :description, :key, :position, :regexp_for_validation, :title, :type
14
+
15
+ ##
16
+ # Creates a new {Readiness::Zendesk::UserFields} instance
17
+ #
18
+ # @author Jason Colyer
19
+ # @since 1.0.12
20
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
21
+ # @param object [Object] An instance of {Readiness::Zendesk::UserFields}
22
+ # @example
23
+ # require 'support_readiness'
24
+ # config = Readiness::Zendesk::Configuration.new
25
+ # config.username = 'alice@example.com'
26
+ # config.token = 'test123abc'
27
+ # config.url = 'https://example.zendesk.com/api/v2'
28
+ # client = Readiness::Zendesk::Client.new(config)
29
+ # Readiness::Zendesk::UserFields.new(client)
30
+ def initialize(client, object = {})
31
+ @active = object['active']
32
+ @custom_field_options = user_field_options(client, object)
33
+ @id = object['id']
34
+ @description = object['description']
35
+ @key = object['key']
36
+ @position = object['position']
37
+ @regexp_for_validation = object['regexp_for_validation']
38
+ @title = object['title']
39
+ @type = object['type']
40
+ end
41
+
42
+ ##
43
+ # Gets the user field options for a user field
44
+ #
45
+ # @author Jason Colyer
46
+ # @since 1.0.12
47
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
48
+ # @param object [Varies] Either a Hash from JSON or a {Readiness::Zendesk::UserFields} instance
49
+ # @return [Array]
50
+ def user_field_options(client, object)
51
+ return nil unless %w[dropdown].include? object['type']
52
+
53
+ # Handles when the position value is nil
54
+ object['custom_field_options'].each do |c|
55
+ c['position'] = object['custom_field_options'].index(c)
56
+ end
57
+ object['custom_field_options'].map { |c| UserFieldOptions.new(c) }
58
+ end
59
+
60
+ ##
61
+ # Lists user fields
62
+ #
63
+ # @author Jason Colyer
64
+ # @since 1.0.12
65
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
66
+ # @return [Array]
67
+ # @see https://developer.zendesk.com/api-reference/ticketing/users/user_fields/#list-user-fields Zendesk API > User Fields > List User Fields
68
+ # @example
69
+ # require 'support_readiness'
70
+ # config = Readiness::Zendesk::Configuration.new
71
+ # config.username = 'alice@example.com'
72
+ # config.token = 'test123abc'
73
+ # config.url = 'https://example.zendesk.com/api/v2'
74
+ # client = Readiness::Zendesk::Client.new(config)
75
+ # fields = Readiness::Zendesk::UserFields.list(client)
76
+ # pp fields.first.id
77
+ # # => 7
78
+ def self.list(client)
79
+ array = []
80
+ opts = "page[size]=100"
81
+ loop do
82
+ response = client.connection.get("user_fields?#{opts}")
83
+ handle_request_error(0, 'Zendesk', response.status) unless response.status == 200
84
+ body = Oj.load(response.body)
85
+ array += body['user_fields'].map { |t| UserFields.new(client, t) }
86
+ break unless body['meta']['has_more']
87
+
88
+ opts = body['links'] ['next'].split('?').last
89
+ end
90
+ array
91
+ end
92
+
93
+
94
+ ##
95
+ # Locates an user field within Zendesk. This will not exit on error (except Authentication errors)
96
+ #
97
+ # @author Jason Colyer
98
+ # @since 1.0.12
99
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
100
+ # @param fid [Integer] The user field ID to locate
101
+ # @return [Object]
102
+ # @see https://developer.zendesk.com/api-reference/ticketing/users/user_fields/#show-user-field Zendesk API > User Fields > Show User Fiueld
103
+ # @example
104
+ # require 'support_readiness'
105
+ # config = Readiness::Zendesk::Configuration.new
106
+ # config.username = 'alice@example.com'
107
+ # config.token = 'test123abc'
108
+ # config.url = 'https://example.zendesk.com/api/v2'
109
+ # client = Readiness::Zendesk::Client.new(config)
110
+ # field = Readiness::Zendesk::UserFields.find(client, 7)
111
+ # pp field.title
112
+ # # => "Custom Field 1"
113
+ def self.find(client, fid)
114
+ response = client.connection.get "user_fields/#{fid}"
115
+ handle_request_error(0, 'Zendesk', response.status, { action: 'get', id: fid }) unless response.status == 200
116
+ return UserFields.new(client, Oj.load(response.body)['user_field']) if response.status == 200
117
+
118
+ Oj.load(response.body)
119
+ end
120
+
121
+ ##
122
+ # Locates an user field within Zendesk. This will exit on error
123
+ #
124
+ # @author Jason Colyer
125
+ # @since 1.0.12
126
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
127
+ # @param fid [Integer] The user field ID to locate
128
+ # @return [Object]
129
+ # @see https://developer.zendesk.com/api-reference/ticketing/users/user_fields/#show-user-field Zendesk API > User Fields > Show User Fiueld
130
+ # @example
131
+ # require 'support_readiness'
132
+ # config = Readiness::Zendesk::Configuration.new
133
+ # config.username = 'alice@example.com'
134
+ # config.token = 'test123abc'
135
+ # config.url = 'https://example.zendesk.com/api/v2'
136
+ # client = Readiness::Zendesk::Client.new(config)
137
+ # field = Readiness::Zendesk::UserFields.find!(client, 7)
138
+ # pp field.name
139
+ # # => "Custom Field 1"
140
+ def self.find!(client, fid)
141
+ response = client.connection.get "user_fields/#{fid}"
142
+ handle_request_error(1, 'Zendesk', response.status, { action: 'Find user field', id: fid }) unless response.status == 200
143
+ UserFields.new(client, Oj.load(response.body)['user_field'])
144
+ end
145
+
146
+ ##
147
+ # Creates an user field. Will exit if unsuccessful
148
+ #
149
+ # @author Jason Colyer
150
+ # @since 1.0.12
151
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
152
+ # @param field [Object] An instance of {Readiness::Zendesk::UserFields}
153
+ # @return [Object] An instance of {Readiness::Zendesk::UserFields}
154
+ # @see https://developer.zendesk.com/api-reference/ticketing/users/user_fields/#create-user-field Zendesk API > User Fields > Create User Field
155
+ # @example
156
+ # require 'support_readiness'
157
+ # config = Readiness::Zendesk::Configuration.new
158
+ # config.username = 'alice@example.com'
159
+ # config.token = 'test123abc'
160
+ # config.url = 'https://example.zendesk.com/api/v2'
161
+ # client = Readiness::Zendesk::Client.new(config)
162
+ # field = Readiness::Zendesk::UserFields.new
163
+ # field.type = 'text'
164
+ # field.title = 'Support desc'
165
+ # field.description = 'This field describes the support plan this organization has'
166
+ # field.position = 0
167
+ # field.active = true
168
+ # field.key = 'support_description'
169
+ # create = Readiness::Zendesk::UserFields.create!(client, field)
170
+ # pp create.id
171
+ # # => 25
172
+ def self.create!(client, field)
173
+ response = client.connection.post 'user_fields', to_clean_json_with_key(field, 'user_field')
174
+ handle_request_error(1, 'Zendesk', response.status, { action: 'Create user field', message: Oj.load(response.body)}) unless response.status == 201
175
+ UserFields.new(client, Oj.load(response.body)['user_field'])
176
+ end
177
+
178
+ ##
179
+ # Updates an user field. Will exit if unsuccessful
180
+ #
181
+ # @author Jason Colyer
182
+ # @since 1.0.12
183
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
184
+ # @param field [Object] An instance of {Readiness::Zendesk::UserFields}
185
+ # @return [Object] An instance of {Readiness::Zendesk::UserFields}
186
+ # @see https://developer.zendesk.com/api-reference/ticketing/users/user_fields/#update-user-field Zendesk API > User Fields > Update User Field
187
+ # @example
188
+ # require 'support_readiness'
189
+ # config = Readiness::Zendesk::Configuration.new
190
+ # config.username = 'alice@example.com'
191
+ # config.token = 'test123abc'
192
+ # config.url = 'https://example.zendesk.com/api/v2'
193
+ # client = Readiness::Zendesk::Client.new(config)
194
+ # field = Readiness::Zendesk::UserFields.find!(client, 75)
195
+ # field.title = 'Support description'
196
+ # update = Readiness::Zendesk::UserFields.update!(client, field)
197
+ # pp update.title
198
+ # # => "Support description"
199
+ def self.update!(client, field)
200
+ response = client.connection.put "user_fields/#{field.id}", to_clean_json_with_key(field, 'user_field')
201
+ handle_request_error(1, 'Zendesk', response.status, { action: 'Update user field', message: Oj.load(response.body)}) unless response.status == 200
202
+ UserFields.new(client, Oj.load(response.body)['user_field'])
203
+ end
204
+
205
+ ##
206
+ # Deletes an user field. Will exit if unsuccessful
207
+ #
208
+ # @author Jason Colyer
209
+ # @since 1.0.12
210
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
211
+ # @param field [Object] An instance of {Readiness::Zendesk::UserFields}
212
+ # @return [Boolean]
213
+ # @see https://developer.zendesk.com/api-reference/ticketing/users/user_fields/#delete-user-field Zendesk API > User Fields > Delete User Field
214
+ # @example
215
+ # require 'support_readiness'
216
+ # config = Readiness::Zendesk::Configuration.new
217
+ # config.username = 'alice@example.com'
218
+ # config.token = 'test123abc'
219
+ # config.url = 'https://example.zendesk.com/api/v2'
220
+ # client = Readiness::Zendesk::Client.new(config)
221
+ # field = Readiness::Zendesk::UserFields.find!(client, 75)
222
+ # delete = Readiness::Zendesk::UserFields.delete!(client, field)
223
+ # pp delete
224
+ # # => true
225
+ def self.delete!(client, field)
226
+ response = client.connection.delete "user_fields/#{field.id}"
227
+ handle_request_error(1, 'Zendesk', response.status, { action: 'Delete user field', id: field.id, message: Oj.load(response.body)}) unless response.status == 204
228
+ true
229
+ end
230
+
231
+ ##
232
+ # Reorders user fields. Will exit if unsuccessful
233
+ #
234
+ # @author Jason Colyer
235
+ # @since 1.0.0
236
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
237
+ # @param fids [Array] An Array of field IDs (order is important)
238
+ # @return [Boolean]
239
+ # @see https://developer.zendesk.com/api-reference/ticketing/users/user_fields/#reorder-user-field Zendesk API > User Fields > Reorder User Field
240
+ # @example
241
+ # require 'support_readiness'
242
+ # config = Readiness::Zendesk::Configuration.new
243
+ # config.username = 'alice@example.com'
244
+ # config.token = 'test123abc'
245
+ # config.url = 'https://example.zendesk.com/api/v2'
246
+ # client = Readiness::Zendesk::Client.new(config)
247
+ # reorder = Readiness::Zendesk::UserFields.reorder!(client, [4, 5, 2, 8])
248
+ # pp reorder
249
+ # # => true
250
+ def self.reorder!(client, fids)
251
+ response = client.connection.put 'user_fields/reorder', { user_field_ids: fids }.to_json
252
+ handle_request_error(1, 'Zendesk', response.status, { action: 'Reorder user fields', id: fids, message: Oj.load(response.body)}) unless response.status == 200
253
+ true
254
+ end
255
+ end
256
+ end
257
+ end
@@ -10,7 +10,7 @@ module Readiness
10
10
  # @author Jason Colyer
11
11
  # @since 1.0.0
12
12
  class Views < Readiness::Client
13
- attr_accessor :active, :conditions, :default, :description, :execution, :id, :position, :restriction, :title
13
+ attr_accessor :active, :conditions, :description, :execution, :id, :position, :restriction, :title
14
14
 
15
15
  ##
16
16
  # Creates a new {Readiness::Zendesk::Views} instance
@@ -24,7 +24,6 @@ module Readiness
24
24
  def initialize(object = {})
25
25
  @active = object['active']
26
26
  @conditions = object['conditions']
27
- @default = object['default']
28
27
  @description = object['description']
29
28
  @execution = object['execution']
30
29
  @id = object['id']
@@ -143,6 +142,54 @@ module Readiness
143
142
  Oj.load(response.body)['views'].map { |o| Views.new(o) }
144
143
  end
145
144
 
145
+ ##
146
+ # Locates a view within Zendesk by name. This will not exit on error (except Authentication errors)
147
+ #
148
+ # @author Jason Colyer
149
+ # @since 1.0.12
150
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
151
+ # @param name [String] The view name to look for
152
+ # @return [Object] An instance of {Readiness::Zendesk::Views}
153
+ # @example
154
+ # require 'support_readiness'
155
+ # config = Readiness::Zendesk::Configuration.new
156
+ # config.username = 'alice@example.com'
157
+ # config.token = 'test123abc'
158
+ # config.url = 'https://example.zendesk.com/api/v2'
159
+ # client = Readiness::Zendesk::Client.new(config)
160
+ # field = Readiness::Zendesk::Views.find_by_name(client, 'Tickets updated less than 12 Hours')
161
+ # pp field.id
162
+ # # => 25
163
+ def self.find_by_name(client, name)
164
+ views = Views.list(client)
165
+ views.detect { |v| v.title == name }
166
+ end
167
+
168
+ ##
169
+ # Locates a view within Zendesk by name. This will exit on error
170
+ #
171
+ # @author Jason Colyer
172
+ # @since 1.0.12
173
+ # @param client [Object] An instance of {Readiness::Zendesk::Client}
174
+ # @param name [String] The view name to look for
175
+ # @return [Object] An instance of {Readiness::Zendesk::Views}
176
+ # @example
177
+ # require 'support_readiness'
178
+ # config = Readiness::Zendesk::Configuration.new
179
+ # config.username = 'alice@example.com'
180
+ # config.token = 'test123abc'
181
+ # config.url = 'https://example.zendesk.com/api/v2'
182
+ # client = Readiness::Zendesk::Client.new(config)
183
+ # field = Readiness::Zendesk::Views.find_by_name!(client, 'Tickets updated less than 12 Hours')
184
+ # pp field.id
185
+ # # => 25
186
+ def self.find_by_name!(client, name)
187
+ views = Views.list(client)
188
+ view = views.detect { |v| v.title == name }
189
+ handle_request_error(1, 'Zendesk', 404, { action: 'Find view', id: name }) if view.nil?
190
+ view
191
+ end
192
+
146
193
  ##
147
194
  # Creates a view. Will exit if unsuccessful
148
195
  #
@@ -7,6 +7,8 @@ module Readiness
7
7
  # @author Jason Colyer
8
8
  # @since 1.0.0
9
9
  module Zendesk
10
+ require "#{__dir__}/zendesk/app_job_statuses"
11
+ require "#{__dir__}/zendesk/apps"
10
12
  require "#{__dir__}/zendesk/articles"
11
13
  require "#{__dir__}/zendesk/automations"
12
14
  require "#{__dir__}/zendesk/client"
@@ -21,10 +23,15 @@ module Readiness
21
23
  require "#{__dir__}/zendesk/roles"
22
24
  require "#{__dir__}/zendesk/search"
23
25
  require "#{__dir__}/zendesk/sla_policies"
26
+ require "#{__dir__}/zendesk/theme_job_statuses"
27
+ require "#{__dir__}/zendesk/themes"
24
28
  require "#{__dir__}/zendesk/ticket_fields"
29
+ require "#{__dir__}/zendesk/ticket_field_options"
25
30
  require "#{__dir__}/zendesk/ticket_forms"
26
31
  require "#{__dir__}/zendesk/tickets"
27
32
  require "#{__dir__}/zendesk/triggers"
33
+ require "#{__dir__}/zendesk/user_field_options"
34
+ require "#{__dir__}/zendesk/user_fields"
28
35
  require "#{__dir__}/zendesk/users"
29
36
  require "#{__dir__}/zendesk/views"
30
37
  end
@@ -17,11 +17,27 @@ require 'erb'
17
17
  require 'faraday'
18
18
  require 'faraday/multipart'
19
19
  require 'faraday/retry'
20
+ require 'google/apis/calendar_v3'
20
21
  require 'json'
22
+ require 'nokogiri'
21
23
  require 'oj'
22
24
  require 'redis'
25
+ require 'restforce'
26
+ require 'yaml'
27
+ require 'zip'
28
+
29
+ # This one should always be first
23
30
  require "#{__dir__}/support_readiness/client"
31
+
32
+ # Order does not matter here
33
+ require "#{__dir__}/support_readiness/calendly"
34
+ require "#{__dir__}/support_readiness/dates"
24
35
  require "#{__dir__}/support_readiness/gitlab"
36
+ require "#{__dir__}/support_readiness/google_calendar"
37
+ require "#{__dir__}/support_readiness/mailgun"
25
38
  require "#{__dir__}/support_readiness/pagerduty"
26
39
  require "#{__dir__}/support_readiness/redis"
40
+ require "#{__dir__}/support_readiness/repos"
41
+ require "#{__dir__}/support_readiness/salesforce"
42
+ require "#{__dir__}/support_readiness/slack"
27
43
  require "#{__dir__}/support_readiness/zendesk"
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.11
4
+ version: 1.0.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Colyer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-30 00:00:00.000000000 Z
11
+ date: 2024-10-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -114,6 +114,20 @@ dependencies:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
116
  version: 2.2.1
117
+ - !ruby/object:Gem::Dependency
118
+ name: google-apis-calendar_v3
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: 0.43.0
124
+ type: :runtime
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: 0.43.0
117
131
  - !ruby/object:Gem::Dependency
118
132
  name: json
119
133
  requirement: !ruby/object:Gem::Requirement
@@ -128,6 +142,20 @@ dependencies:
128
142
  - - "~>"
129
143
  - !ruby/object:Gem::Version
130
144
  version: 2.7.1
145
+ - !ruby/object:Gem::Dependency
146
+ name: nokogiri
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: 1.16.7
152
+ type: :runtime
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: 1.16.7
131
159
  - !ruby/object:Gem::Dependency
132
160
  name: oj
133
161
  requirement: !ruby/object:Gem::Requirement
@@ -156,6 +184,48 @@ dependencies:
156
184
  - - "~>"
157
185
  - !ruby/object:Gem::Version
158
186
  version: 5.0.8
187
+ - !ruby/object:Gem::Dependency
188
+ name: restforce
189
+ requirement: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - "~>"
192
+ - !ruby/object:Gem::Version
193
+ version: 7.5.0
194
+ type: :runtime
195
+ prerelease: false
196
+ version_requirements: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - "~>"
199
+ - !ruby/object:Gem::Version
200
+ version: 7.5.0
201
+ - !ruby/object:Gem::Dependency
202
+ name: rubyzip
203
+ requirement: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - "~>"
206
+ - !ruby/object:Gem::Version
207
+ version: 2.3.2
208
+ type: :runtime
209
+ prerelease: false
210
+ version_requirements: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - "~>"
213
+ - !ruby/object:Gem::Version
214
+ version: 2.3.2
215
+ - !ruby/object:Gem::Dependency
216
+ name: yaml
217
+ requirement: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - "~>"
220
+ - !ruby/object:Gem::Version
221
+ version: 0.3.0
222
+ type: :runtime
223
+ prerelease: false
224
+ version_requirements: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - "~>"
227
+ - !ruby/object:Gem::Version
228
+ version: 0.3.0
159
229
  description: Official gem of GitLab Support Readiness
160
230
  email: jcolyer@gitlab.com
161
231
  executables: []
@@ -163,24 +233,67 @@ extensions: []
163
233
  extra_rdoc_files: []
164
234
  files:
165
235
  - lib/support_readiness.rb
236
+ - lib/support_readiness/calendly.rb
237
+ - lib/support_readiness/calendly/client.rb
238
+ - lib/support_readiness/calendly/configuration.rb
239
+ - lib/support_readiness/calendly/organization_memberships.rb
240
+ - lib/support_readiness/calendly/organizations.rb
241
+ - lib/support_readiness/calendly/users.rb
166
242
  - lib/support_readiness/client.rb
243
+ - lib/support_readiness/dates.rb
167
244
  - lib/support_readiness/gitlab.rb
168
245
  - lib/support_readiness/gitlab/client.rb
169
246
  - lib/support_readiness/gitlab/configuration.rb
170
247
  - lib/support_readiness/gitlab/groups.rb
171
248
  - lib/support_readiness/gitlab/issues.rb
249
+ - lib/support_readiness/gitlab/markdown.rb
250
+ - lib/support_readiness/gitlab/merge_requests.rb
172
251
  - lib/support_readiness/gitlab/namespaces.rb
173
252
  - lib/support_readiness/gitlab/projects.rb
174
253
  - lib/support_readiness/gitlab/repositories.rb
175
254
  - lib/support_readiness/gitlab/users.rb
255
+ - lib/support_readiness/google_calendar.rb
256
+ - lib/support_readiness/google_calendar/client.rb
257
+ - lib/support_readiness/google_calendar/configuration.rb
258
+ - lib/support_readiness/google_calendar/events.rb
259
+ - lib/support_readiness/mailgun.rb
260
+ - lib/support_readiness/mailgun/bounces.rb
261
+ - lib/support_readiness/mailgun/client.rb
262
+ - lib/support_readiness/mailgun/configuration.rb
263
+ - lib/support_readiness/mailgun/emails.rb
176
264
  - lib/support_readiness/pagerduty.rb
177
265
  - lib/support_readiness/pagerduty/client.rb
178
266
  - lib/support_readiness/pagerduty/configuration.rb
179
267
  - lib/support_readiness/pagerduty/escalation_policies.rb
180
268
  - lib/support_readiness/pagerduty/schedules.rb
181
269
  - lib/support_readiness/pagerduty/services.rb
270
+ - lib/support_readiness/pagerduty/users.rb
182
271
  - lib/support_readiness/redis.rb
272
+ - lib/support_readiness/repos.rb
273
+ - lib/support_readiness/repos/articles.rb
274
+ - lib/support_readiness/repos/automations.rb
275
+ - lib/support_readiness/repos/groups.rb
276
+ - lib/support_readiness/repos/macros.rb
277
+ - lib/support_readiness/repos/organization_fields.rb
278
+ - lib/support_readiness/repos/sla_policies.rb
279
+ - lib/support_readiness/repos/ticket_fields.rb
280
+ - lib/support_readiness/repos/ticket_forms.rb
281
+ - lib/support_readiness/repos/triggers.rb
282
+ - lib/support_readiness/repos/user_fields.rb
283
+ - lib/support_readiness/repos/views.rb
284
+ - lib/support_readiness/salesforce.rb
285
+ - lib/support_readiness/salesforce/accounts.rb
286
+ - lib/support_readiness/salesforce/cases.rb
287
+ - lib/support_readiness/salesforce/client.rb
288
+ - lib/support_readiness/salesforce/configuration.rb
289
+ - lib/support_readiness/salesforce/queries.rb
290
+ - lib/support_readiness/slack.rb
291
+ - lib/support_readiness/slack/client.rb
292
+ - lib/support_readiness/slack/configuration.rb
293
+ - lib/support_readiness/slack/messages.rb
183
294
  - lib/support_readiness/zendesk.rb
295
+ - lib/support_readiness/zendesk/app_job_statuses.rb
296
+ - lib/support_readiness/zendesk/apps.rb
184
297
  - lib/support_readiness/zendesk/articles.rb
185
298
  - lib/support_readiness/zendesk/automations.rb
186
299
  - lib/support_readiness/zendesk/client.rb
@@ -195,10 +308,15 @@ files:
195
308
  - lib/support_readiness/zendesk/roles.rb
196
309
  - lib/support_readiness/zendesk/search.rb
197
310
  - lib/support_readiness/zendesk/sla_policies.rb
311
+ - lib/support_readiness/zendesk/theme_job_statuses.rb
312
+ - lib/support_readiness/zendesk/themes.rb
313
+ - lib/support_readiness/zendesk/ticket_field_options.rb
198
314
  - lib/support_readiness/zendesk/ticket_fields.rb
199
315
  - lib/support_readiness/zendesk/ticket_forms.rb
200
316
  - lib/support_readiness/zendesk/tickets.rb
201
317
  - lib/support_readiness/zendesk/triggers.rb
318
+ - lib/support_readiness/zendesk/user_field_options.rb
319
+ - lib/support_readiness/zendesk/user_fields.rb
202
320
  - lib/support_readiness/zendesk/users.rb
203
321
  - lib/support_readiness/zendesk/views.rb
204
322
  homepage: https://gitlab.com/gitlab-support-readiness/gitlab_support_readiness_gem