in credentialproviderpackage/pkg/awscred/awscred.go [19:62]
func generateAwsConfigSecret(accessKeyPath, secretAccessKeyPath, sessionTokenPath, regionPath string) (string, error) {
accessKeyByte, err := os.ReadFile(accessKeyPath)
if err != nil {
return "", err
}
accessKey := strings.Trim(string(accessKeyByte), "'")
secretAccessKeyByte, err := os.ReadFile(secretAccessKeyPath)
if err != nil {
return "", err
}
secretAccessKey := strings.Trim(string(secretAccessKeyByte), "'")
regionByte, err := os.ReadFile(regionPath)
if err != nil {
return "", err
}
region := strings.Trim(string(regionByte), "'")
// check if sessionToken exists and read it
if _, err := os.Stat(sessionTokenPath); !os.IsNotExist(err) {
sessionTokenByte, err := os.ReadFile(sessionTokenPath)
if err != nil {
return "", err
}
sessionToken := strings.Trim(string(sessionTokenByte), "'")
return fmt.Sprintf(
`
[default]
aws_access_key_id=%s
aws_secret_access_key=%s
aws_session_token=%s
region=%s
`, accessKey, secretAccessKey, sessionToken, region), nil
}
return fmt.Sprintf(
`
[default]
aws_access_key_id=%s
aws_secret_access_key=%s
region=%s
`, accessKey, secretAccessKey, region), nil
}