SAREhub/php_component_worker

View on GitHub
cli/worker-cli

Summary

Maintainability
Test Coverage
#!/usr/bin/env php
<?php

use Monolog\Logger;
use SAREhub\Commons\Misc\Parameters;
use SAREhub\Component\Worker\Cli\CliBootstrap;
use Symfony\Component\Console\Application;

require dirname(__DIR__).'/vendor/autoload.php';

$config = new Parameters(include(__DIR__.'/config.php'));

CliBootstrap::newInstance()
  ->withApplication(new Application('Worker CLI', '0.1'))
  ->withConfig($config)
  ->withZmqContext(new ZMQContext())
  ->withLoggerFactory(function ($name) use ($config) {
      $loggingConfig = $config->getRequiredAsMap('logging');
      return new Logger(
        $name,
        $loggingConfig->getRequired('handlers'),
        $loggingConfig->getRequired('processors')
      );
  })
  ->run();