0

在 Azure DevOps 中,我有一个发布定义,它执行命令productbuild --component $(System.DefaultWorkingDirectory)/$(RELEASE.PRIMARYARTIFACTSOURCEALIAS)/My/Folder.app/ /Applications My.pkg以从构建的工件开始创建一个新的 pkg 文件。此命令在 Mac 托管代理上执行。

在此处输入图像描述

现在我需要将 pkg 放在我拥有 Azure DevOps 专用代理的 Windows 机器的特定路径上。我的问题是从 Mac 托管机器到具有私人代理的私人机器的复制操作。有没有办法完成这个任务?

谢谢

4

2 回答 2

1

由于您无法移动 pkg 创建来构建管道,因此您需要将其上传到例如 Blob 存储(如果您已经使用 Azure,这应该不是问题),或者上传到 FTP(它可能在您的主机代理上也可能不在)然后您应该触发管道/发布(使用此扩展并传递上传 pkg 文件的 url/位置。

于 2020-12-02T10:25:12.240 回答
0

您可以使用Universal Package task将 pkg 文件发布到发布管道中的 Azure 工件源。然后将 pkg 文件下载到您的私人机器上。请参见以下步骤:

1,从 Azure devops 门户创建Azure Artifacts源。

在此处输入图像描述

2,在您的发布管道中添加通用包任务,以将您的 pkg 文件作为通用包发布到上述工件提要。

- task: UniversalPackages@0
  displayName: 'Universal publish'
  inputs:
    command: publish
    publishDirectory: '$(Build.ArtifactStagingDirectory)/package.pkg'
    vstsFeedPublish: 'FeedId'
    vstsFeedPackagePublish: 'package_name'

3,在您的发布管道阶段添加一个代理作业。并将其配置为在您的私人代理上运行。

然后,您可以在此代理作业中添加通用包任务,以将此 pkg 文件下载到您的私人机器。

在此处输入图像描述

于 2020-12-03T03:36:39.360 回答