运行 一个 exe 的命令行构建任务

Command line build task to run an exe

我正在考虑将我们的工作从内部 TFS 服务器迁移到 VSTS。我一直在测试 VSTS 构建定义,因为我们使用了一些自定义任务,包括 运行s 一个批处理文件,然后 运行s InnoSetup 生成一个 "setup.exe" 文件.

这可以使用 "command line" 构建任务来实现吗?我知道我们不能在托管代理上安装我们自己的软件,但是我可以 运行 InnoSetup exe 如果它在源代码控制下(即存在于“$(Build.SourcesDirectory)”),或者是否有限制防止 exes 在 VSTS 构建服务器上 运行?

假设这 可能的,批处理文件需要一个参数 - 将创建 setup.exe 的路径。我在这里用什么?

我尝试使用从 "dir" 命令(使用参数作为路径)生成文本文件的批处理文件来模拟我要执行的操作:

dir *.* >%1\test.txt

我使用 $(build.artifactstagingdirectory) 作为命令行任务的参数,但工件中没有 "test.txt" 文件。我想事情没那么简单! (批处理文件 did 运行,因为构建输出显示了我包含的一些 "echo" 命令。

没关系,我意识到我需要将命令行任务放在 "publish artifact" 任务之前。我猜后者负责将所有内容捆绑到工件暂存目录中。

接下来我需要将 InnoSetup exe 添加到源代码管理,看看我是否可以从命令行任务中运行,但这是朝着正确方向迈出的一步...