使用工件文件创建 xml

问题描述

我很难获得有关如何执行此操作的任何信息。

我想在我的构建管道中包含一个任务,该任务创建一个 XML 文件,该文件列出了生成的工件的每个文件以及一些元数据,例如校验和、大小等。

像这样:

<files>
  <file>
    <name>file1.dll</name>
    <path></path>
    <size></size>
    <checksum></checksum>
  </file>
  <file>
    <name>file2.dll</name>
    <path></path>
    <size></size>
    <checksum></checksum>
  </file>
</files>

我想我可能需要使用 powershell 脚本,但是我将如何获取文件列表?我必须遍历列表并使用该列表填充 xml 文件

或者我用什么任务来实现这一目标?

解决方法

将生成的工件文件放在代理上的特定目录中,例如 $(Build.ArtifactStagingDirectory)

在该目录下,您可以尝试以下步骤:

  1. 使用 PowerShell 命令 Get-ChildItem 列出目录和子目录中的所有文件。

    Get-ChildItem -Attributes !Directory -Path path/to/dir -Recurse -Name
    
  2. 在一个循环中,对每个文件做如下操作: