def attributes_to_cfg(self): names = self.remotes.keys() names.sort() # find canonical remote remotes = filter(lambda r: r.is_canonical, self.remotes.values()) if remotes: name = remotes[0].name names = utils.sort_with_elem_as_first(name, names) for key in names: remote = self.remotes[key] urls = remote.urls.keys() urls = utils.sort_with_elem_as_first('url', urls) for att in urls: val = remote.urls[att] att = StrFmt.fmt_cfg_key(remote.name, att) yield att, val