0004-misc-factorize-setting-of-the-availability-status.patch
passerelle/base/models.py | ||
---|---|---|
491 | 491 |
if not self.availability_parameters.run_check: |
492 | 492 |
return |
493 | 493 | |
494 |
availability_parameters = self.availability_parameters |
|
495 | ||
496 | 494 |
try: |
497 | 495 |
with self.logger.disable_admin_emails(): |
498 | 496 |
self.check_status() |
499 |
status = 'up' |
|
500 |
message = '' |
|
501 | 497 |
except NotImplementedError: |
502 | 498 |
return |
503 | 499 |
except Exception as e: |
504 | 500 |
from passerelle.utils.conversion import exception_to_text |
505 | 501 | |
506 |
status = 'down' |
|
507 |
message = exception_to_text(e)[:500] |
|
502 |
self.set_availability('down', message=exception_to_text(e)[:500]) |
|
503 |
else: |
|
504 |
self.set_availability_status('up') |
|
508 | 505 | |
506 |
def set_availability_status(self, status, message=''): |
|
507 |
availability_parameters = self.availability_parameters |
|
509 | 508 |
resource_type = ContentType.objects.get_for_model(self) |
510 | 509 |
current_status = ResourceStatus.objects.filter( |
511 | 510 |
resource_type=resource_type, resource_pk=self.pk |
512 |
- |