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  }