github.com/aavshr/aws-sdk-go@v1.41.3/internal/shareddefaults/shared_config.go (about)

     1  package shareddefaults
     2  
     3  import (
     4  	"os"
     5  	"path/filepath"
     6  	"runtime"
     7  )
     8  
     9  // SharedCredentialsFilename returns the SDK's default file path
    10  // for the shared credentials file.
    11  //
    12  // Builds the shared config file path based on the OS's platform.
    13  //
    14  //   - Linux/Unix: $HOME/.aws/credentials
    15  //   - Windows: %USERPROFILE%\.aws\credentials
    16  func SharedCredentialsFilename() string {
    17  	return filepath.Join(UserHomeDir(), ".aws", "credentials")
    18  }
    19  
    20  // SharedConfigFilename returns the SDK's default file path for
    21  // the shared config file.
    22  //
    23  // Builds the shared config file path based on the OS's platform.
    24  //
    25  //   - Linux/Unix: $HOME/.aws/config
    26  //   - Windows: %USERPROFILE%\.aws\config
    27  func SharedConfigFilename() string {
    28  	return filepath.Join(UserHomeDir(), ".aws", "config")
    29  }
    30  
    31  // UserHomeDir returns the home directory for the user the process is
    32  // running under.
    33  func UserHomeDir() string {
    34  	if runtime.GOOS == "windows" { // Windows
    35  		return os.Getenv("USERPROFILE")
    36  	}
    37  
    38  	// *nix
    39  	return os.Getenv("HOME")
    40  }