Laravel Envoy无法在Windows上完成基本任务

时间:2019-05-17 14:15:26

标签: php laravel php-7.2 laravel-envoy

因此,我尝试首次使用Laravel Envoy并以described in the documentation的身份运行示例任务。

@servers(['web' => 'redacted-user@redacted-ip'])

@task('foo', ['on' => 'web'])
ls -la
@endtask

envoy run foo
[✗] This task did not complete successfully on one of your servers.

我在官方网站上尝试了更新的PHP二进制文件,但是并没有解决。当我执行envoy ssh时,它可以工作,并且常规SSH也可以使用提供的凭据(我可以使用用户名/密码或公共密钥登录)来工作。

什么可能阻止特使连接和执行任务?

这些是我的设置:

  • Windows 10
  • PHP 7.2.11(cli)(内置:2018年10月10日02:04:07)(ZTS MSVC15(Visual C ++ 2017)x64)
  • Laravel Envoy 1.5.0(已随Composer全局安装)

2 个答案:

答案 0 :(得分:1)

以下是一些要在Windows上运行Envoy的人的选择:

  1. 安装Windows Subsystem for Linux(WSL),然后通过WSL命令行启动Envoy。它应该在Windows上本机运行。由于WSL具有从Windows命令行中执行Linux二进制文件的功能。您也可以从WSL命令行运行它。
  2. 使用Homestead进行项目,然后vagrant ssh进入Homestead虚拟机。 Homestead已预装了Envoy。
  3. 类似于使用Homestead,您可以选择使用任何其他虚拟机。
  4. 使用Envoy的替代品,该替代品支持Windows,例如Deployer

答案 1 :(得分:0)

在文档中说它仅支持Mac和Linux。您使用的是Windows,这可能是为什么它无法正常工作的原因。

  

当前,Envoy仅支持Mac和Linux操作系统。

https://laravel.com/docs/5.8/envoy#introduction