diff options
| -rw-r--r-- | cloudinit/sources/DataSourceConfigDrive.py | 12 | 
1 files changed, 7 insertions, 5 deletions
| diff --git a/cloudinit/sources/DataSourceConfigDrive.py b/cloudinit/sources/DataSourceConfigDrive.py index 9729cfb9..dbbedce1 100644 --- a/cloudinit/sources/DataSourceConfigDrive.py +++ b/cloudinit/sources/DataSourceConfigDrive.py @@ -218,11 +218,6 @@ class DataSourceConfigDrive(sources.DataSource):          return True -    def get_public_ssh_keys(self): -        if not 'public-keys' in self.metadata: -            return [] -        return self.metadata['public-keys'] -  class DataSourceConfigDriveNet(DataSourceConfigDrive):      def __init__(self, sys_cfg, distro, paths): @@ -331,6 +326,13 @@ def read_config_drive_dir_v2(source_dir, version="2012-08-10"):          except KeyError:              raise BrokenConfigDriveDir("No uuid entry in metadata") +    # other datasources (and config-drive-v1) populate metadata['public-keys'] +    # where as with config-drive-v2, that would be 'public_keys'.  So, just +    # copy the field if it is present +    if ('public_keys' in results['metadata'] and not +        'public-keys' in results['metadata']): +        results['public-keys'] = results['public_keys'] +      def read_content_path(item):          # do not use os.path.join here, as content_path starts with /          cpath = os.path.sep.join((source_dir, "openstack", | 
