shared_config.go (1117B)
1 package shareddefaults 2 3 import ( 4 "os" 5 "os/user" 6 "path/filepath" 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 // Ignore errors since we only care about Windows and *nix. 35 home, _ := os.UserHomeDir() 36 37 if len(home) > 0 { 38 return home 39 } 40 41 currUser, _ := user.Current() 42 if currUser != nil { 43 home = currUser.HomeDir 44 } 45 46 return home 47 }