0

我正在尝试调用自定义命令以在启动 Horizo​​n 后从 CLI 调度作业。

journal:add 是一个自定义命令,用于将日记详细信息添加到 mysql 数据库。

        $this->line('<fg=red>Migrate and refreshing databases</>');
          sleep(1);
        $this->call('migrate:refresh');
        $this->line('<fg=red>Flushing the redis queue</>');
          sleep(1);
        exec('redis-cli flushall');
          sleep(1);
        $this->line('<fg=red>Starting Horizon</>');
        $this->call('horizon');
          sleep(1);
        $this->line('<fg=red>Adding test journal</>');
        $this->call('journal:add', ['issn'=>'1098-2418']);

预期结果是在 Horizo​​n 开始后将日志作业分派到队列中。

目前,代码启动了 Horizo​​n,但之后没有做任何事情。

4

1 回答 1

0

Laravel Horizon不执行或退出,它继续运行等待新作业。如果你想达到你想要的。创建两个命令,第一个执行Horizon,第二个作业调度作业。

你在做什么,似乎是一种错误的方法,从来没有在我不得不将命令组合在其他命令中的情况下。按所需顺序执行给定命令有什么问题?

于 2019-04-22T21:52:56.443 回答