From 3c578649ab7cba928c00e7896b09181eee8e5834 Mon Sep 17 00:00:00 2001 From: Abhishek Tiwari Date: Wed, 4 Dec 2024 20:27:24 +0000 Subject: [PATCH] feat: remove adding roles in requirements of metadata, but honor existing roles --- cli/bpmetadata/cmd.go | 3 +-- cli/bpmetadata/tfconfig.go | 18 ++++-------------- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/cli/bpmetadata/cmd.go b/cli/bpmetadata/cmd.go index 6375f86b23d..cda7064e398 100644 --- a/cli/bpmetadata/cmd.go +++ b/cli/bpmetadata/cmd.go @@ -260,10 +260,9 @@ func CreateBlueprintMetadata(bpPath string, bpMetadataObj *BlueprintMetadata) (* mergeExistingOutputTypes(bpMetadataObj.Spec.Interfaces, existingInterfaces) // get blueprint requirements - rolesCfgPath := path.Join(repoDetails.Source.BlueprintRootPath, tfRolesFileName) svcsCfgPath := path.Join(repoDetails.Source.BlueprintRootPath, tfServicesFileName) versionsCfgPath := path.Join(bpPath, tfVersionsFileName) - requirements, err := getBlueprintRequirements(rolesCfgPath, svcsCfgPath, versionsCfgPath) + requirements, err := getBlueprintRequirements(bpMetadataObj.Spec.Requirements.Roles, svcsCfgPath, versionsCfgPath) if err != nil { Log.Info("skipping blueprint requirements since roles and/or services configurations were not found as per https://tinyurl.com/tf-iam and https://tinyurl.com/tf-services") } else { diff --git a/cli/bpmetadata/tfconfig.go b/cli/bpmetadata/tfconfig.go index caccbfe2fbd..abd3431ec8f 100644 --- a/cli/bpmetadata/tfconfig.go +++ b/cli/bpmetadata/tfconfig.go @@ -340,23 +340,13 @@ func getBlueprintOutput(modOut *tfconfig.Output) *BlueprintOutput { // getBlueprintRequirements gets the services and roles associated // with the blueprint -func getBlueprintRequirements(rolesConfigPath, servicesConfigPath, versionsConfigPath string) (*BlueprintRequirements, error) { +func getBlueprintRequirements(roles []*BlueprintRoles, servicesConfigPath, versionsConfigPath string) (*BlueprintRequirements, error) { //parse blueprint roles p := hclparse.NewParser() - rolesFile, diags := p.ParseHCLFile(rolesConfigPath) - err := hasHclErrors(diags) - if err != nil { - return nil, err - } - - r, err := parseBlueprintRoles(rolesFile) - if err != nil { - return nil, err - } //parse blueprint services servicesFile, diags := p.ParseHCLFile(servicesConfigPath) - err = hasHclErrors(diags) + err := hasHclErrors(diags) if err != nil { return nil, err } @@ -370,7 +360,7 @@ func getBlueprintRequirements(rolesConfigPath, servicesConfigPath, versionsConfi if !versionCfgFileExists { return &BlueprintRequirements{ - Roles: r, + Roles: roles, Services: s, }, nil } @@ -388,7 +378,7 @@ func getBlueprintRequirements(rolesConfigPath, servicesConfigPath, versionsConfi } return &BlueprintRequirements{ - Roles: r, + Roles: roles, Services: s, ProviderVersions: v, }, nil