Handle novaclient ec2 cert support removal
In Queens, ec2 cert support was removed from python-novaclient. This causes horizon to be unable to get the keystone values of ec2 credentials. This patch removes the code that handles ec2 certs from nova. Since the ec2 cert code in nova was removed in Mitaka. There is no real risk of breaking backwards compatibility. Change-Id: I470761d67004f6e6b188d3afc4b7f081b7bc708f Closes-Bug: #1729175
This commit is contained in:
parent
0a51ce628d
commit
f25748293e
@ -787,16 +787,6 @@ def usage_list(request, start, end):
|
||||
return [NovaUsage(u) for u in usage_list]
|
||||
|
||||
|
||||
@profiler.trace
|
||||
def get_x509_credentials(request):
|
||||
return novaclient(request).certs.create()
|
||||
|
||||
|
||||
@profiler.trace
|
||||
def get_x509_root_certificate(request):
|
||||
return novaclient(request).certs.get()
|
||||
|
||||
|
||||
@profiler.trace
|
||||
def get_password(request, instance_id, private_key=None):
|
||||
return novaclient(request).servers.get_password(instance_id, private_key)
|
||||
|
@ -38,18 +38,12 @@ RECREATE_CREDS_URL = reverse(API_URL + ":recreate_credentials")
|
||||
class APIAccessTests(test.TestCase):
|
||||
def test_ec2_download_view(self):
|
||||
creds = self.ec2.first()
|
||||
cert = self.certs.first()
|
||||
|
||||
self.mox.StubOutWithMock(api.keystone, "list_ec2_credentials")
|
||||
self.mox.StubOutWithMock(api.nova, "get_x509_credentials")
|
||||
self.mox.StubOutWithMock(api.nova, "get_x509_root_certificate")
|
||||
self.mox.StubOutWithMock(api.keystone, "create_ec2_credentials")
|
||||
|
||||
api.keystone.list_ec2_credentials(IsA(HttpRequest), self.user.id) \
|
||||
.AndReturn([])
|
||||
api.nova.get_x509_credentials(IsA(HttpRequest)).AndReturn(cert)
|
||||
api.nova.get_x509_root_certificate(IsA(HttpRequest)) \
|
||||
.AndReturn(cert)
|
||||
api.keystone.create_ec2_credentials(IsA(HttpRequest),
|
||||
self.user.id,
|
||||
self.tenant.id).AndReturn(creds)
|
||||
|
@ -90,8 +90,6 @@ def download_ec2_bundle(request):
|
||||
|
||||
# Gather or create our EC2 credentials
|
||||
try:
|
||||
credentials = api.nova.get_x509_credentials(request)
|
||||
cacert = api.nova.get_x509_root_certificate(request)
|
||||
context = _get_ec2_credentials(request)
|
||||
except Exception:
|
||||
exceptions.handle(request,
|
||||
@ -103,9 +101,6 @@ def download_ec2_bundle(request):
|
||||
try:
|
||||
temp_zip = tempfile.NamedTemporaryFile(delete=True)
|
||||
with closing(zipfile.ZipFile(temp_zip.name, mode='w')) as archive:
|
||||
archive.writestr('pk.pem', credentials.private_key)
|
||||
archive.writestr('cert.pem', credentials.data)
|
||||
archive.writestr('cacert.pem', cacert.data)
|
||||
archive.writestr('ec2rc.sh', render_to_string(template, context))
|
||||
except Exception:
|
||||
exceptions.handle(request,
|
||||
|
@ -16,7 +16,6 @@ import json
|
||||
|
||||
from novaclient.v2 import aggregates
|
||||
from novaclient.v2 import availability_zones
|
||||
from novaclient.v2 import certs
|
||||
from novaclient.v2 import flavor_access
|
||||
from novaclient.v2 import flavors
|
||||
from novaclient.v2 import hosts
|
||||
@ -164,7 +163,6 @@ def data(TEST):
|
||||
TEST.quotas = utils.TestDataContainer()
|
||||
TEST.quota_usages = utils.TestDataContainer()
|
||||
TEST.usages = utils.TestDataContainer()
|
||||
TEST.certs = utils.TestDataContainer()
|
||||
TEST.availability_zones = utils.TestDataContainer()
|
||||
TEST.hypervisors = utils.TestDataContainer()
|
||||
TEST.services = utils.TestDataContainer()
|
||||
@ -433,11 +431,6 @@ def data(TEST):
|
||||
json.loads(USAGE_DATA % usage_2_vals))
|
||||
TEST.usages.add(usage_obj_2)
|
||||
|
||||
cert_data = {'private_key': 'private',
|
||||
'data': 'certificate_data'}
|
||||
certificate = certs.Certificate(certs.CertificateManager(None), cert_data)
|
||||
TEST.certs.add(certificate)
|
||||
|
||||
# Availability Zones
|
||||
TEST.availability_zones.add(availability_zones.AvailabilityZone(
|
||||
availability_zones.AvailabilityZoneManager(None),
|
||||
|
Loading…
x
Reference in New Issue
Block a user