运行 在 Azure DevOps 中发布期间目标机器上的任务?
Run task on target Machine during release in Azure DevOps?
在我当前的组织中,我们使用 Azure DevOps Server(本地)发布我们的产品。当前的设置是我们在一组 VM 上有一堆构建和发布代理 运行。
我们实际发布到的服务器与 运行 发布和构建代理的机器不同,因此我们最终在发布期间使用大量 "PowerShell on target Machine" 任务来配置和设置我们产品的依赖项。( asp.net 网站在这种情况下)..
然而.. 我觉得奇怪的是,由于这个设置,我们不能真正利用其他任务来设置我们的 environment/target-machines。例如,假设我们想使用 "extract files" 任务,那么这是不可能的,因为提取将发生在我们的代理中而不是在我们的 environment/target 机器中。
我们是否遗漏了什么,或者您实际上应该基本上只使用 "PowerShell on target-machine"-task 来处理这种情况?
您是对的,大部分任务都在 运行安装代理的机器上进行。如果您想 运行 一个 VM 中的代理并使用此代理部署到另一个 VM,您可以使用开箱即用的 PowerShell 在目标机器上或将文件复制到远程机器,或 SSH 任务。
但是,在marketplace you can find many tasks that can do things to remote machines, include zip还是解压文件。
如果可以的话,真的建议在目标机器上安装代理。
在我当前的组织中,我们使用 Azure DevOps Server(本地)发布我们的产品。当前的设置是我们在一组 VM 上有一堆构建和发布代理 运行。 我们实际发布到的服务器与 运行 发布和构建代理的机器不同,因此我们最终在发布期间使用大量 "PowerShell on target Machine" 任务来配置和设置我们产品的依赖项。( asp.net 网站在这种情况下).. 然而.. 我觉得奇怪的是,由于这个设置,我们不能真正利用其他任务来设置我们的 environment/target-machines。例如,假设我们想使用 "extract files" 任务,那么这是不可能的,因为提取将发生在我们的代理中而不是在我们的 environment/target 机器中。
我们是否遗漏了什么,或者您实际上应该基本上只使用 "PowerShell on target-machine"-task 来处理这种情况?
您是对的,大部分任务都在 运行安装代理的机器上进行。如果您想 运行 一个 VM 中的代理并使用此代理部署到另一个 VM,您可以使用开箱即用的 PowerShell 在目标机器上或将文件复制到远程机器,或 SSH 任务。
但是,在marketplace you can find many tasks that can do things to remote machines, include zip还是解压文件。
如果可以的话,真的建议在目标机器上安装代理。