本文整理汇总了Python中rbtools.api.client.RBClient.get_repositories方法的典型用法代码示例。如果您正苦于以下问题:Python RBClient.get_repositories方法的具体用法?Python RBClient.get_repositories怎么用?Python RBClient.get_repositories使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类rbtools.api.client.RBClient
的用法示例。
在下文中一共展示了RBClient.get_repositories方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: fetch_repositories
# 需要导入模块: from rbtools.api.client import RBClient [as 别名]
# 或者: from rbtools.api.client.RBClient import get_repositories [as 别名]
def fetch_repositories(url, user=None, token=None):
"""Fetch repositories from Review Board.
Args:
url (unicode):
The configured url for the connection.
user (unicode):
The configured user for the connection.
token (unicode):
The configured API token for the user.
"""
logging.info('Fetching repositories from Review Board: %s', url)
# TODO: merge with COOKIE_FILE/AGENT in tasks.py
root = RBClient(url, username=user, api_token=token,
cookie_file='reviewbot-cookies.txt',
agent='ReviewBot').get_root()
for tool_type in ('Mercurial', 'Git'):
repos = root.get_repositories(tool=tool_type, only_links='',
only_fields='path,mirror_path,name')
for repo in repos.all_items:
repo_source = None
for path in (repo.path, repo.mirror_path):
if (os.path.exists(path) or path.startswith('http') or
path.startswith('git')):
repo_source = path
break
if repo_source:
init_repository(repo.name, tool_type.lower(), repo_source)
else:
logging.warn('Cannot find usable path for repository: %s',
repo.name)