1
0
mirror of https://github.com/docker/docker-credential-helpers.git synced 2026-06-13 16:01:28 +05:30
Files
docker-credential-helpers/plugin/server.go
T
David Calavera b7ffbdb74f 🌅 complete OS X keychain implementation.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2016-02-07 18:20:36 -08:00

44 lines
957 B
Go

package plugin
import "github.com/calavera/docker-credential-helpers/credentials"
// CredentialsGetResponse holds the information sent to docker after
// a request for credentials.
type CredentialsGetResponse struct {
Error string
Username string
Password string
}
func (p *credentialsPlugin) Get(c *credentials.Credentials, resp *CredentialsGetResponse) error {
username, password, err := p.helper.Get(c.ServerURL)
if err != nil {
*resp = CredentialsGetResponse{
Error: err.Error(),
}
return nil
}
*resp = CredentialsGetResponse{
Username: username,
Password: password,
}
return nil
}
func (p *credentialsPlugin) Add(c *credentials.Credentials, resp *string) error {
err := p.helper.Add(c)
if err != nil {
*resp = err.Error()
}
return nil
}
func (p *credentialsPlugin) Delete(c *credentials.Credentials, resp *string) error {
err := p.helper.Delete(c.ServerURL)
if err != nil {
*resp = err.Error()
}
return nil
}