问题标签 [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.
.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?还是已弃用?
分享下面的示例代码:
任何帮助,将不胜感激。
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 上多次报告,但这不是该问题的正确论坛,因此尚未在那里得到解答。
- https://github.com/microsoft/azure-devops-dotnet-samples/issues/176
- https://github.com/microsoft/azure-devops-dotnet-samples/issues/104
我们如何使用 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 为请求标头显示的内容:
原始回应:
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
?
sql-server - Azure Devops Server - 在特定域帐户下部署数据库更新
在本地/自托管 azure 管道发布任务中,我想通过 sqlpackage.exe 将数据库更新部署到 sql server。
我目前正在使用命令行任务执行此操作。
管理员需要使用与运行管道代理的帐户不同的受信任域帐户连接到 sql server。不同数据库的具体账户会有所不同。(他们不允许使用我可以提供给 sql package.exe 的用户名和密码的 sql server 登录)
因此,在 azure devops 任务中,有没有办法在与运行代理的域帐户不同的域帐户下运行命令(即模拟不同的帐户)?
azure-pipelines - 如何修复端点管理员意外失去权限的端点?
我错误地从 Azure DevOps Server 2019 中的服务连接端点删除了 Endpoint Administrators 组权限。因此,即使我是项目管理员,我也失去了对该端点的管理权限。我在该端点上看不到具有管理员角色的用户。端点的创建者未列在其余用户中。
服务连接的文档没有帮助。我尝试询问 Team Foundation 管理员组中的同事,但他也看到“添加”按钮被禁用,因此他无法重新添加该组。
我是否必须重新创建端点并更改所有管道才能使用新的?或者有没有办法修复旧的?
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) 中的查询时发生超时。重新运行查询
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
powershell - 如何在 My Ansible Playbook 中使用 Azure DevOps 服务器 (TFS) 预定义变量?
我想在我的剧本中使用 Azure DevOps 预定义变量“ $(Build.SourcesDirectory) ”:
这是我的剧本:
我正在使用 Azure DevOps Pipeline 运行这个 ansible-playbook:
但它不工作
有谁知道如何在管道中使用变量?
tfs - Azure DevOps 服务器 - 如何将现有集合/项目迁移到 SCRUM
我们确实将 TFS 2013 Update 2 升级到了 Azure DevOps Server(本地),我们不知道我们的所有集合都使用哪个模板,但我们想将其转换为 SCRUM。
是否可以将我们现有的项目/收藏转换为该模板?
azure-devops-server-2019 - Azure devops 服务器文件系统触发器
我如何在 Azure Devops Server 上实现这一点。我需要根据在特定位置创建文件来触发发布管道。是否有任何扩展可以监视文件系统位置并触发管道。出于其他原因,在此方案中不能选择创建计划以检查该位置是否存在文件。