|
|
|
|
@ -22,7 +22,6 @@ type StepKeyPair struct {
|
|
|
|
|
KeyPairName string
|
|
|
|
|
PrivateKeyFile string
|
|
|
|
|
|
|
|
|
|
keyName string
|
|
|
|
|
doCleanup bool
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -85,7 +84,6 @@ func (s *StepKeyPair) Run(state multistep.StateBag) multistep.StepAction {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ui.Say(fmt.Sprintf("Created temporary keypair: %s", s.TemporaryKeyPairName))
|
|
|
|
|
s.doCleanup = true
|
|
|
|
|
|
|
|
|
|
keypair.PrivateKey = berToDer(keypair.PrivateKey, ui)
|
|
|
|
|
|
|
|
|
|
@ -115,11 +113,11 @@ func (s *StepKeyPair) Run(state multistep.StateBag) multistep.StepAction {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Set the keyname so we know to delete it later
|
|
|
|
|
s.keyName = s.TemporaryKeyPairName
|
|
|
|
|
// we created a temporary key, so remember to clean it up
|
|
|
|
|
s.doCleanup = true
|
|
|
|
|
|
|
|
|
|
// Set some state data for use in future steps
|
|
|
|
|
state.Put("keyPair", s.keyName)
|
|
|
|
|
state.Put("keyPair", s.TemporaryKeyPairName)
|
|
|
|
|
state.Put("privateKey", keypair.PrivateKey)
|
|
|
|
|
|
|
|
|
|
return multistep.ActionContinue
|
|
|
|
|
@ -185,7 +183,7 @@ func (s *StepKeyPair) Cleanup(state multistep.StateBag) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ui.Say(fmt.Sprintf("Deleting temporary keypair: %s ...", s.TemporaryKeyPairName))
|
|
|
|
|
err = keypairs.Delete(computeClient, s.keyName).ExtractErr()
|
|
|
|
|
err = keypairs.Delete(computeClient, s.TemporaryKeyPairName).ExtractErr()
|
|
|
|
|
if err != nil {
|
|
|
|
|
ui.Error(fmt.Sprintf(
|
|
|
|
|
"Error cleaning up keypair. Please delete the key manually: %s", s.TemporaryKeyPairName))
|
|
|
|
|
|