scripts/ci/gitlab-pipeline-status: use more descriptive exceptions
For two very different error conditions. Signed-off-by: Cleber Rosa <crosa@redhat.com> Message-Id: <20200904164258.240278-7-crosa@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
79df438eeb
commit
176498ab57
@ -23,6 +23,14 @@ import time
|
|||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
|
||||||
|
class CommunicationFailure(Exception):
|
||||||
|
"""Failed to communicate to gitlab.com APIs."""
|
||||||
|
|
||||||
|
|
||||||
|
class NoPipelineFound(Exception):
|
||||||
|
"""Communication is successfull but pipeline is not found."""
|
||||||
|
|
||||||
|
|
||||||
def get_local_branch_commit(branch='staging'):
|
def get_local_branch_commit(branch='staging'):
|
||||||
"""
|
"""
|
||||||
Returns the commit sha1 for the *local* branch named "staging"
|
Returns the commit sha1 for the *local* branch named "staging"
|
||||||
@ -50,14 +58,14 @@ def get_pipeline_status(project_id, commit_sha1):
|
|||||||
connection.request('GET', url=url)
|
connection.request('GET', url=url)
|
||||||
response = connection.getresponse()
|
response = connection.getresponse()
|
||||||
if response.code != http.HTTPStatus.OK:
|
if response.code != http.HTTPStatus.OK:
|
||||||
raise ValueError("Failed to receive a successful response")
|
raise CommunicationFailure("Failed to receive a successful response")
|
||||||
json_response = json.loads(response.read())
|
json_response = json.loads(response.read())
|
||||||
|
|
||||||
# As far as I can tell, there should be only one pipeline for the same
|
# As far as I can tell, there should be only one pipeline for the same
|
||||||
# project + commit. If this assumption is false, we can add further
|
# project + commit. If this assumption is false, we can add further
|
||||||
# filters to the url, such as username, and order_by.
|
# filters to the url, such as username, and order_by.
|
||||||
if not json_response:
|
if not json_response:
|
||||||
raise ValueError("No pipeline found")
|
raise NoPipelineFound("No pipeline found")
|
||||||
return json_response[0]
|
return json_response[0]
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user