Add ability to specify SSH key via env var
This commit is contained in:
parent
fba785f313
commit
39cdeb06c8
@ -78,11 +78,15 @@ func init() {
|
||||
|
||||
func newPublicKey() ([]ssh.AuthMethod, error) {
|
||||
var signers []ssh.AuthMethod
|
||||
|
||||
for _, path := range []string{
|
||||
possiblePaths := []string{
|
||||
filepath.Join(os.Getenv("HOME"), ".ssh", "id_dsa"),
|
||||
filepath.Join(os.Getenv("HOME"), ".ssh", "id_rsa"),
|
||||
} {
|
||||
}
|
||||
if p := os.Getenv("SSH_PRIVATE_KEY"); p != "" {
|
||||
possiblePaths = append([]string{p}, possiblePaths...)
|
||||
}
|
||||
|
||||
for _, path := range possiblePaths {
|
||||
|
||||
// A public key may be used to authenticate against the remote
|
||||
// server by using an unencrypted PEM-encoded private key file.
|
||||
@ -97,6 +101,7 @@ func newPublicKey() ([]ssh.AuthMethod, error) {
|
||||
return nil, fmt.Errorf("unable to read private key %q: %v", path, err)
|
||||
}
|
||||
|
||||
glog.Infof("Using private key %q", path)
|
||||
// Create the Signer for this private key.
|
||||
signer, err := ssh.ParsePrivateKey(key)
|
||||
if err != nil {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user