问题标签 [azure-devops-server-2019]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
142 浏览

.net - 未捕获 ISubscriber 项目创建事件

我们有一个自定义服务器端 tfs 插件,它部署在 Azure DevOps Server 2019\Application Tier\Web Services\bin\Plugins 下。插件中有两个订阅者,一个订阅 WorkItemChangedEvent,另一个订阅 ProjectCreatedEvent。

WorkItemChangedEvent 订阅者按预期工作,不幸的是 ProjectCreatedEvent 订阅者没有。附加到 w3wp.exe 进程后尝试调试代码,但从未调用 ProcessEvent 方法。

我正在使用默认的项目创建向导通过浏览器创建一个项目。

我是否为此事件 Microsoft.TeamFoundation.Server.ProjectCreatedEvent 使用了正确的 dll?还是已弃用?

分享下面的示例代码:

任何帮助,将不胜感激。

0 投票
2 回答
1404 浏览

azure-devops - 大型 Azure DevOps(和 Azure DevOps Server 2019)变更集因“请求实体太大”而失败

尝试使用 REST API 将大型二进制文件添加到 Azure DevOps 时,我们似乎遇到了限制。相同的文件签入使用旧的 SOAP API 可以正常工作,也可以使用 TFVC CLI (tf.exe)。但是我们有一个用例,我们需要偶尔从没有安装 VS 的机器上以编程方式签入大文件。我们正在尝试将我们的应用程序从旧的 SOAP API 迁移到 REST API,因为我们正在迁移到不支持 SOAP API 的 .NET Core。

对带有大(> 约 19 MB)文件的 /_apis/tfvc/changesets(创建变更集)API 的 POST 会导致:

HTTP 400:错误请求

此问题已在 Azure DevOps .NET Samples github repo 上多次报告,但这不是该问题的正确论坛,因此尚未在那里得到解答。

我们如何使用 REST API 在 TFVC 中创建大文件?

更新 2020-01-13

这是我们用来演示问题的示例控制台应用程序:

对 Azure DevOps TFVC 存储库运行带有 ~50MB zip 文件的此控制台应用程序会导致VssServiceResponseException(带有 inner ArgumentException)消息为:The maximum request size of 26214400 bytes was exceeded

2020-01-14 更新

  • 在我的示例代码中发送 TFVC 请求之前添加了文件大小和 base64 内容长度的显示。
  • 更正了我对文件大小限制的观察。
  • 更正了 Azure DevOps 返回的错误代码(400,而不是 413)。

最初我说限制是 13 MB 左右。这是基于我看到的文件 > 20 MB 的失败、文件 < 大约 10 MB 的成功以及链接的 github 问题中描述的限制。

我自己进行了更多测试,并缩小了大约 19,200 KB 作为实际限制。根据指示 26,214,400 字节限制的错误消息,这似乎是正确的。一个 19 MB 的 base-64 编码文件将扩展到大约 26 MB。

我还在最近的测试中注意到,在使用 Fiddler 进行监视时,Azure DevOps 返回了 400 状态代码(而不是 413)。我的笔记表明在过去的某个时候观察到了 413 Request Entity Too Large。也许这与旧版本的 Azure DevOps 服务器有关?无论如何,我们现在看到的错误是 400 Bad Request。

这是 Fiddler 为请求标头显示的内容:

原始回应:

0 投票
2 回答
1100 浏览

git - 无法将 TFVC 从其他项目集合迁移到 GIT

在 Azure DevOps Server 2019(本地)中,我们有一个项目集合和一个大项目。但是性能真的很差。

我们想把这个大项目拆分成许多小项目:

  • 一个团队的项目集合
  • 一个项目一个产品

我有一个重复的环境要测试。在同一个组织中,我用 Git 创建了一个项目“Product1”的集合。在 Azure DevOps with the toolImport from TFVC中,我选择 TFVC,输入 Path$/BigProject/Team1/Product1/Main并取消选中 Migrate with history。我收到此错误:

VSTS 将我重定向到https://go.microsoft.com/fwlink/?linkid=839462但没有关于此错误的描述,它是一般导入指南。

我想我需要精确的路径中的集合。然后我尝试:

但我有同样的错误。

我知道我们可以像Unable to perform TFVC to GIT import on VSTS一样手动迁移,我将为我的团队执行此操作。但是对于其他团队来说,最好有一个简单的工具。

如何使用该工具导入其他集合中的 TFVC 项目 Git 项目Import from TFVC

0 投票
0 回答
200 浏览

sql-server - Azure Devops Server - 在特定域帐户下部署数据库更新

在本地/自托管 azure 管道发布任务中,我想通过 sqlpackage.exe 将数据库更新部署到 sql server。

我目前正在使用命令行任务执行此操作。

管理员需要使用与运行管道代理的帐户不同的受信任域帐户连接到 sql server。不同数据库的具体账户会有所不同。(他们不允许使用我可以提供给 sql package.exe 的用户名和密码的 sql server 登录)

因此,在 azure devops 任务中,有没有办法在与运行代理的域帐户不同的域帐户下运行命令(即模拟不同的帐户)?

0 投票
1 回答
499 浏览

azure-pipelines - 如何修复端点管理员意外失去权限的端点?

我错误地从 Azure DevOps Server 2019 中的服务连接端点删除了 Endpoint Administrators 组权限。因此,即使我是项目管理员,我也失去了对该端点的管理权限。我在该端点上看不到具有管理员角色的用户。端点的创建者未列在其余用户中。

服务连接的文档没有帮助。我尝试询问 Team Foundation 管理员组中的同事,但他也看到“添加”按钮被禁用,因此他无法重新添加该组。

我是否必须重新创建端点并更改所有管道才能使用新的?或者有没有办法修复旧的?

Service Connections 菜单的屏幕截图,显示端点只有两个用户,都是角色 User,以及消息:您无权管理此服务连接的角色。 其中一位用户是 Release Administrators 组。

0 投票
1 回答
471 浏览

azure - 尝试在 Azure DevOps Server 2019 中创建团队项目集合时出错

我似乎无法获得在 Azure DevOps Server 2019 中创建的第一个项目集合。

创建过程不断超时(在一小时范围内)并声明它无法连接到数据库,但很明显它已在创建过程中的第 67 步之前连接,这是它超时的地方。

这是我尝试过的:

使用2台机器:

一台机器安装了 Azure DevOps Server 2019 和 SQL 2017(带 SSMS),配置如下

  • 4G内存
  • 现在硬盘上至少有 12 G 可用空间(将增加)

第二台机器将容纳构建服务器

来自日志的错误:

在 ExecuteScripts 中捕获异常:Microsoft.TeamFoundation.Framework.Server.DatabaseRuntimeException:TF246017:Azure DevOps Server 无法连接到数据库。验证是否正确指定了实例,托管数据库的服务器是否正常运行,以及网络问题是否不会阻止与服务器的通信。---> System.Data.SqlClient.SqlException: 等待内存资源执行资源池“内部”(1) 中的查询时发生超时。重新运行查询

0 投票
2 回答
1424 浏览

npm - Azure 工件私有 npm 源身份验证失败

几个月前,我在 Azure Artifacts 中创建了一个私有 npm 源。使用此提要进行身份验证工作正常。

最近,其他人已经开始使用此提要,但使用他们从 Azure Artifacts 生成的令牌对他们来说身份验证不起作用。npm安装时出现以下错误

npm 错误!无法进行身份验证,您的身份验证令牌似乎是

无效的。npm 错误!要更正此问题,请尝试再次登录:

npm 错误!npm 登录

在 npm 调试日志中有这个错误

详细堆栈错误:无法验证,需要:Bearer,Basic realm="{{redacted url}}",NTLM


看来,我们放在全局 .npmrc 文件中的身份验证令牌的结构在 Azure Artifacts 中发生了变化

从:

当使用第二个令牌(或者实际上是我现在从 Azure Artifacts 生成的任何令牌)时,我们不能npm install,我们得到上面显示的错误。如果其他人使用与我相同的令牌(以旧格式),则可以正常工作。但是这个令牌很快就会过期。

我尝试提供一个电子邮件地址而不是字符串“npm 需要设置电子邮件但不使用该值”,但这也不起作用。

这可能无关,但我们最近从 tfs 版本 16.131.28507.4 升级到 Azure Devops Server 版本 Dev17.M153.3。

有谁知道为什么身份验证令牌格式发生了变化?和/或如何使新令牌与我的私人提要一起使用?


npm 版本:6.13.0

节点版本:10.12.0

Azure Devops 服务器版本:Dev17.M153.3

0 投票
2 回答
1306 浏览

powershell - 如何在 My Ansible Playbook 中使用 Azure DevOps 服务器 (TFS) 预定义变量?

我想在我的剧本中使用 Azure DevOps 预定义变量“ $(Build.SourcesDirectory) ”:

这是我的剧本:

我正在使用 Azure DevOps Pipeline 运行这个 ansible-playbook:

TFS 管道任务

但它不工作

有谁知道如何在管道中使用变量?

0 投票
1 回答
470 浏览

tfs - Azure DevOps 服务器 - 如何将现有集合/项目迁移到 SCRUM

我们确实将 TFS 2013 Update 2 升级到了 Azure DevOps Server(本地),我们不知道我们的所有集合都使用哪个模板,但我们想将其转换为 SCRUM。

是否可以将我们现有的项目/收藏转换为该模板?

0 投票
1 回答
44 浏览

azure-devops-server-2019 - Azure devops 服务器文件系统触发器

我如何在 Azure Devops Server 上实现这一点。我需要根据在特定位置创建文件来触发发布管道。是否有任何扩展可以监视文件系统位置并触发管道。出于其他原因,在此方案中不能选择创建计划以检查该位置是否存在文件。