【问题标题】:VSTS Online - Copy files from AGENT MACHINE to VSTSVSTS Online - 将文件从 AGENT MACHINE 复制到 VSTS
【发布时间】:2017-11-27 08:11:48
【问题描述】:

我使用 VSTS 在线构建和发布流程。我有两台服务器,它们之间有防火墙(不能只在 Server1 上运行脚本来完成在服务器之间移动文件)。我在两台服务器上都安装了 VSTS 代理,并且每台服务器都分配到 VSTS 中自己的池中。我可以毫无问题地发布到任一服务器。

我无法弄清楚(或者甚至可能)是如何将文件从一个池中的代理复制到 VSTS 的发布工作目录/临时路径(或者甚至更好地从一个池直接复制到另一个代理池)?

例如,我在 Pool1 中有一个 Server1,在 Pool2 中有一个 Server2。对于我的发布步骤,我选择了“在代理上运行”并选择了 Pool1。然后我有一个任务将文件复制到代理并完成它的事情。然后我需要做的是从 Pool1 服务器可访问的路径中将一个 zip 文件下载到 VSTS,然后将该 zip 文件发送到 Pool2 服务器可访问的路径。

是否可以从代理池下载文件?我假设如果我能够让“在 pool1 步骤上运行”将该 zip 文件存储在发布临时路径/工作目录中的某处,我将能够进行 Windows 文件复制以将其从工作目录发送到“运行在 pool2 步骤上”。

【问题讨论】:

    标签: azure-devops azure-pipelines azure-pipelines-release-pipeline


    【解决方案1】:
    • 如果其他机器可以通过 Windows 机器文件复制任务访问。您可以使用Windows Machine File Copy task 将文件从一台机器复制到另一台机器。任务设置如下:

      来源:您要复制的文件的路径,例如$(System.DefaultWorkingDirectory)/build/drop

      机器:您要复制到的另一台机器的 IP。

      管理员登录: ComputerName\AdminUserName.

      密码:管理员用户名的密码。

      目标文件夹:您要将文件复制到的另一台机器的路径。

    • 如果根据防火墙设置仍然无法访问对方机器,可以将文件上传到两台机器都可以访问的地方(如自己的网站或github等),然后使用用于从网站下载文件的 power shell tash。

    【讨论】:

    • 谢谢,但这会从 VSTS 复制到 AGENT ... zip 文件到 VSTS,然后有另一个“在代理任务上运行”(并且可以使用 Windows 机器文件副本)将该 zip 从 VSTS 复制到另一个代理池服务器集
    • 直接使用windows机器文件复制可以将文件从一台机器复制到另一台机器。如果要复制 zip 文件,可以在 windows 机器文件复制任务之前添加存档文件任务。如果您想先将文件上传到 VSTS,然后使用其他代理下载,您可以将 powershell 任务添加到 VSTS git repo 的 commit/push/clone。
    • @MarinaLiu-MSFT:我们如何将文件上传到 GitHub?你能帮我找到解决办法吗?
    【解决方案2】:

    不,没有将文件从代理下载到其他代理的任务,如果这些服务器无法相互连接以上传/下载文件(例如FTP,HTTP),则需要中间服务器

    另一方面,文件不存储在代理池中,它们在代理中,代理池用于组织代理,不同的服务器/代理可以在同一个代理池中,一个服务器也可以在多个代理中游泳池。 Agent pools and queues.

    【讨论】:

    • 从 AGENT 下载到 VSTS 怎么样?例如,我运行一个 powershell 脚本来归档发布文件将要到达的目标文件夹。最好下载该存档并将其与用于发布的发布工件一起存储(即,回滚/发布意外删除了您认为不会删除的文件等)
    • @Vee 工件无法关联到发布(发布中发布工件任务抛出异常),您可以将必要的文件复制到共享文件夹或上传到 FTP 服务器。
    【解决方案3】:

    听起来你要制作一个非常脆的意大利面条式构建。这些需要的文件不能保存在源代码管理中或作为构建的工件吗?这样您就可以克隆/拉取存储库,或者只使用现在预览中的下载工件任务。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-01
      • 1970-01-01
      • 2019-01-22
      • 2018-12-02
      • 2019-01-20
      相关资源
      最近更新 更多