Best Python code snippet using autotest_python
monitor_db.py
Source:monitor_db.py  
...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(470                    'While scheduling %s, host %s already has a host agent %s'471                    % (entry, entry.host, agent.task))472    def _get_agent_task_for_special_task(self, special_task):473        """474        Construct an AgentTask class to run the given SpecialTask and add it475        to this dispatcher.476        A special task is created through schedule_special_tasks, but only if477        the host doesn't already have an agent. This happens through478        add_agent_task. All special agent tasks are given a host on creation,479        and a Null hqe. To create a SpecialAgentTask object, you need a480        models.SpecialTask. If the SpecialTask used to create a SpecialAgentTask481        object contains a hqe it's passed on to the special agent task, which482        creates a HostQueueEntry and saves it as it's queue_entry.483        @param special_task: a models.SpecialTask instance484        @returns an AgentTask to run this SpecialTask485        """486        self._assert_host_has_no_agent(special_task)487        special_agent_task_classes = (prejob_task.CleanupTask,488                                      prejob_task.VerifyTask,489                                      prejob_task.RepairTask,490                                      prejob_task.ResetTask,491                                      prejob_task.ProvisionTask)492        for agent_task_class in special_agent_task_classes:493            if agent_task_class.TASK_TYPE == special_task.task:494                return agent_task_class(task=special_task)495        raise scheduler_lib.SchedulerError(496                'No AgentTask class for task', str(special_task))497    def _register_pidfiles(self, agent_tasks):498        for agent_task in agent_tasks:499            agent_task.register_necessary_pidfiles()500    def _recover_tasks(self, agent_tasks):...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!!
