code: def __get_metadata(vm_):
      '''
      Get configured metadata and add 'salt-cloud-profile'.
      '''
      md = config.get_cloud_config_value(
          'metadata', vm_, __opts__,
          default='{}', search_global=False)
      # Consider warning the user that the metadata in the cloud profile
      # could not be interpreted, bad formatting?
      try:
          metadata = literal_eval(md)
      except Exception:  # pylint: disable=W0703
          metadata = None
      if not metadata or not isinstance(metadata, dict):
          metadata = {'items': [{
              'key': 'salt-cloud-profile',
              'value': vm_['profile']
          }]}
      else:
          metadata['salt-cloud-profile'] = vm_['profile']
          items = []
          for k, v in six.iteritems(metadata):
              items.append({'key': k, 'value': v})
          metadata = {'items': items}
      return metadatf __get_metadata(vm_):
      '''
      Get configured metadata and add 'salt-cloud-profile'.
      '''
      md = config.get_cloud_config_value(
          'metadata', vm_, __opts__,
          default='{}', search_global=False)
      # Consider warning the user that the metadata in the cloud profile
      # could not be interpreted, bad formatting?
      try:
          metadata = literal_eval(md)
      except Exception:  # pylint: disable=W0703
          metadata = None
      if not metadata or not isinstance(metadata, dict):
          metadata = {'items': [{
              'key': 'salt-cloud-profile',
              'value': vm_['profile']
          }]}
      else:
          metadata['salt-cloud-profile'] = vm_['profile']
          items = []
          for k, v in six.iteritems(metadata):
              items.append({'key': k, 'value': v})
          metadata = {'items': items}
      return metadata
docs: Get configured metadata and add 'salt-cloud-profile'.