'Returns a dictionnary that contains hostname metadata.'

def _get_hostname_metadata(self):

    metadata = EC2.get_metadata(self.agentConfig)
    if metadata.get('hostname'):
        metadata['ec2-hostname'] = metadata.get('hostname')
        del metadata['hostname']
    if self.agentConfig.get('hostname'):
        metadata['agent-hostname'] = self.agentConfig.get('hostname')
    else:
        try:
            metadata['socket-hostname'] = socket.gethostname()
        except Exception:
            pass
    try:
        metadata['socket-fqdn'] = socket.getfqdn()
    except Exception:
        pass
    metadata['hostname'] = self.hostname
    metadata['timezones'] = self._decode_tzname(time.tzname)
    if (not metadata.get('host_aliases')):
        metadata['host_aliases'] = []
    host_aliases = GCE.get_host_aliases(self.agentConfig)
    if host_aliases:
        metadata['host_aliases'] += host_aliases
    host_aliases = Azure.get_host_aliases(self.agentConfig)
    if host_aliases:
        metadata['host_aliases'] += host_aliases
    try:
        metadata['host_aliases'] += CloudFoundry.get_host_aliases(self.agentConfig)
    except Exception:
        pass
    return metadata
