INNER CODE UNIT · Go
New
lucagrulla/cw · cloudwatch/client.go:16
func New(awsEndpointURL *string, awsProfile *string, awsRegion *string, log *log.Logger) *cloudwatchlogs.Client {
//workaround to figure out the user actual home dir within a SNAP (rather than the sandboxed one)
//and access the .aws folder in its default location
if os.Getenv("SNAP_INSTANCE_NAME") != "" {
log.Printf("Snap Identified")
realUserHomeDir := fmt.Sprintf("/home/%s", os.Getenv("USER"))
if os.Getenv("AWS_SHARED_CREDENTIALS_FILE") == "" {
credentialsPath := fmt.Sprintf("%s/.aws/credentials", realUserHomeDir)
log.Printf("No custom credentials file location. Overriding to %s", credentialsPath)
os.Setenv("AWS_SHARED_CREDENTIALS_FILE", credentialsPath)
}
if os.Getenv("AWS_CONFIG_FILE") == "" {
configPath := fmt.Sprintf("%s/.aws/config", realUserHomeDir)
log.Printf("No custom config file location. Overriding to %s", configPath)
os.Setenv("AWS_CONFIG_FILE", configPath)
}
}