0

我是蛋糕制作的新手。我想从 Cake 脚本运行 Microsoft appcenter 命令。我尝试使用 cake.powershell https://cakebuild.net/addins/powershell/

 StartPowershellFile("./appcenter.ps1"); 

// appcenter.ps1 刚刚为 Appcenter 提供了 CLI 命令“ appcenter test run uitest --app \"5678999\" --devices \"7738\" --app-path ./iPhone.ipa --test-series \"master \" --locale \"en_US\" --build-dir /iPhone/bin/Debug "

这没有用。

我也试过

StartProcess("./appcenter.ps1");

来自https://cakebuild.net/dsl/process/

任何人都可以建议或提供示例代码如何从 cake 脚本运行 CLI 命令?我需要为 Microsoft Appcenter 工具运行 CLI。

4

2 回答 2

2

在这里,您有几个选择。

如果要继续使用 StartProcess 别名,则需要为其提供要执行的应用程序,在您的情况下为 PowerShell。然后,您要运行的文件可能会成为您传入的参数。因此,您需要执行类似以下操作:

StartProcess("powershell", new ProcessSettings{ Arguments = "./appcenter.ps1" });

注意:这是未经测试的,可能需要进行更改才能使其正常工作。

可以在此处找到有关用于 StartProcess 的重载的更多信息:

https://cakebuild.net/api/Cake.Common/ProcessAliases/81E648CC

第二个,可能是首选选项,是使用 Cake.PowerShell 插件:

https://github.com/SharpeRAD/Cake.Powershell

这将允许您执行以下操作:

StartPowershellFile("./appcenter.ps1");

最后,我“认为”您正在尝试使用此插件中使用的相同端点:

https://github.com/cake-contrib/Cake.WindowsAppStore

也许您可以与该插件的原始作者合作,将其扩展为包含您尝试使用的所需功能。

于 2018-03-22T08:24:07.487 回答
1

经过加里的建议后,我最终使用了StartProcess

StartProcess("appcenter", new ProcessSettings{
                    Arguments = "test run uitest 
                     --app \"MyApp\" 
                     --devices \"45678\" 
                     --app-path /TheApp.ipa  
                     --test-series \"master\" 
                     --locale \"en_US\" 
                     --build-dir /UITest/bin/Debug"
                });
于 2018-03-22T16:45:41.157 回答