code: def populate(self, zone, target=False, lenient=False):
          
  
          self.log.debug('populate: name=%s, target=%s, lenient=%s', zone.name,
                         target, lenient)
  
          exists = False
          before = len(zone.records)
  
          gcloud_zone = self.gcloud_zones.get(zone.name)
  
          if gcloud_zone:
              exists = True
              for gcloud_record in self._get_gcloud_records(gcloud_zone):
                  if gcloud_record.record_type.upper() not in self.SUPPORTS:
                      continue
  
                  record_name = gcloud_record.name
                  if record_name.endswith(zone.name):
                      # google cloud always return fqdn. Make relative record
                      # here. "root" records will then get the '' record_name,
                      # which is also the way octodns likes it.
                      record_name = record_name[:-(len(zone.name) + 1)]
                  typ = gcloud_record.record_type.upper()
                  data = getattr(self, '_data_for_{}'.format(typ))
                  data = data(gcloud_record)
                  data['type'] = typ
                  data['ttl'] = gcloud_record.ttl
                  self.log.debug('populate: adding record {} records: {!s}'
                                 .format(record_name, data))
                  record = Record.new(zone, record_name, data, source=self)
                  zone.add_record(record, lenient=lenient)
  
          self.log.info('populate: found %s records, exists=%s',
                        len(zone.records) - before, exists)
          return exists
docs: Required function of manager.py to collect records from zone.
  
              :param zone: A dns zone
              :type  zone: octodns.zone.Zone
              :param target: Unused.
              :type  target: bool
              :param lenient: Unused. Check octodns.manager for usage.
              :type  lenient: bool
  
              :type return: void