@@ -45,6 +45,7 @@ var ApiKeyConfigAttributes = [5]string{globalvar.UserOcidAttrName, globalvar.Fin
4545var ociProvider * schema.Provider
4646
4747var TerraformCLIVersion = globalvar .UnknownTerraformCLIVersion
48+ var schemaMultiEnvDefaultFuncVar = schema .MultiEnvDefaultFunc
4849var AvoidWaitingForDeleteTarget bool
4950
5051// creating an interface to aid in unit tests
@@ -569,12 +570,23 @@ func BuildHttpClient() (httpClient *http.Client) {
569570 return
570571}
571572
573+ func UserAgentFromEnv () string {
574+
575+ userAgentFromEnv , err := schemaMultiEnvDefaultFuncVar ([]string {globalvar .UserAgentProviderNameEnv , globalvar .UserAgentSDKNameEnv , globalvar .UserAgentTerraformNameEnv }, globalvar .DefaultUserAgentProviderName )()
576+
577+ if err != nil {
578+ log .Printf ("[ERROR] Error while fetching user agent from env var: %v" , err )
579+ return globalvar .DefaultUserAgentProviderName
580+ }
581+ return userAgentFromEnv .(string )
582+ }
583+
572584func BuildConfigureClientFn (configProvider oci_common.ConfigurationProvider , httpClient * http.Client ) (tf_client.ConfigureClient , error ) {
573585
574586 if ociProvider != nil && len (ociProvider .TerraformVersion ) > 0 {
575587 TerraformCLIVersion = ociProvider .TerraformVersion
576588 }
577- userAgentProviderName := utils . GetEnvSettingWithDefault ( globalvar . UserAgentProviderNameEnv , globalvar . DefaultUserAgentProviderName )
589+ userAgentProviderName := UserAgentFromEnv ( )
578590 userAgent := fmt .Sprintf (globalvar .UserAgentFormatter , oci_common .Version (), runtime .Version (), runtime .GOOS , runtime .GOARCH , sdkMeta .SDKVersionString (), TerraformCLIVersion , userAgentProviderName , globalvar .Version )
579591
580592 useOboToken , err := strconv .ParseBool (utils .GetEnvSettingWithDefault ("use_obo_token" , "false" ))
0 commit comments