检查 VSTS 中以前的构建信息(VSTS API)

2024-03-23

在执行 VSTS 构建期间是否可以访问以前的构建变量?例如,我可以获得先前构建的 $(Build.SourceVersion) 或 $(Build.QueuedBy) 吗?

我可以通过 $(Build.SourceVersion) 等构建变量获取当前构建信息,但我可以获得 $(Build.Previous.SourceVersion) 之类的信息吗?


之前的构建信息没有内置变量,解决方法是您可以调用构建 REST API https://www.visualstudio.com/en-us/docs/integrate/api/build/builds(可以是在此构建期间通过 PowerShell 筛选状态,例如已完成、进行中)。 (结果第一项为最新的)

$base64authinfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $User, $Password)))
$responseFromGet = Invoke-RestMethod -Method Get -ContentType application/json -Uri $Uri -Headers @{Authorization=("Basic {0}" -f $base64authinfo)}

关于调用REST API的一些文章:使用 PowerShell 调用 VSTS API http://blog.devmatter.com/calling-vsts-apis-with-powershell/, VSTS/TFS REST API:基础知识以及使用构建和发布 http://blog.nwcadence.com/vststfs-rest-api-the-basics-and-working-with-builds-and-releases/

您可以使用的值System.AccessToken变量作为密码(检查允许脚本访问 OAuth 令牌选项在“选项”选项卡中)和用户名可以是任何内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查 VSTS 中以前的构建信息(VSTS API) 的相关文章

  • 如何使用 Azure DevOps REST API 创建新的构建管道?

    我正在尝试以编程方式创建新的构建管道 我正在寻找用于此操作的 Azure DevOps REST API 我没有获得使用 REST API 创建管道的正确示例 请指教 如何使用 Azure DevOps REST API 创建新的构建管道
  • 如何正确设置 Azure DevOps 和 GitHub 之间的双向同步

    我想通过执行以下操作在 Azure DevOps 和 GitHub 之间创建双向同步 使用 CI 触发器创建 Azure DevOps 管道 将更改从 Azure DevOps 存储库推送到 GitHub 中的分支 创建第二个管道 用于侦听
  • 如何将 tfvc 迁移到 Git(包括历史记录)

    我们计划从 tfvc 迁移到 Git 版本控制 我们有一些 GB 的代码和数千个变更集 我阅读了一些文章并浏览了 Microsoft 文档 发现了 2 个选项 提示迁移 我可以在其中使用 Azure Devops 内置工具 导入存储库 它有
  • ng run project:deploy - 项目目标不存在

    我有一个 Angular Web App 的工作生产版本 我的 Azure 帐户 免费套餐 上有一个有效订阅 其中包含 AppService 计划 应用服务 资源组 存储帐户 KeyVault SQL Server 和 SignalR 我想
  • 如何在没有 YAML 的情况下使用代理池下的特定私有代理?

    我在代理池下设置了 2 个私有代理 但是当我运行管道时 我想要一个特定的代理来运行管道 但它没有发生 如何选择或在何处选择特定代理来使用 YAML 配置运行管道 您需要使用您想要的代理名称来指定需求 您可以在 yaml 中的池名称后输入需求
  • 将文件提交到不同的分支而不进行签出

    是否可以在 git 分支中提交文件而不检出该分支 如果是这样怎么办 本质上 我希望能够将文件保存在我的 github Pages 分支中 而无需一直切换分支 有什么想法吗 我需要以原子方式完成此操作 而不更改当前目录 因此多个命令将无法工作
  • VSTS 任务组 Powershell 参数

    我使用具有四个参数的 Azure Powershell 任务内联脚本创建了 VSTS 任务组 我已将此任务组添加到发布定义并配置参数 当我尝试释放时失败并出现以下错误 2018 03 23T10 28 42 2811600Z 错误 在 C
  • 使用 git 组织多个项目的最佳方式是什么

    我有 5 10 个独立项目 希望使用 Git 将其置于版本控制之下 组织项目 存储库的最佳方式是什么 每个项目使用一个存储库 对我的所有工作使用一个存储库 并为每个项目使用子目录 或者完全不同的东西 什么对你最有效 为什么 我肯定会说每个项
  • 如何从 Emacs 中检出 Perforce 下的文件?

    我在工作中使用 Perforce 进行源代码控制 并且希望从 Emacs 中 打开以进行编辑 源代码控制下的文件 那怎么办呢 我需要在 Emacs 中设置什么 有插件吗 我还想执行其他 p4 操作 例如提交我的更改等 Perforce Em
  • Mac OSX 上有哪些与 TortoiseSVN 等效的软件? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何进行永久本地提交或更改

    我已经更改了我的项目的文件 配置文件 我希望此更改仅是本地的 因此从准备提交的更改列表中消失 有什么简单的方法可以做到这一点吗 请注意 配置文件定期存储在存储库中 一种方法是 git update index assume unchange
  • 如何从现有 git 存储库中的文件夹创建新的 git 存储库?

    我想在现有 git 存储库下的文件夹中创建一个新的 git 存储库 我希望将历史记录保留在新存储库中 如何创建这个新的 git 存储库 您可以克隆它 然后在克隆上应用过滤器分支 以便拆分该存储库 仅提取所需的目录 及其完整历史记录 See
  • 在 Databricks 集群上 pip-install 来自 Azure Artefact 的 Python 包

    我有一个小型演示包 已将其发布到 Azure Devops 我可以通过启动虚拟环境并将特定的全局设置添加到我的本地环境中来进行 pip 安装 pip conf file 现在 我想将其安装到我的 databricks 集群中 我无法找到任何
  • Visual Studio Team Services 持续集成:NuGet 恢复任务失败

    我正在使用 Team Services 中的持续集成功能 以前是 Visual Studio Online 我的构建定义针对解决方案 而不是整个解决方案 中的特定项目 即 ClientUI MVC 网站 该解决方案包含三个项目 Client
  • AzDo 同时拉入 2 个不同的远程/目标分支

    我们有2个分行 Master 发展 Development总是等于Master并部署直到Non Prd环境和功能基于Development分支 因此 当 PRD 中出现错误并需要修复时 我们会在 PRD 之外创建一个新分支Master并将其
  • 如何使用 Azure DevOps 的 python 客户端 API 将用户添加到 Azure DevOps?

    我正在编写一个 python 脚本来将用户 来自 AAD 支持的提供商的现有用户 添加到 Azure DevOps 我正在使用 Azure DevOps 的 python 客户端库来实现此目的 身份验证后 我可以从 azure devops
  • TFS 在线构建在具有 TF270016 / TF270002 的本地构建服务器上失败

    我们使用 Visual Studio Online 但我们有本地构建控制器和构建代理 在过去 6 个月左右的时间里 它一直运行良好 但就在本周 构建一直失败 软件本身似乎构建成功 测试似乎也通过了 但由于发布日志文件期间出现错误而失败 请参
  • 提交项目时我应该包含 .project 和 .classpath 吗?

    当我将 Web 应用程序提交到源代码管理时 我还应该包含 project 和 classpath 文件吗 我不认为这应该有任何区别 因为使用该项目的其他用户应该具有相同的项目设置 这种问题会让人们在一场永无休止的辩论中陷入困境 你基本上有两
  • 删除生成的 Javadoc 中的注释“Generate by Javadoc on

    javadoc 命令会自动插入一条注释 如下所示 在每个生成的 HTML 文件中 这完全阻止了版本化 javadoc 的更改跟踪 因为在重新生成文档时每个文件都会被修改 我问的上一个问题说服我不要对任何 javadoc 进行版本控制 但它也
  • 有没有可以在 HTML 文档之间进行比较的 ruby​​ gem?

    事实证明 对两个不同的 html 文档进行比较是一个完全不同的问题 而不仅仅是对纯文本进行比较 例如 如果我在以下之间进行简单的 LCS 差异 Google and Google diff 结果不是 but a gt github com

随机推荐