@@ -19,6 +19,7 @@ import (
19
19
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation"
20
20
"github.com/hashicorp/terraform-provider-aws/internal/conns"
21
21
"github.com/hashicorp/terraform-provider-aws/internal/create"
22
+ "github.com/hashicorp/terraform-provider-aws/internal/errs/sdkdiag"
22
23
"github.com/hashicorp/terraform-provider-aws/internal/flex"
23
24
tftags "github.com/hashicorp/terraform-provider-aws/internal/tags"
24
25
"github.com/hashicorp/terraform-provider-aws/internal/tfresource"
@@ -204,6 +205,8 @@ func ResourceFleet() *schema.Resource {
204
205
}
205
206
206
207
func resourceFleetCreate (ctx context.Context , d * schema.ResourceData , meta interface {}) diag.Diagnostics {
208
+ var diags diag.Diagnostics
209
+
207
210
conn := meta .(* conns.AWSClient ).AppStreamConn (ctx )
208
211
input := & appstream.CreateFleetInput {
209
212
Name : aws .String (d .Get ("name" ).(string )),
@@ -292,7 +295,7 @@ func resourceFleetCreate(ctx context.Context, d *schema.ResourceData, meta inter
292
295
output , err = conn .CreateFleetWithContext (ctx , input )
293
296
}
294
297
if err != nil {
295
- return diag . Errorf ( "creating Appstream Fleet (%s): %s" , d .Get ("name" ).(string ), err )
298
+ return sdkdiag . AppendErrorf ( diags , "creating Appstream Fleet (%s): %s" , d .Get ("name" ).(string ), err )
296
299
}
297
300
298
301
d .SetId (aws .StringValue (output .Fleet .Name ))
@@ -302,37 +305,39 @@ func resourceFleetCreate(ctx context.Context, d *schema.ResourceData, meta inter
302
305
Name : aws .String (d .Id ()),
303
306
})
304
307
if err != nil {
305
- return diag . Errorf ( "starting Appstream Fleet (%s): %s" , d .Id (), err )
308
+ return sdkdiag . AppendErrorf ( diags , "starting Appstream Fleet (%s): %s" , d .Id (), err )
306
309
}
307
310
308
311
if _ , err = waitFleetStateRunning (ctx , conn , d .Id ()); err != nil {
309
- return diag . Errorf ( "waiting for Appstream Fleet (%s) to be running: %s" , d .Id (), err )
312
+ return sdkdiag . AppendErrorf ( diags , "waiting for Appstream Fleet (%s) to be running: %s" , d .Id (), err )
310
313
}
311
314
312
- return resourceFleetRead (ctx , d , meta )
315
+ return append ( diags , resourceFleetRead (ctx , d , meta ) ... )
313
316
}
314
317
315
318
func resourceFleetRead (ctx context.Context , d * schema.ResourceData , meta interface {}) diag.Diagnostics {
319
+ var diags diag.Diagnostics
320
+
316
321
conn := meta .(* conns.AWSClient ).AppStreamConn (ctx )
317
322
318
323
resp , err := conn .DescribeFleetsWithContext (ctx , & appstream.DescribeFleetsInput {Names : []* string {aws .String (d .Id ())}})
319
324
320
325
if ! d .IsNewResource () && tfawserr .ErrCodeEquals (err , appstream .ErrCodeResourceNotFoundException ) {
321
326
log .Printf ("[WARN] Appstream Fleet (%s) not found, removing from state" , d .Id ())
322
327
d .SetId ("" )
323
- return nil
328
+ return diags
324
329
}
325
330
326
331
if err != nil {
327
- return diag . Errorf ( "reading Appstream Fleet (%s): %s" , d .Id (), err )
332
+ return sdkdiag . AppendErrorf ( diags , "reading Appstream Fleet (%s): %s" , d .Id (), err )
328
333
}
329
334
330
335
if len (resp .Fleets ) == 0 {
331
- return diag . Errorf ( "reading Appstream Fleet (%s): %s" , d .Id (), "empty response" )
336
+ return sdkdiag . AppendErrorf ( diags , "reading Appstream Fleet (%s): %s" , d .Id (), "empty response" )
332
337
}
333
338
334
339
if len (resp .Fleets ) > 1 {
335
- return diag . Errorf ( "reading Appstream Fleet (%s): %s" , d .Id (), "multiple fleets found" )
340
+ return sdkdiag . AppendErrorf ( diags , "reading Appstream Fleet (%s): %s" , d .Id (), "multiple fleets found" )
336
341
}
337
342
338
343
fleet := resp .Fleets [0 ]
@@ -380,10 +385,12 @@ func resourceFleetRead(ctx context.Context, d *schema.ResourceData, meta interfa
380
385
d .Set ("vpc_config" , nil )
381
386
}
382
387
383
- return nil
388
+ return diags
384
389
}
385
390
386
391
func resourceFleetUpdate (ctx context.Context , d * schema.ResourceData , meta interface {}) diag.Diagnostics {
392
+ var diags diag.Diagnostics
393
+
387
394
conn := meta .(* conns.AWSClient ).AppStreamConn (ctx )
388
395
input := & appstream.UpdateFleetInput {
389
396
Name : aws .String (d .Id ()),
@@ -400,10 +407,10 @@ func resourceFleetUpdate(ctx context.Context, d *schema.ResourceData, meta inter
400
407
Name : aws .String (d .Id ()),
401
408
})
402
409
if err != nil {
403
- return diag . Errorf ( "stopping Appstream Fleet (%s): %s" , d .Id (), err )
410
+ return sdkdiag . AppendErrorf ( diags , "stopping Appstream Fleet (%s): %s" , d .Id (), err )
404
411
}
405
412
if _ , err = waitFleetStateStopped (ctx , conn , d .Id ()); err != nil {
406
- return diag . Errorf ( "waiting for Appstream Fleet (%s) to be stopped: %s" , d .Id (), err )
413
+ return sdkdiag . AppendErrorf ( diags , "waiting for Appstream Fleet (%s) to be stopped: %s" , d .Id (), err )
407
414
}
408
415
}
409
416
@@ -465,7 +472,7 @@ func resourceFleetUpdate(ctx context.Context, d *schema.ResourceData, meta inter
465
472
466
473
_ , err := conn .UpdateFleetWithContext (ctx , input )
467
474
if err != nil {
468
- return diag . Errorf ( "updating Appstream Fleet (%s): %s" , d .Id (), err )
475
+ return sdkdiag . AppendErrorf ( diags , "updating Appstream Fleet (%s): %s" , d .Id (), err )
469
476
}
470
477
471
478
// Start fleet workflow if stopped
@@ -474,18 +481,20 @@ func resourceFleetUpdate(ctx context.Context, d *schema.ResourceData, meta inter
474
481
Name : aws .String (d .Id ()),
475
482
})
476
483
if err != nil {
477
- return diag . Errorf ( "starting Appstream Fleet (%s): %s" , d .Id (), err )
484
+ return sdkdiag . AppendErrorf ( diags , "starting Appstream Fleet (%s): %s" , d .Id (), err )
478
485
}
479
486
480
487
if _ , err = waitFleetStateRunning (ctx , conn , d .Id ()); err != nil {
481
- return diag . Errorf ( "waiting for Appstream Fleet (%s) to be running: %s" , d .Id (), err )
488
+ return sdkdiag . AppendErrorf ( diags , "waiting for Appstream Fleet (%s) to be running: %s" , d .Id (), err )
482
489
}
483
490
}
484
491
485
- return resourceFleetRead (ctx , d , meta )
492
+ return append ( diags , resourceFleetRead (ctx , d , meta ) ... )
486
493
}
487
494
488
495
func resourceFleetDelete (ctx context.Context , d * schema.ResourceData , meta interface {}) diag.Diagnostics {
496
+ var diags diag.Diagnostics
497
+
489
498
conn := meta .(* conns.AWSClient ).AppStreamConn (ctx )
490
499
491
500
// Stop fleet workflow
@@ -494,11 +503,11 @@ func resourceFleetDelete(ctx context.Context, d *schema.ResourceData, meta inter
494
503
Name : aws .String (d .Id ()),
495
504
})
496
505
if err != nil {
497
- return diag . Errorf ( "stopping Appstream Fleet (%s): %s" , d .Id (), err )
506
+ return sdkdiag . AppendErrorf ( diags , "stopping Appstream Fleet (%s): %s" , d .Id (), err )
498
507
}
499
508
500
509
if _ , err = waitFleetStateStopped (ctx , conn , d .Id ()); err != nil {
501
- return diag . Errorf ( "waiting for Appstream Fleet (%s) to be stopped: %s" , d .Id (), err )
510
+ return sdkdiag . AppendErrorf ( diags , "waiting for Appstream Fleet (%s) to be stopped: %s" , d .Id (), err )
502
511
}
503
512
504
513
log .Printf ("[DEBUG] Deleting AppStream Fleet: (%s)" , d .Id ())
@@ -507,14 +516,14 @@ func resourceFleetDelete(ctx context.Context, d *schema.ResourceData, meta inter
507
516
})
508
517
509
518
if tfawserr .ErrCodeEquals (err , appstream .ErrCodeResourceNotFoundException ) {
510
- return nil
519
+ return diags
511
520
}
512
521
513
522
if err != nil {
514
- return diag . Errorf ( "deleting Appstream Fleet (%s): %s" , d .Id (), err )
523
+ return sdkdiag . AppendErrorf ( diags , "deleting Appstream Fleet (%s): %s" , d .Id (), err )
515
524
}
516
525
517
- return nil
526
+ return diags
518
527
}
519
528
520
529
func resourceFleetCustDiff (_ context.Context , diff * schema.ResourceDiff , meta interface {}) error {
0 commit comments