in credentials/providers/cli_profile.go [35:58]
func (b *CLIProfileCredentialsProviderBuilder) Build() (provider *CLIProfileCredentialsProvider, err error) {
// 优先级:
// 1. 使用显示指定的 profileFile
// 2. 使用环境变量(ALIBABA_CLOUD_CONFIG_FILE)指定的 profileFile
// 3. 兜底使用 path.Join(homeDir, ".aliyun/config") 作为 profileFile
if b.provider.profileFile == "" {
b.provider.profileFile = os.Getenv("ALIBABA_CLOUD_CONFIG_FILE")
}
// 优先级:
// 1. 使用显示指定的 profileName
// 2. 使用环境变量(ALIBABA_CLOUD_PROFILE)制定的 profileName
// 3. 使用 CLI 配置中的当前 profileName
if b.provider.profileName == "" {
b.provider.profileName = os.Getenv("ALIBABA_CLOUD_PROFILE")
}
if strings.ToLower(os.Getenv("ALIBABA_CLOUD_CLI_PROFILE_DISABLED")) == "true" {
err = errors.New("the CLI profile is disabled")
return
}
provider = b.provider
return
}