deployment - TFS Build后如何运行可执行文件

标签 deployment batch-file workflow-activity build-agent

我的任务是:

TFS 构建后

1) 在服务器 X 停止文件 Example.exe 上

2) 将文件从放置位置复制到服务器 X

3)在服务器X上运行全新版本的Example.exe

我正在 TFS 2012、Visual Studio 2012 中更新 DefaultTemplate.xaml。 我正在输入运行 Do.bat 脚本的 InvokeProcess 事件。

我的构建代理将文件复制到服务器 X,然后运行文件\X...\Do.bat

Do.bat 类似于

taskkill /F /IM Example.exe
start \\%~p0Example.exe

所以,问题是Example.exe正在构建代理上运行,而不是在服务器X上运行。

如何使构建代理在另一台服务器上运行可执行文件? 另一个问题 - 是否值得在 TFS Build 中使用 bat 文件作为脚本?

最佳答案

PsExec是一个 SysInternals 工具,它将在远程计算机上运行进程。

PowerShell 还能够 launch a process remotely.

关于您的附加问题,我通常发现更值得自定义我的 tfs 构建,用 C# 编写构建事件和/或使用内置事件并在 xaml 中自定义构建模板。不好玩,但我发现外部脚本会遇到更多权限问题并且难以调试。我已经尝试过它们,然后我通常会回到 C#。

关于deployment - TFS Build后如何运行可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15152491/

相关文章:

SVN:如何知道修订号?

Python fabric "local"函数不遵守环境变量 DJANGO_SETTINGS_MODULE

deployment - 如何使用 Ansible 强制重新安装软件包?

java - 使用 jenkins 执行 .bat 文件

linux - 部署守护进程的过程和位置

windows - 如何从批处理文件 (Windows) 向文本文件添加行号

windows - Base64 编码 "string"- Windows 命令行?

工作流程无代码创作

c# - Windows 工作流 - 终止事件会导致工作流出错?

android - 保存 Activity 状态