示例#1
0
 def get_projects(self):
     projects_index = Projects()
     projects = projects_index.get_projects()
     projects = OrderedDict(
         sorted(projects.items(), key=lambda t: t[0]))
     tags = projects_index.get_tags()
     return {'projects': projects,
             'tags': tags.keys()}
示例#2
0
 def projects(self, pid=None):
     projects_index = Projects()
     if pid:
         project = projects_index.get(pid)
         if not project:
             abort(404, detail="Project ID has not been found")
         return {pid: projects_index.get(pid)}
     else:
         projects = projects_index.get_projects(
             source=['name', 'description', 'logo', 'refs'])
         _projects = OrderedDict(
             sorted(projects.items(), key=lambda t: t[0]))
         return {'projects': _projects, 'tags': projects_index.get_tags()}
示例#3
0
    def get_repos(self, pid=None, tid=None):
        projects_index = Projects()
        if pid:
            repos = projects_index.get_projects().get(pid)
        elif tid:
            repos = projects_index.get_tags().get(tid)
        else:
            abort(404,
                  detail="A tag ID or project ID must be passed as parameter")

        if repos is None:
            abort(404,
                  detail='Project ID or Tag ID has not been found')
        return repos
示例#4
0
 def repos(self, pid=None, tid=None):
     projects_index = Projects()
     if not pid and not tid:
         abort(404,
               detail="A tag ID or project ID must be passed as parameter")
     if pid:
         project = projects_index.get(pid)
     else:
         if tid in projects_index.get_tags():
             refs = projects_index.get_references_from_tags(tid)
             project = {'refs': refs}
         else:
             project = None
     if not project:
         abort(404, detail='Project ID or Tag ID has not been found')
     return project['refs']