在 Azure DevOps Pipeline 中执行 XSLT

问题描述 投票:0回答:1

我有一个使用 Azure DevOps CICD 构建的 VSTO Visio Addin。

作为管道的一部分,我希望有一个阶段任务来自动执行 XSLT,该 XSLT 将处理各种 Visual Studio *.csproj 文件以生成可以使用 VSTO Addin 进行部署的 JSON。

我开发了一个可以在命令行中正常工作的 XSLT,但是尚不清楚如何自动化 CICD 管道构建。看看 MS 管道任务,我似乎可以实现以下内容:

  • 使用 AzureFunction@1 调用 Azure 函数
  • 使用 InvokeRESTAPI@1 调用 REST API
  • 编写一个可以使用 VSTest@3 调用的 VS 测试

是否有更简单、更轻量级的 CLI 和/或 Powershell 支持?

如有任何想法,我们将不胜感激。

干杯, 安德鲁

azure xslt azure-devops cicd
1个回答
0
投票

这由 Powershell 支持 - 下面是 CICD 任务的示例代码

- task: PowerShell@2
  inputs:
    targetType: 'inline'
    script: |
     $Xslt = New-Object System.Xml.Xsl.XslCompiledTransform
     $PathToXsltFile = "$pwd\transformer.xslt"
     $XsltSettings = New-Object System.Xml.Xsl.XsltSettings
     $XsltSettings.EnableDocumentFunction=1
     $XmlResolver = New-Object System.Xml.XmlUrlResolver
     $Xslt.Load($PathToXsltFile, $XsltSettings, $XmlResolver)
     $Xslt.Transform("$pwd\source.xml", "$pwd\target.xml")
© www.soinside.com 2019 - 2024. All rights reserved.