@@ -76,16 +76,16 @@ func (c *Client) GetUser(email string) (*User, error) {
76
76
77
77
resp , err := c .Get (path )
78
78
if err != nil {
79
- return nil , err
79
+ return nil , fmt . Errorf ( "Error getting user: %s" , err )
80
80
}
81
81
body , err := io .ReadAll (resp .Body )
82
82
if err != nil {
83
- return nil , err
83
+ return nil , fmt . Errorf ( "Error reading response body: %s" , err )
84
84
}
85
85
var users Users
86
86
err = json .Unmarshal (body , & users )
87
87
if err != nil {
88
- return nil , err
88
+ return nil , fmt . Errorf ( "Error decoding response: %s" , err )
89
89
}
90
90
if len (users .Users ) != 1 {
91
91
return nil , fmt .Errorf ("Unexpected number of users returned (%d)" , len (users .Users ))
@@ -107,25 +107,25 @@ func (c *Client) CreateTeam(team Team) (*Team, error) {
107
107
108
108
body , err := json .Marshal (team )
109
109
if err != nil {
110
- return nil , err
110
+ return nil , fmt . Errorf ( "Error encoding request: %s" , err )
111
111
}
112
112
113
113
resp , err := c .Post (path , body )
114
114
if err != nil {
115
- return nil , err
115
+ return nil , fmt . Errorf ( "Error posting request: %s" , err )
116
116
}
117
117
118
118
respBody , err := io .ReadAll (resp .Body )
119
119
if err != nil {
120
- return nil , err
120
+ return nil , fmt . Errorf ( "Error reading response body: %s" , err )
121
121
}
122
122
var created Team
123
123
err = json .Unmarshal (respBody , & created )
124
124
if err != nil {
125
- return nil , err
125
+ return nil , fmt . Errorf ( "Error decoding response: %s" , err )
126
126
}
127
127
if created .ID == "" {
128
- return nil , errors . New ("Didn't create a team??" + string (body ))
128
+ return nil , fmt . Errorf ("Didn't create a team; response was: %s" , string (respBody ))
129
129
}
130
130
131
131
return & created , nil
@@ -136,20 +136,20 @@ func (c *Client) GetTeam(id string) (*Team, error) {
136
136
137
137
resp , err := c .Get (path )
138
138
if err != nil {
139
- return nil , err
139
+ return nil , fmt . Errorf ( "Error getting team: %s" , err )
140
140
}
141
141
142
142
respBody , err := io .ReadAll (resp .Body )
143
143
if err != nil {
144
- return nil , err
144
+ return nil , fmt . Errorf ( "Error reading response body: %s" , err )
145
145
}
146
146
var team Team
147
147
err = json .Unmarshal (respBody , & team )
148
148
if err != nil {
149
- return nil , err
149
+ return nil , fmt . Errorf ( "Error decoding response: %s" , err )
150
150
}
151
151
if team .ID == "" {
152
- return nil , errors . New ("Didn't find a Team" )
152
+ return nil , fmt . Errorf ("Didn't find a Team; response was: %s" , string ( respBody ) )
153
153
}
154
154
155
155
return & team , nil
@@ -174,27 +174,27 @@ func (c *Client) UpdateTeam(team Team) (*Team, error) {
174
174
}
175
175
body , err := json .Marshal (update )
176
176
if err != nil {
177
- return nil , err
177
+ return nil , fmt . Errorf ( "Error encoding request: %s" , err )
178
178
}
179
179
180
180
resp , err := c .Patch (path , body )
181
181
if err != nil {
182
- return nil , err
183
- }
184
- if resp .StatusCode != http .StatusOK {
185
- return nil , errors .New ("Failed to update team" )
182
+ return nil , fmt .Errorf ("Error patching request: %s" , err )
186
183
}
187
184
respBody , err := io .ReadAll (resp .Body )
188
185
if err != nil {
189
- return nil , err
186
+ return nil , fmt .Errorf ("Error reading response body: %s" , err )
187
+ }
188
+ if resp .StatusCode != http .StatusOK {
189
+ return nil , fmt .Errorf ("Failed to update Team; response was: %s" , string (respBody ))
190
190
}
191
191
var updated Team
192
192
err = json .Unmarshal (respBody , & updated )
193
193
if err != nil {
194
- return nil , err
194
+ return nil , fmt . Errorf ( "Error decoding response: %s" , err )
195
195
}
196
196
if updated .ID == "" {
197
- return nil , errors . New ("Didn't create a team??" + string (body ))
197
+ return nil , fmt . Errorf ("Didn't get a Team ID; response was: %s" , string (respBody ))
198
198
}
199
199
200
200
return & updated , nil
@@ -212,25 +212,25 @@ func (c *Client) AddTeamOwners(id string, owners []string) (*Team, error) {
212
212
213
213
body , err := json .Marshal (update )
214
214
if err != nil {
215
- return nil , err
215
+ return nil , fmt . Errorf ( "Error encoding request: %s" , err )
216
216
}
217
217
218
218
resp , err := c .Post (path , body )
219
219
if err != nil {
220
- return nil , err
220
+ return nil , fmt . Errorf ( "Error posting request: %s" , err )
221
221
}
222
222
223
223
respBody , err := io .ReadAll (resp .Body )
224
224
if err != nil {
225
- return nil , err
225
+ return nil , fmt . Errorf ( "Error reading response body: %s" , err )
226
226
}
227
227
var updated Team
228
228
err = json .Unmarshal (respBody , & updated )
229
229
if err != nil {
230
- return nil , err
230
+ return nil , fmt . Errorf ( "Error decoding response: %s" , err )
231
231
}
232
232
if updated .ID == "" {
233
- return nil , errors . New ("Didn't create a team??" + string (body ))
233
+ return nil , fmt . Errorf ("Didn't get a Team ID; response was: %s" , string (respBody ))
234
234
}
235
235
236
236
return & updated , nil
@@ -244,25 +244,25 @@ func (c *Client) RemoveTeamOwners(id string, owners []string) (*Team, error) {
244
244
245
245
body , err := json .Marshal (update )
246
246
if err != nil {
247
- return nil , err
247
+ return nil , fmt . Errorf ( "Error encoding request: %s" , err )
248
248
}
249
249
250
250
resp , err := c .Delete (path , body )
251
251
if err != nil {
252
- return nil , err
252
+ return nil , fmt . Errorf ( "Error with delete request: %s" , err )
253
253
}
254
254
255
255
respBody , err := io .ReadAll (resp .Body )
256
256
if err != nil {
257
- return nil , err
257
+ return nil , fmt . Errorf ( "Error reading response body: %s" , err )
258
258
}
259
259
var updated Team
260
260
err = json .Unmarshal (respBody , & updated )
261
261
if err != nil {
262
- return nil , err
262
+ return nil , fmt . Errorf ( "Error decoding response: %s" , err )
263
263
}
264
264
if updated .ID == "" {
265
- return nil , errors . New ("Didn't create a team??" + string (body ))
265
+ return nil , fmt . Errorf ("Didn't get a Team ID; response was: %s" , string (respBody ))
266
266
}
267
267
268
268
return & updated , nil
@@ -273,12 +273,14 @@ func (c *Client) DeleteTeam(id string) error {
273
273
274
274
resp , err := c .Delete (path , nil )
275
275
if err != nil {
276
- return err
276
+ return fmt . Errorf ( "Error with delete request: %s" , err )
277
277
}
278
278
// https://developer.venafi.com/tlsprotectcloud/reference/teams_delete says 204, but we get a 200 back
279
279
// so accept either, in case behaviour gets fixed to match the docs in the future
280
280
if resp .StatusCode != http .StatusNoContent && resp .StatusCode != http .StatusOK {
281
- return errors .New ("Failed to delete team" )
281
+ // returning an error here anyway, no more information if we couldn't read the body
282
+ respBody , _ := io .ReadAll (resp .Body )
283
+ return fmt .Errorf ("Failed to delete team; response was: %s" , string (respBody ))
282
284
}
283
285
284
286
return nil
@@ -301,25 +303,25 @@ func (c *Client) CreateServiceAccount(sa ServiceAccount) (*ServiceAccount, error
301
303
302
304
body , err := json .Marshal (sa )
303
305
if err != nil {
304
- return nil , err
306
+ return nil , fmt . Errorf ( "Error encoding request: %s" , err )
305
307
}
306
308
307
309
resp , err := c .Post (path , body )
308
310
if err != nil {
309
- return nil , err
311
+ return nil , fmt . Errorf ( "Error posting request: %s" , err )
310
312
}
311
313
312
314
respBody , err := io .ReadAll (resp .Body )
313
315
if err != nil {
314
- return nil , err
316
+ return nil , fmt . Errorf ( "Error reading response body: %s" , err )
315
317
}
316
318
var created ServiceAccount
317
319
err = json .Unmarshal (respBody , & created )
318
320
if err != nil {
319
- return nil , err
321
+ return nil , fmt . Errorf ( "Error decoding response: %s" , err )
320
322
}
321
323
if created .ID == "" {
322
- return nil , errors . New ("Didn't create a Service Account??" + string (body ))
324
+ return nil , fmt . Errorf ("Didn't create a service account; response was: %s" , string (respBody ))
323
325
}
324
326
325
327
return & created , nil
@@ -330,20 +332,20 @@ func (c *Client) GetServiceAccount(id string) (*ServiceAccount, error) {
330
332
331
333
resp , err := c .Get (path )
332
334
if err != nil {
333
- return nil , err
335
+ return nil , fmt . Errorf ( "Error getting service account: %s" , err )
334
336
}
335
337
336
338
respBody , err := io .ReadAll (resp .Body )
337
339
if err != nil {
338
- return nil , err
340
+ return nil , fmt . Errorf ( "Error reading response body: %s" , err )
339
341
}
340
342
var sa ServiceAccount
341
343
err = json .Unmarshal (respBody , & sa )
342
344
if err != nil {
343
- return nil , err
345
+ return nil , fmt . Errorf ( "Error decoding response: %s" , err )
344
346
}
345
347
if sa .ID == "" {
346
- return nil , errors . New ("Didn't find a Service Account" )
348
+ return nil , fmt . Errorf ("Didn't find a Service Account; response was: %s" , string ( respBody ) )
347
349
}
348
350
349
351
return & sa , nil
@@ -359,15 +361,17 @@ func (c *Client) UpdateServiceAccount(sa ServiceAccount) error {
359
361
360
362
body , err := json .Marshal (sa )
361
363
if err != nil {
362
- return err
364
+ return fmt . Errorf ( "Error encoding request: %s" , err )
363
365
}
364
366
365
367
resp , err := c .Patch (path , body )
366
368
if err != nil {
367
- return err
369
+ return fmt . Errorf ( "Error patching request: %s" , err )
368
370
}
369
371
if resp .StatusCode != http .StatusNoContent {
370
- return errors .New ("Failed to update service account" )
372
+ // returning an error here anyway, no more information if we couldn't read the body
373
+ respBody , _ := io .ReadAll (resp .Body )
374
+ return fmt .Errorf ("Failed to update Service Account; response was: %s" , string (respBody ))
371
375
}
372
376
373
377
return nil
@@ -378,10 +382,12 @@ func (c *Client) DeleteServiceAccount(id string) error {
378
382
379
383
resp , err := c .Delete (path , nil )
380
384
if err != nil {
381
- return err
385
+ return fmt . Errorf ( "Error with delete request: %s" , err )
382
386
}
383
387
if resp .StatusCode != http .StatusNoContent {
384
- return errors .New ("Failed to delete service account" )
388
+ // returning an error here anyway, no more information if we couldn't read the body
389
+ respBody , _ := io .ReadAll (resp .Body )
390
+ return fmt .Errorf ("Failed to delete Service Account; response was: %s" , string (respBody ))
385
391
}
386
392
387
393
return nil
0 commit comments