gitlab_support_readiness 1.0.10 → 1.0.12

Sign up to get free protection for your applications and to get access to all the features.
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 +2 -4
  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 +78 -1
  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.10
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