Skip to content

Commit 17f777f

Browse files
committed
Remove Read calls from Update and Create
Signed-off-by: Timo Sand <[email protected]>
1 parent 89e9771 commit 17f777f

1 file changed

Lines changed: 18 additions & 5 deletions

File tree

github/resource_github_branch_default.go

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ func resourceGithubBranchDefaultCreate(ctx context.Context, d *schema.ResourceDa
7070
"rename": rename,
7171
})
7272

73-
repository, _, err := client.Repositories.Get(ctx, owner, repoName)
73+
repository, resp, err := client.Repositories.Get(ctx, owner, repoName)
7474
if err != nil {
7575
return diag.FromErr(err)
7676
}
@@ -101,10 +101,15 @@ func resourceGithubBranchDefaultCreate(ctx context.Context, d *schema.ResourceDa
101101

102102
d.SetId(repoName)
103103

104+
if err := d.Set("etag", resp.Header.Get("ETag")); err != nil {
105+
return diag.FromErr(err)
106+
}
107+
104108
tflog.Trace(ctx, "Finished creating default branch resource", map[string]any{
105109
"resource_id": d.Id(),
106110
})
107-
return resourceGithubBranchDefaultRead(ctx, d, meta)
111+
112+
return nil
108113
}
109114

110115
func resourceGithubBranchDefaultRead(ctx context.Context, d *schema.ResourceData, m any) diag.Diagnostics {
@@ -183,12 +188,15 @@ func resourceGithubBranchDefaultUpdate(ctx context.Context, d *schema.ResourceDa
183188
"rename": rename,
184189
})
185190

191+
var etag string
192+
186193
if rename {
187194
tflog.Debug(ctx, "Renaming branch to new default")
188-
repository, _, err := client.Repositories.Get(ctx, owner, repoName)
195+
repository, resp, err := client.Repositories.Get(ctx, owner, repoName)
189196
if err != nil {
190197
return diag.FromErr(err)
191198
}
199+
etag = resp.Header.Get("ETag")
192200
if _, _, err := client.Repositories.RenameBranch(ctx, owner, repoName, repository.GetDefaultBranch(), defaultBranch); err != nil {
193201
return diag.FromErr(err)
194202
}
@@ -198,13 +206,18 @@ func resourceGithubBranchDefaultUpdate(ctx context.Context, d *schema.ResourceDa
198206
DefaultBranch: github.Ptr(defaultBranch),
199207
}
200208

201-
if _, _, err := client.Repositories.Edit(ctx, owner, repoName, repository); err != nil {
209+
if _, resp, err := client.Repositories.Edit(ctx, owner, repoName, repository); err != nil {
202210
return diag.FromErr(err)
211+
} else {
212+
etag = resp.Header.Get("ETag")
203213
}
204214
}
215+
if err := d.Set("etag", etag); err != nil {
216+
return diag.FromErr(err)
217+
}
205218

206219
tflog.Trace(ctx, "Finished updating default branch resource")
207-
return resourceGithubBranchDefaultRead(ctx, d, meta)
220+
return nil
208221
}
209222

210223
func resourceGithubBranchDefaultDelete(ctx context.Context, d *schema.ResourceData, m any) diag.Diagnostics {

0 commit comments

Comments
 (0)