summaryrefslogtreecommitdiff
path: root/obsapi/buildapi.py
blob: 27e9124857799f4c9e0e0fde17985d8da3089cd4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# -*- coding: utf-8 -*-
#
from obsapi.httpapi import ObsHttpApi


class ObsBuildApi(ObsHttpApi):

    rootapi = '/build/'

    def __get(self, *args, **kwargs):
        return super(ObsBuildApi, self).get(*args, **kwargs)

    def __put(self, *args, **kwargs):
        return super(ObsBuildApi, self).put(*args, **kwargs)

    def __post(self, *args, **kwargs):
        return super(ObsBuildApi, self).post(*args, **kwargs)

    def get(self, prj=None, repo=None, arch=None, pkg=None, binaryname=None,
            view=None, binary_get=False, **kwargs):
        if binaryname:
            binary_get = True
        return self.__get(prj, repo, arch, pkg, binaryname,
                          view=view, binary_get=binary_get, **kwargs)

    def get_builddepinfo(self, prj, repo, arch, pkg):
        return self.__get(prj, repo, arch, '_builddepinfo', package=pkg)

    def get_buildconfig(self, prj, repo):
        return self.__get(prj, repo, '_buildconfig')

    def get_buildinfo(self, prj, repo, arch, pkg):
        return self.__get(prj, repo, arch, pkg, '_buildinfo')

    def get_jobhistory(self, prj, repo, arch, pkg=None, code=None, limit=None):
        return self.__get(prj, repo, arch, '_jobhistory',
                          package=pkg, code=code, limit=limit)

    def get_result(self, prj):
        return self.__get(prj, '_result')

    def get_workstatus(self):
        return self.__get('_workerstatus')

    def get_history(self, prj, repo, arch, pkg):
        return self.__get(prj, repo, arch, pkg, '_history')

    def get_reason(self, prj, repo, arch, pkg):
        return self.__get(prj, repo, arch, pkg, '_reason')

    def get_jobstatus(self, prj, repo, arch, pkg):
        return self.__get(prj, repo, arch, pkg, '_jobstatus')

    def get_status(self, prj, repo, arch, pkg):
        return self.__get(prj, repo, arch, pkg, '_status')

    def get_log(self, prj, repo, arch, pkg, **kwargs):
        return self.__get(prj, repo, arch, pkg, '_log', **kwargs)

    def get_repository(self, prj, repo, arch, binaryname=''):
        # Important! We call self.get() to handle binary get properly
        return self.get(prj, repo, arch, '_repository', binaryname)

    def put_repository(self, prj, repo, arch, filename, data):
        return self.__put(prj, repo, arch, '_repository', filename, data=data)

    def post(self, prj, repo, arch, pkg, data, **kwargs):
        print(prj, repo, arch, pkg)
        return self.__post(prj, repo, arch, pkg, data=data, **kwargs)