user_public_key = self.properties['PublicKey'] or ''
# Generate SSH public/private keypair
- rsa = RSA.generate(1024)
+ if self._private_key is not None:
+ rsa = RSA.importKey(self._private_key)
+ else:
+ rsa = RSA.generate(1024)
self.private_key = rsa.exportKey()
public_key = rsa.publickey().exportKey('OpenSSH')
public_keys = public_key + "\n" + user_public_key
}
'''
+rsa_key = """-----BEGIN RSA PRIVATE KEY-----
+MIICWwIBAAKBgQDibWGom/83F2xYfVylBZhUbREiVlw42X7afUuHzNJuh/5EyhXQ
+BmBHjVGL1mxZY4GoISrxIkW1jVmTXbm8FknIlS3jxEOC+xF3IkLBtmZEkFVLOUCv
+Fpru1xThFS0L/pRttiTWLm+dsjboCV4qtg/+y30O0RJ5AAFgGkoVs8idrQIDAQAB
+AoGAQU/7037r5yBCiGPgzVkHz5KGVrlCcMOL68ood0uFh4yCs6T3FcJBE2KYGxYG
+uuIRDEZE9LlGElBrfi6S3MYxEbewITK9Li1cr8K0fJlIbg5PI1MxwiTXzG7i0f8Y
+trtZjo/fs8XNSS4xlGWCUgtiNXvLS6wxyDGGbqeh1BmETgECQQDmoPJ3h5kuZguA
+o7B+iTaKXqyWPf0ImsZ0UQYBgnEWTaZEh8W0015jP55mndALWA9pmhHJm+BC/Hfe
+Kp6jtVyxAkEA+1YctDe62u5pXU/GK8UfDJwi4m1VxUfASrlxh+ALag9knwe6Dlev
+EKKIe8R6HZs2zavaJs6dddxHRcIi8rXfvQJAW6octOVwPMDSUY69140x4E1Ay3ZX
+29OojRKnEHKIABVcwGA2dGiOW2Qt0RtoVRnrBk32Q+twdy9hdSv7YZX0AQJAVDaj
+QYNW2Zp+tWRQa0QORkRer+2gioyjEqaWMsfQK0ZjGaIWJk4c+37qKkZIAHmMYFeP
+recW/XHEc8w7t4VXJQJAevSyciBfFcWMZTwlqq8wXNMCRLJt5CxvO4gSO+hPNrDe
+gDZkz7KcZC7TkO0NYVRssA6/84mCqx6QHpKaYNG9kg==
+-----END RSA PRIVATE KEY-----
+"""
+
class RackspaceCloudServerTest(HeatTestCase):
def setUp(self):
cs = cloud_server.CloudServer('%s_name' % name,
t['Resources']['WebServer'], stack)
+ cs._private_key = rsa_key
cs.t = cs.stack.resolve_runtime_data(cs.t)
flavor = t['Resources']['WebServer']['Properties']['Flavor']