def list_build_source_namespaces(self): gh_client = self._get_client() usr = gh_client.get_user() # Build the full set of namespaces for the user, starting with their own. namespaces = {} namespaces[usr.login] = { "personal": True, "id": usr.login, "title": usr.name or usr.login, "avatar_url": usr.avatar_url, "url": usr.html_url, "score": usr.plan.private_repos if usr.plan else 0, } for org in usr.get_orgs(): organization = org.login if org.login else org.name # NOTE: We don't load the organization's html_url nor its plan, because doing # so requires loading *each organization* via its own API call in this tight # loop, which was massively slowing down the load time for users when setting # up triggers. namespaces[organization] = { "personal": False, "id": organization, "title": organization, "avatar_url": org.avatar_url, "url": "", "score": 0, } return BuildTriggerHandler.build_namespaces_response(namespaces)
def list_build_source_namespaces(self): bitbucket_client = self._get_authorized_client() (result, data, err_msg) = bitbucket_client.get_visible_repositories() if not result: raise RepositoryReadException('Could not read repository list: ' + err_msg) namespaces = {} for repo in data: owner = repo['owner'] if owner in namespaces: namespaces[owner]['score'] = namespaces[owner]['score'] + 1 else: namespaces[owner] = { 'personal': owner == self.config.get('nickname', self.config.get('username')), 'id': owner, 'title': owner, 'avatar_url': repo['logo'], 'url': 'https://bitbucket.org/%s' % (owner), 'score': 1, } return BuildTriggerHandler.build_namespaces_response(namespaces)
def list_build_source_namespaces(self): gl_client = self._get_authorized_client() current_user = gl_client.user if not current_user: raise RepositoryReadException('Unable to get current user') namespaces = {} for namespace in _paginated_iterator(gl_client.namespaces.list, RepositoryReadException): namespace_id = namespace.get_id() if namespace_id in namespaces: namespaces[namespace_id][ 'score'] = namespaces[namespace_id]['score'] + 1 else: owner = namespace.attributes['name'] namespaces[namespace_id] = { 'personal': namespace.attributes['kind'] == 'user', 'id': str(namespace_id), 'title': namespace.attributes['name'], 'avatar_url': namespace.attributes.get('avatar_url'), 'score': 1, 'url': namespace.attributes.get('web_url') or '', } return BuildTriggerHandler.build_namespaces_response(namespaces)
def list_build_source_namespaces(self): gl_client = self._get_authorized_client() current_user = gl_client.user if not current_user: raise RepositoryReadException("Unable to get current user") namespaces = {} for namespace in _paginated_iterator(gl_client.namespaces.list, RepositoryReadException): namespace_id = namespace.get_id() if namespace_id in namespaces: namespaces[namespace_id][ "score"] = namespaces[namespace_id]["score"] + 1 else: owner = namespace.attributes["name"] namespaces[namespace_id] = { "personal": namespace.attributes["kind"] == "user", "id": str(namespace_id), "title": namespace.attributes["name"], "avatar_url": namespace.attributes.get("avatar_url"), "score": 1, "url": namespace.attributes.get("web_url") or "", } return BuildTriggerHandler.build_namespaces_response(namespaces)
def list_build_source_namespaces(self): bitbucket_client = self._get_authorized_client() (result, data, err_msg) = bitbucket_client.get_visible_repositories() if not result: raise RepositoryReadException("Could not read repository list: " + err_msg) namespaces = {} for repo in data: owner = repo["owner"] if owner in namespaces: namespaces[owner]["score"] = namespaces[owner]["score"] + 1 else: namespaces[owner] = { "personal": owner == self.config.get("nickname", self.config.get("username")), "id": owner, "title": owner, "avatar_url": repo["logo"], "url": "https://bitbucket.org/%s" % (owner), "score": 1, } return BuildTriggerHandler.build_namespaces_response(namespaces)