func (s *S) TestSharedAuthNoCredentialsFile(c *C) { os.Clearenv() os.Setenv("AWS_PROFILE", "foo") os.Setenv("HOME", "/tmp") _, err := aws.SharedAuth() c.Assert(err, ErrorMatches, "Couldn't parse AWS credentials file") }
func (s *S) TestSharedAuthDefaultCredentials(c *C) { os.Clearenv() d, err := ioutil.TempDir("", "") if err != nil { panic(err) } defer os.RemoveAll(d) err = os.Mkdir(d+"/.aws", 0755) if err != nil { panic(err) } ioutil.WriteFile(d+"/.aws/credentials", []byte("[default]\naws_access_key_id = access\naws_secret_access_key = secret\n"), 0644) os.Setenv("HOME", d) auth, err := aws.SharedAuth() c.Assert(err, IsNil) c.Assert(auth, Equals, aws.Auth{SecretKey: "secret", AccessKey: "access"}) }
func (s *S) TestSharedAuthNoKeysInProfile(c *C) { os.Clearenv() os.Setenv("AWS_PROFILE", "bar") d, err := ioutil.TempDir("", "") if err != nil { panic(err) } defer os.RemoveAll(d) err = os.Mkdir(d+"/.aws", 0755) if err != nil { panic(err) } ioutil.WriteFile(d+"/.aws/credentials", []byte("[bar]\nawsaccesskeyid = AK.."), 0644) os.Setenv("HOME", d) _, err = aws.SharedAuth() c.Assert(err, ErrorMatches, "AWS_SECRET_ACCESS_KEY not found in credentials file") }
func (s *S) TestSharedAuthNoProfileInFile(c *C) { os.Clearenv() os.Setenv("AWS_PROFILE", "foo") d, err := ioutil.TempDir("", "") if err != nil { panic(err) } defer os.RemoveAll(d) err = os.Mkdir(d+"/.aws", 0755) if err != nil { panic(err) } ioutil.WriteFile(d+"/.aws/credentials", []byte("[bar]\n"), 0644) os.Setenv("HOME", d) _, err = aws.SharedAuth() c.Assert(err, ErrorMatches, "Couldn't find profile in AWS credentials file") }
func (s *S) TestSharedAuthNoHome(c *C) { os.Clearenv() os.Setenv("AWS_PROFILE", "foo") _, err := aws.SharedAuth() c.Assert(err, ErrorMatches, "Could not get HOME") }