github.com/portworx/docker@v1.12.1/api/client/credentials.go (about) 1 package client 2 3 import ( 4 "github.com/docker/docker/cliconfig/configfile" 5 "github.com/docker/docker/cliconfig/credentials" 6 "github.com/docker/engine-api/types" 7 ) 8 9 // GetCredentials loads the user credentials from a credentials store. 10 // The store is determined by the config file settings. 11 func GetCredentials(c *configfile.ConfigFile, serverAddress string) (types.AuthConfig, error) { 12 s := LoadCredentialsStore(c) 13 return s.Get(serverAddress) 14 } 15 16 // GetAllCredentials loads all credentials from a credentials store. 17 // The store is determined by the config file settings. 18 func GetAllCredentials(c *configfile.ConfigFile) (map[string]types.AuthConfig, error) { 19 s := LoadCredentialsStore(c) 20 return s.GetAll() 21 } 22 23 // StoreCredentials saves the user credentials in a credentials store. 24 // The store is determined by the config file settings. 25 func StoreCredentials(c *configfile.ConfigFile, auth types.AuthConfig) error { 26 s := LoadCredentialsStore(c) 27 return s.Store(auth) 28 } 29 30 // EraseCredentials removes the user credentials from a credentials store. 31 // The store is determined by the config file settings. 32 func EraseCredentials(c *configfile.ConfigFile, serverAddress string) error { 33 s := LoadCredentialsStore(c) 34 return s.Erase(serverAddress) 35 } 36 37 // LoadCredentialsStore initializes a new credentials store based 38 // in the settings provided in the configuration file. 39 func LoadCredentialsStore(c *configfile.ConfigFile) credentials.Store { 40 if c.CredentialsStore != "" { 41 return credentials.NewNativeStore(c) 42 } 43 return credentials.NewFileStore(c) 44 }