@@ -2,8 +2,6 @@ package github
22
33import (
44 "context"
5- "errors"
6- "strconv"
75
86 "github.com/hashicorp/terraform-plugin-log/tflog"
97 "github.com/hashicorp/terraform-plugin-sdk/v2/diag"
@@ -97,7 +95,7 @@ func resourceGithubTeamSettingsCreate(ctx context.Context, d *schema.ResourceDat
9795 })
9896 // Given a string that is either a team id or team slug, return the
9997 // get the basic details of the team including node_id and slug
100- nodeId , slug , err := resolveTeamIDs (teamIDString , meta , ctx )
98+ nodeId , slug , err := resolveTeamIDs (ctx , meta , teamIDString )
10199 if err != nil {
102100 return diag .FromErr (err )
103101 }
@@ -291,7 +289,7 @@ func resourceGithubTeamSettingsDelete(ctx context.Context, d *schema.ResourceDat
291289}
292290
293291func resourceGithubTeamSettingsImport (ctx context.Context , d * schema.ResourceData , meta any ) ([]* schema.ResourceData , error ) {
294- nodeId , slug , err := resolveTeamIDs (d . Id () , meta .(* Owner ), ctx )
292+ nodeId , slug , err := resolveTeamIDs (ctx , meta .(* Owner ), d . Id () )
295293 if err != nil {
296294 return nil , err
297295 }
@@ -308,34 +306,12 @@ func resourceGithubTeamSettingsImport(ctx context.Context, d *schema.ResourceDat
308306 return []* schema.ResourceData {d }, nil
309307}
310308
311- func resolveTeamIDs (idOrSlug string , meta * Owner , ctx context.Context ) (nodeId , slug string , err error ) {
312- client := meta .v3client
313- orgName := meta .name
314- orgId := meta .id
315-
316- teamId , parseIntErr := strconv .ParseInt (idOrSlug , 10 , 64 )
317- if parseIntErr != nil {
318- // The given id not an integer, assume it is a team slug
319- team , _ , slugErr := client .Teams .GetTeamBySlug (ctx , orgName , idOrSlug )
320- if slugErr != nil {
321- return "" , "" , errors .New (parseIntErr .Error () + slugErr .Error ())
322- }
323- return team .GetNodeID (), team .GetSlug (), nil
324- } else {
325- // The given id is an integer, assume it is a team id
326- team , _ , teamIdErr := client .Teams .GetTeamByID (ctx , orgId , teamId )
327- if teamIdErr != nil {
328- // There isn't a team with the given ID, assume it is a teamslug
329- team , _ , slugErr := client .Teams .GetTeamBySlug (ctx , orgName , idOrSlug )
330- if slugErr != nil {
331- return "" , "" , errors .New (teamIdErr .Error () + slugErr .Error ())
332- }
333-
334- return team .GetNodeID (), team .GetSlug (), nil
335- }
336-
337- return team .GetNodeID (), team .GetSlug (), nil
309+ func resolveTeamIDs (ctx context.Context , meta * Owner , idOrSlug string ) (nodeId , slug string , err error ) {
310+ team , err := getTeam (ctx , meta , idOrSlug )
311+ if err != nil {
312+ return "" , "" , err
338313 }
314+ return team .GetNodeID (), team .GetSlug (), nil
339315}
340316
341317// resolveNotify returns the notify value from the top-level attribute or the
0 commit comments