Enable swift temporary URLs in grenade and provide a good error message

The fixed configdrive_use_object_store requires them.

Change-Id: Ie7323ae107c7f801be010353c7c4f3b8a43c3a1a
This commit is contained in:
Dmitry Tantsur 2021-02-24 13:32:44 +01:00
parent 6e0682377c
commit 5533077c7d
2 changed files with 8 additions and 1 deletions

View File

@ -131,7 +131,12 @@ class SwiftAPI(object):
parse_result = urlparse.urlparse(self.connection.url) parse_result = urlparse.urlparse(self.connection.url)
swift_object_path = '/'.join((parse_result.path, container, obj)) swift_object_path = '/'.join((parse_result.path, container, obj))
temp_url_key = account_info['x-account-meta-temp-url-key'] temp_url_key = account_info.get('x-account-meta-temp-url-key')
if not temp_url_key:
raise exception.MissingParameterValue(_(
'Swift temporary URLs require a shared secret to be '
'created. You must provide pre-generate the key on '
'the project used to access Swift.'))
url_path = swift_utils.generate_temp_url(swift_object_path, timeout, url_path = swift_utils.generate_temp_url(swift_object_path, timeout,
temp_url_key, 'GET') temp_url_key, 'GET')
return urlparse.urlunparse( return urlparse.urlunparse(

View File

@ -788,6 +788,8 @@
IRONIC_AUTOMATED_CLEAN_ENABLED: False IRONIC_AUTOMATED_CLEAN_ENABLED: False
Q_AGENT: openvswitch Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan Q_ML2_TENANT_NETWORK_TYPE: vxlan
SWIFT_ENABLE_TEMPURLS: True
SWIFT_TEMPURL_KEY: secretkey
EBTABLES_RACE_FIX: True EBTABLES_RACE_FIX: True
LIBVIRT_STORAGE_POOL_PATH: /opt/libvirt/images LIBVIRT_STORAGE_POOL_PATH: /opt/libvirt/images
old: old: