File: custom_exceptions.py

package info (click to toggle)
python-jenkinsapi 0.3.14-1
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 420 kB
  • sloc: python: 4,241; makefile: 3
file content (142 lines) | stat: -rw-r--r-- 2,408 bytes parent folder | download
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
"""Module for custom_exceptions.

Where possible we try to throw exceptions with non-generic,
meaningful names.
"""


class JenkinsAPIException(Exception):
    """Base class for all errors"""

    pass


class NotFound(JenkinsAPIException):
    """Resource cannot be found"""

    pass


class ArtifactsMissing(NotFound):
    """Cannot find a build with all of the required artifacts."""

    pass


class UnknownJob(KeyError, NotFound):
    """Jenkins does not recognize the job requested."""

    pass


class UnknownView(KeyError, NotFound):
    """Jenkins does not recognize the view requested."""

    pass


class UnknownNode(KeyError, NotFound):
    """Jenkins does not recognize the node requested."""

    pass


class UnknownQueueItem(KeyError, NotFound):
    """Jenkins does not recognize the requested queue item"""

    pass


class UnknownPlugin(KeyError, NotFound):
    """Jenkins does not recognize the plugin requested."""

    pass


class NoBuildData(NotFound):
    """A job has no build data."""

    pass


class NotBuiltYet(NotFound):
    """A job has no build data."""

    pass


class ArtifactBroken(JenkinsAPIException):
    """An artifact is broken, wrong"""

    pass


class TimeOut(JenkinsAPIException):
    """Some jobs have taken too long to complete."""

    pass


class NoResults(JenkinsAPIException):
    """A build did not publish any results."""

    pass


class FailedNoResults(NoResults):
    """A build did not publish any results because it failed"""

    pass


class BadURL(ValueError, JenkinsAPIException):
    """A URL appears to be broken"""

    pass


class NotAuthorized(JenkinsAPIException):
    """Not Authorized to access resource"""

    # Usually thrown when we get a 403 returned
    pass


class NotSupportSCM(JenkinsAPIException):
    """
    It's a SCM that does not supported by current version of jenkinsapi
    """

    pass


class NotConfiguredSCM(JenkinsAPIException):
    """It's a job that doesn't have configured SCM"""

    pass


class NotInQueue(JenkinsAPIException):
    """It's a job that is not in the queue"""

    pass


class PostRequired(JenkinsAPIException):
    """Method requires POST and not GET"""

    pass


class BadParams(JenkinsAPIException):
    """Invocation was given bad or inappropriate params"""

    pass


class AlreadyExists(JenkinsAPIException):
    """
    Method requires POST and not GET
    """

    pass