github.com/axw/juju@v0.0.0-20161005053422-4bd6544d08d4/provider/cloudsigma/credentials.go (about) 1 // Copyright 2016 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package cloudsigma 5 6 import ( 7 "github.com/juju/errors" 8 "github.com/juju/juju/cloud" 9 "github.com/juju/juju/environs" 10 ) 11 12 type environProviderCredentials struct{} 13 14 const ( 15 credAttrUsername = "username" 16 credAttrPassword = "password" 17 ) 18 19 // CredentialSchemas is part of the environs.ProviderCredentials interface. 20 func (environProviderCredentials) CredentialSchemas() map[cloud.AuthType]cloud.CredentialSchema { 21 return map[cloud.AuthType]cloud.CredentialSchema{ 22 cloud.UserPassAuthType: {{ 23 "username", cloud.CredentialAttr{ 24 Description: "account username", 25 }, 26 }, { 27 "password", cloud.CredentialAttr{ 28 Description: "account password", 29 Hidden: true, 30 }, 31 }}, 32 } 33 } 34 35 // DetectCredentials is part of the environs.ProviderCredentials interface. 36 func (environProviderCredentials) DetectCredentials() (*cloud.CloudCredential, error) { 37 return nil, errors.NotFoundf("credentials") 38 } 39 40 // FinalizeCredential is part of the environs.ProviderCredentials interface. 41 func (environProviderCredentials) FinalizeCredential(_ environs.FinalizeCredentialContext, args environs.FinalizeCredentialParams) (*cloud.Credential, error) { 42 return &args.Credential, nil 43 }