protected function execute(InputInterface $input, OutputInterface $output)
 {
     $output = new SymfonyStyle($input, $output);
     $workers = $this->workerRegistry->all();
     $tableInput = array();
     foreach ($workers as $worker) {
         $tableInput[] = array($worker->getId(), $worker->getHostname(), $worker->getProcess()->getPid(), $worker->getCurrentJob());
     }
     $output->table(array('Id', 'Hostname', 'Pid', 'Current job'), $tableInput);
 }
Example #2
0
 function it_cleans_up_dead_workers(SystemInterface $system, WorkerRegistryInterface $workerRegistry, WorkerInterface $worker, WorkerInterface $deadWorker1, WorkerInterface $deadWorker2, Process $workerProcess, Process $deadWorker1Process, Process $deadWorker2Process)
 {
     $system->getCurrentPid()->willReturn(2341);
     $system->getHostname()->shouldBeCalled()->willReturn('foo1.resque.com');
     $workerRegistry->all()->shouldBeCalled()->willReturn(array($worker, $deadWorker1, $deadWorker2));
     $worker->getHostname()->shouldBeCalled()->willReturn('foo1.resque.com');
     $worker->getProcess()->shouldBeCalled()->willReturn($workerProcess);
     $workerProcess->getPid()->shouldBeCalled()->willReturn(2341);
     $deadWorker1->getHostname()->shouldBeCalled()->willReturn('foo1.resque.com');
     $deadWorker1->getProcess()->shouldBeCalled()->willReturn($deadWorker1Process);
     $deadWorker1Process->getPid()->shouldBeCalled()->willReturn('1');
     $deadWorker2->getHostname()->shouldBeCalled()->willReturn('foo1.resque.com');
     $deadWorker2->getProcess()->shouldBeCalled()->willReturn($deadWorker2Process);
     $deadWorker2Process->getPid()->shouldBeCalled()->willReturn('2');
     $workerRegistry->deregister($deadWorker1)->shouldBeCalled();
     $workerRegistry->deregister($deadWorker2)->shouldBeCalled();
     $workerRegistry->deregister($worker)->shouldNotBeCalled();
     $this->pruneDeadWorkers();
 }