Best Python code snippet using autotest_python
monitor_db.py
Source:monitor_db.py  
...436        @param queue_entry: a HostQueueEntry437        @return: an AgentTask to run the queue entry438        """439        task_entries = queue_entry.job.get_group_entries(queue_entry)440        self._check_for_duplicate_host_entries(task_entries)441        if queue_entry.status in (models.HostQueueEntry.Status.STARTING,442                                  models.HostQueueEntry.Status.RUNNING):443            if queue_entry.is_hostless():444                return HostlessQueueTask(queue_entry=queue_entry)445            return QueueTask(queue_entries=task_entries)446        if queue_entry.status == models.HostQueueEntry.Status.GATHERING:447            return postjob_task.GatherLogsTask(queue_entries=task_entries)448        if queue_entry.status == models.HostQueueEntry.Status.PARSING:449            return postjob_task.FinalReparseTask(queue_entries=task_entries)450        if queue_entry.status == models.HostQueueEntry.Status.ARCHIVING:451            return postjob_task.ArchiveResultsTask(queue_entries=task_entries)452        raise scheduler_lib.SchedulerError(453                '_get_agent_task_for_queue_entry got entry with '454                'invalid status %s: %s' % (queue_entry.status, queue_entry))455    def _check_for_duplicate_host_entries(self, task_entries):456        non_host_statuses = (models.HostQueueEntry.Status.PARSING,457                             models.HostQueueEntry.Status.ARCHIVING)458        for task_entry in task_entries:459            using_host = (task_entry.host is not None460                          and task_entry.status not in non_host_statuses)461            if using_host:462                self._assert_host_has_no_agent(task_entry)463    def _assert_host_has_no_agent(self, entry):464        """465        @param entry: a HostQueueEntry or a SpecialTask466        """467        if self.host_has_agent(entry.host):468            agent = tuple(self._host_agents.get(entry.host.id))[0]469            raise scheduler_lib.SchedulerError(...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
