mirror of
https://github.com/ansible/awx.git
synced 2026-05-14 21:07:39 -02:30
Add a new Instance.health_check_started field
This will enable us to provide more useful information for the user, now that all user-triggered health checks are async. Also, de-bounce the health check endpoint to not allow additional health check tasks to be triggered when one is already in progress.
This commit is contained in:
@@ -114,6 +114,11 @@ class Instance(HasPolicyEditsMixin, BaseModel):
|
||||
editable=False,
|
||||
help_text=_('Last time instance ran its heartbeat task for main cluster nodes. Last known connection to receptor mesh for execution nodes.'),
|
||||
)
|
||||
health_check_started = models.DateTimeField(
|
||||
null=True,
|
||||
editable=False,
|
||||
help_text=_("The last time a health check was initiated on this instance."),
|
||||
)
|
||||
last_health_check = models.DateTimeField(
|
||||
null=True,
|
||||
editable=False,
|
||||
@@ -207,6 +212,14 @@ class Instance(HasPolicyEditsMixin, BaseModel):
|
||||
def jobs_total(self):
|
||||
return UnifiedJob.objects.filter(execution_node=self.hostname).count()
|
||||
|
||||
@property
|
||||
def health_check_pending(self):
|
||||
if self.health_check_started is None:
|
||||
return False
|
||||
if self.last_health_check is None:
|
||||
return True
|
||||
return self.health_check_started > self.last_health_check
|
||||
|
||||
def get_cleanup_task_kwargs(self, **kwargs):
|
||||
"""
|
||||
Produce options to use for the command: ansible-runner worker cleanup
|
||||
|
||||
Reference in New Issue
Block a user