Skip to content

Commit c6acf37

Browse files
committed
Updates generated tag resources
1 parent 2817bc7 commit c6acf37

File tree

5 files changed

+85
-80
lines changed

5 files changed

+85
-80
lines changed

internal/generate/tagresource/resource.tmpl

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
1111
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
1212
"github.com/hashicorp/terraform-provider-aws/internal/conns"
13+
"github.com/hashicorp/terraform-provider-aws/internal/errs/sdkdiag"
1314
tftags "github.com/hashicorp/terraform-provider-aws/internal/tags"
1415
"github.com/hashicorp/terraform-provider-aws/internal/tfresource"
1516
)
@@ -45,7 +46,7 @@ func ResourceTag() *schema.Resource {
4546
}
4647
}
4748

48-
func resourceTagCreate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { {{ if not (eq .ServicePackage "ec2") }}// nosemgrep:ci.semgrep.tags.calling-UpdateTags-in-resource-create{{- end }}
49+
func resourceTagCreate(ctx context.Context, d *schema.ResourceData, meta interface{}) (diags diag.Diagnostics) { {{ if not (eq .ServicePackage "ec2") }}// nosemgrep:ci.semgrep.tags.calling-UpdateTags-in-resource-create{{- end }}
4950
conn := meta.(*conns.AWSClient).{{ .AWSServiceUpper }}Conn(ctx)
5051

5152
identifier := d.Get("{{ .IDAttribName }}").(string)
@@ -57,67 +58,67 @@ func resourceTagCreate(ctx context.Context, d *schema.ResourceData, meta interfa
5758
{{- else }}
5859
if err := {{ .UpdateTagsFunc }}(ctx, conn, identifier, nil, map[string]string{key: value}); err != nil {
5960
{{- end }}
60-
return diag.Errorf("creating %s resource (%s) tag (%s): %s", {{ .ServicePackage }}.ServiceID, identifier, key, err)
61+
return sdkdiag.AppendErrorf(diags, "creating %s resource (%s) tag (%s): %s", {{ .ServicePackage }}.ServiceID, identifier, key, err)
6162
}
6263

6364
d.SetId(tftags.SetResourceID(identifier, key))
6465

65-
return resourceTagRead(ctx, d, meta)
66+
return append(diags, resourceTagRead(ctx, d, meta)...)
6667
}
6768

68-
func resourceTagRead(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
69+
func resourceTagRead(ctx context.Context, d *schema.ResourceData, meta interface{}) (diags diag.Diagnostics) {
6970
conn := meta.(*conns.AWSClient).{{ .AWSServiceUpper }}Conn(ctx)
7071
identifier, key, err := tftags.GetResourceID(d.Id())
7172

7273
if err != nil {
73-
return diag.FromErr(err)
74+
return sdkdiag.AppendFromErr(diags, err)
7475
}
7576

7677
value, err := {{ .GetTagFunc }}(ctx, conn, identifier, key)
7778

7879
if !d.IsNewResource() && tfresource.NotFound(err) {
7980
log.Printf("[WARN] %s resource (%s) tag (%s) not found, removing from state", {{ .ServicePackage }}.ServiceID, identifier, key)
8081
d.SetId("")
81-
return nil
82+
return diags
8283
}
8384

8485
if err != nil {
85-
return diag.Errorf("reading %s resource (%s) tag (%s): %s", {{ .ServicePackage }}.ServiceID, identifier, key, err)
86+
return sdkdiag.AppendErrorf(diags, "reading %s resource (%s) tag (%s): %s", {{ .ServicePackage }}.ServiceID, identifier, key, err)
8687
}
8788

8889
d.Set("{{ .IDAttribName }}", identifier)
8990
d.Set("key", key)
9091
d.Set("value", value)
9192

92-
return nil
93+
return diags
9394
}
9495

95-
func resourceTagUpdate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
96+
func resourceTagUpdate(ctx context.Context, d *schema.ResourceData, meta interface{}) (diags diag.Diagnostics) {
9697
conn := meta.(*conns.AWSClient).{{ .AWSServiceUpper }}Conn(ctx)
9798
identifier, key, err := tftags.GetResourceID(d.Id())
9899

99100
if err != nil {
100-
return diag.FromErr(err)
101+
return sdkdiag.AppendFromErr(diags, err)
101102
}
102103

103104
if err := {{ .UpdateTagsFunc }}(ctx, conn, identifier, nil, map[string]string{key: d.Get("value").(string)}); err != nil {
104-
return diag.Errorf("updating %s resource (%s) tag (%s): %s", {{ .ServicePackage }}.ServiceID, identifier, key, err)
105+
return sdkdiag.AppendErrorf(diags, "updating %s resource (%s) tag (%s): %s", {{ .ServicePackage }}.ServiceID, identifier, key, err)
105106
}
106107

107-
return resourceTagRead(ctx, d, meta)
108+
return append(diags, resourceTagRead(ctx, d, meta)...)
108109
}
109110

110-
func resourceTagDelete(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
111+
func resourceTagDelete(ctx context.Context, d *schema.ResourceData, meta interface{}) (diags diag.Diagnostics) {
111112
conn := meta.(*conns.AWSClient).{{ .AWSServiceUpper }}Conn(ctx)
112113
identifier, key, err := tftags.GetResourceID(d.Id())
113114

114115
if err != nil {
115-
return diag.FromErr(err)
116+
return sdkdiag.AppendFromErr(diags, err)
116117
}
117118

118119
if err := {{ .UpdateTagsFunc }}(ctx, conn, identifier, map[string]string{key: d.Get("value").(string)}, nil); err != nil {
119-
return diag.Errorf("deleting %s resource (%s) tag (%s): %s", {{ .ServicePackage }}.ServiceID, identifier, key, err)
120+
return sdkdiag.AppendErrorf(diags, "deleting %s resource (%s) tag (%s): %s", {{ .ServicePackage }}.ServiceID, identifier, key, err)
120121
}
121122

122-
return nil
123+
return diags
123124
}

internal/service/dynamodb/tag_gen.go

Lines changed: 17 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/service/ec2/tag_gen.go

Lines changed: 17 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/service/ecs/tag_gen.go

Lines changed: 17 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)