gitlab_support_readiness 1.0.11 → 1.0.13
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 +4 -4
- data/lib/support_readiness/calendly/client.rb +64 -0
- data/lib/support_readiness/calendly/configuration.rb +45 -0
- data/lib/support_readiness/calendly/organization_memberships.rb +67 -0
- data/lib/support_readiness/calendly/organizations.rb +123 -0
- data/lib/support_readiness/calendly/users.rb +105 -0
- data/lib/support_readiness/calendly.rb +16 -0
- data/lib/support_readiness/client.rb +88 -1
- data/lib/support_readiness/dates.rb +90 -0
- data/lib/support_readiness/gitlab/configuration.rb +0 -1
- data/lib/support_readiness/gitlab/groups.rb +35 -0
- data/lib/support_readiness/gitlab/jobs.rb +189 -0
- data/lib/support_readiness/gitlab/markdown.rb +37 -0
- data/lib/support_readiness/gitlab/merge_requests.rb +127 -0
- data/lib/support_readiness/gitlab/namespaces.rb +22 -0
- data/lib/support_readiness/gitlab/pipelines.rb +191 -0
- data/lib/support_readiness/gitlab/projects.rb +85 -1
- data/lib/support_readiness/gitlab/repositories.rb +174 -0
- data/lib/support_readiness/gitlab/users.rb +24 -0
- data/lib/support_readiness/gitlab.rb +4 -0
- data/lib/support_readiness/google_calendar/client.rb +59 -0
- data/lib/support_readiness/google_calendar/configuration.rb +39 -0
- data/lib/support_readiness/google_calendar/events.rb +169 -0
- data/lib/support_readiness/google_calendar.rb +14 -0
- data/lib/support_readiness/mailgun/bounces.rb +103 -0
- data/lib/support_readiness/mailgun/client.rb +65 -0
- data/lib/support_readiness/mailgun/configuration.rb +46 -0
- data/lib/support_readiness/mailgun/emails.rb +95 -0
- data/lib/support_readiness/mailgun.rb +15 -0
- data/lib/support_readiness/pagerduty/escalation_policies.rb +1 -1
- data/lib/support_readiness/pagerduty/schedules.rb +27 -3
- data/lib/support_readiness/pagerduty/services.rb +1 -1
- data/lib/support_readiness/pagerduty/users.rb +197 -0
- data/lib/support_readiness/pagerduty.rb +1 -0
- data/lib/support_readiness/repos/articles.rb +335 -0
- data/lib/support_readiness/repos/automations.rb +247 -0
- data/lib/support_readiness/repos/groups.rb +188 -0
- data/lib/support_readiness/repos/macros.rb +224 -0
- data/lib/support_readiness/repos/organization_fields.rb +193 -0
- data/lib/support_readiness/repos/sla_policies.rb +192 -0
- data/lib/support_readiness/repos/ticket_fields.rb +200 -0
- data/lib/support_readiness/repos/ticket_forms.rb +200 -0
- data/lib/support_readiness/repos/triggers.rb +255 -0
- data/lib/support_readiness/repos/user_fields.rb +201 -0
- data/lib/support_readiness/repos/views.rb +362 -0
- data/lib/support_readiness/repos.rb +22 -0
- data/lib/support_readiness/salesforce/accounts.rb +109 -0
- data/lib/support_readiness/salesforce/cases.rb +109 -0
- data/lib/support_readiness/salesforce/client.rb +64 -0
- data/lib/support_readiness/salesforce/configuration.rb +49 -0
- data/lib/support_readiness/salesforce/queries.rb +62 -0
- data/lib/support_readiness/salesforce.rb +16 -0
- data/lib/support_readiness/slack/client.rb +63 -0
- data/lib/support_readiness/slack/configuration.rb +43 -0
- data/lib/support_readiness/slack/messages.rb +37 -0
- data/lib/support_readiness/slack.rb +14 -0
- data/lib/support_readiness/zendesk/app_job_statuses.rb +140 -0
- data/lib/support_readiness/zendesk/apps.rb +209 -0
- data/lib/support_readiness/zendesk/automations.rb +1 -2
- data/lib/support_readiness/zendesk/macros.rb +1 -3
- data/lib/support_readiness/zendesk/organization_fields.rb +1 -1
- data/lib/support_readiness/zendesk/theme_job_statuses.rb +136 -0
- data/lib/support_readiness/zendesk/themes.rb +303 -0
- data/lib/support_readiness/zendesk/ticket_field_options.rb +110 -0
- data/lib/support_readiness/zendesk/ticket_fields.rb +85 -16
- data/lib/support_readiness/zendesk/ticket_forms.rb +65 -2
- data/lib/support_readiness/zendesk/tickets.rb +77 -0
- data/lib/support_readiness/zendesk/triggers.rb +1 -2
- data/lib/support_readiness/zendesk/user_field_options.rb +110 -0
- data/lib/support_readiness/zendesk/user_fields.rb +257 -0
- data/lib/support_readiness/zendesk/views.rb +49 -2
- data/lib/support_readiness/zendesk.rb +7 -0
- data/lib/support_readiness.rb +16 -0
- metadata +122 -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, :
|
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
|
data/lib/support_readiness.rb
CHANGED
@@ -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.
|
4
|
+
version: 1.0.13
|
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-
|
11
|
+
date: 2024-10-15 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,69 @@ 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/jobs.rb
|
250
|
+
- lib/support_readiness/gitlab/markdown.rb
|
251
|
+
- lib/support_readiness/gitlab/merge_requests.rb
|
172
252
|
- lib/support_readiness/gitlab/namespaces.rb
|
253
|
+
- lib/support_readiness/gitlab/pipelines.rb
|
173
254
|
- lib/support_readiness/gitlab/projects.rb
|
174
255
|
- lib/support_readiness/gitlab/repositories.rb
|
175
256
|
- lib/support_readiness/gitlab/users.rb
|
257
|
+
- lib/support_readiness/google_calendar.rb
|
258
|
+
- lib/support_readiness/google_calendar/client.rb
|
259
|
+
- lib/support_readiness/google_calendar/configuration.rb
|
260
|
+
- lib/support_readiness/google_calendar/events.rb
|
261
|
+
- lib/support_readiness/mailgun.rb
|
262
|
+
- lib/support_readiness/mailgun/bounces.rb
|
263
|
+
- lib/support_readiness/mailgun/client.rb
|
264
|
+
- lib/support_readiness/mailgun/configuration.rb
|
265
|
+
- lib/support_readiness/mailgun/emails.rb
|
176
266
|
- lib/support_readiness/pagerduty.rb
|
177
267
|
- lib/support_readiness/pagerduty/client.rb
|
178
268
|
- lib/support_readiness/pagerduty/configuration.rb
|
179
269
|
- lib/support_readiness/pagerduty/escalation_policies.rb
|
180
270
|
- lib/support_readiness/pagerduty/schedules.rb
|
181
271
|
- lib/support_readiness/pagerduty/services.rb
|
272
|
+
- lib/support_readiness/pagerduty/users.rb
|
182
273
|
- lib/support_readiness/redis.rb
|
274
|
+
- lib/support_readiness/repos.rb
|
275
|
+
- lib/support_readiness/repos/articles.rb
|
276
|
+
- lib/support_readiness/repos/automations.rb
|
277
|
+
- lib/support_readiness/repos/groups.rb
|
278
|
+
- lib/support_readiness/repos/macros.rb
|
279
|
+
- lib/support_readiness/repos/organization_fields.rb
|
280
|
+
- lib/support_readiness/repos/sla_policies.rb
|
281
|
+
- lib/support_readiness/repos/ticket_fields.rb
|
282
|
+
- lib/support_readiness/repos/ticket_forms.rb
|
283
|
+
- lib/support_readiness/repos/triggers.rb
|
284
|
+
- lib/support_readiness/repos/user_fields.rb
|
285
|
+
- lib/support_readiness/repos/views.rb
|
286
|
+
- lib/support_readiness/salesforce.rb
|
287
|
+
- lib/support_readiness/salesforce/accounts.rb
|
288
|
+
- lib/support_readiness/salesforce/cases.rb
|
289
|
+
- lib/support_readiness/salesforce/client.rb
|
290
|
+
- lib/support_readiness/salesforce/configuration.rb
|
291
|
+
- lib/support_readiness/salesforce/queries.rb
|
292
|
+
- lib/support_readiness/slack.rb
|
293
|
+
- lib/support_readiness/slack/client.rb
|
294
|
+
- lib/support_readiness/slack/configuration.rb
|
295
|
+
- lib/support_readiness/slack/messages.rb
|
183
296
|
- lib/support_readiness/zendesk.rb
|
297
|
+
- lib/support_readiness/zendesk/app_job_statuses.rb
|
298
|
+
- lib/support_readiness/zendesk/apps.rb
|
184
299
|
- lib/support_readiness/zendesk/articles.rb
|
185
300
|
- lib/support_readiness/zendesk/automations.rb
|
186
301
|
- lib/support_readiness/zendesk/client.rb
|
@@ -195,10 +310,15 @@ files:
|
|
195
310
|
- lib/support_readiness/zendesk/roles.rb
|
196
311
|
- lib/support_readiness/zendesk/search.rb
|
197
312
|
- lib/support_readiness/zendesk/sla_policies.rb
|
313
|
+
- lib/support_readiness/zendesk/theme_job_statuses.rb
|
314
|
+
- lib/support_readiness/zendesk/themes.rb
|
315
|
+
- lib/support_readiness/zendesk/ticket_field_options.rb
|
198
316
|
- lib/support_readiness/zendesk/ticket_fields.rb
|
199
317
|
- lib/support_readiness/zendesk/ticket_forms.rb
|
200
318
|
- lib/support_readiness/zendesk/tickets.rb
|
201
319
|
- lib/support_readiness/zendesk/triggers.rb
|
320
|
+
- lib/support_readiness/zendesk/user_field_options.rb
|
321
|
+
- lib/support_readiness/zendesk/user_fields.rb
|
202
322
|
- lib/support_readiness/zendesk/users.rb
|
203
323
|
- lib/support_readiness/zendesk/views.rb
|
204
324
|
homepage: https://gitlab.com/gitlab-support-readiness/gitlab_support_readiness_gem
|