用途
该技能用于在 DevOps Center 中创建一个 WorkItem,用来跟踪针对测试失败或 Code Analyzer 违规的修复工作。
前置条件
需先加载 checking-devops-prerequisites(前置条件 1–4)。需要具备 doce-org-alias、用于归档的 DevopsProjectId 以及 OwnerId(负责人)。如果不存在 DevopsProject,需指出在项目存在之前无法创建工作项。
创建前需要的输入
- DevopsProjectId:来自流水线关联的项目;若未知,则在 doce 组织上查询 DevopsProject WHERE Name = '<projectName>'。
- Subject:由失败分析得出,例如 "Fix: Missing code-analyzer-v5.yml workflow in blitz-10-06 repository"。
- OwnerId:要分配的开发者的用户 ID;若未知,则在 doce 组织上查询 SELECT Id, Name FROM User WHERE Username = '<username>'。若用户名未知,询问用户。
- doce-org-alias:在前置条件中已建立。
确认关卡
创建工单前,展示摘要并等待明确确认:
"I'll create a fix work item with the following details:
Subject: <subject>
Assigned to: <assigneeName>
Project: <projectName>
Shall I create it?"
在用户确认之前不得继续。
创建工作项
使用以下命令:
sf data create record
--sobject WorkItem
--values "Subject='<subject>' DevopsProjectId='<DevopsProjectId>' OwnerId='<OwnerId>'"
--target-org <doce-org-alias>
--json
重要:使用 WorkItem(无命名空间)——DevopsWorkItem 在此组织版本中不是受支持的 sObject。
成功后
从结果中解析返回的 id 并确认:
"Fix work item created (<id>): <subject>. Assigned to <assigneeName> in the <projectName> project."
错误处理
切勿暴露原始 API 错误消息。将错误映射为通俗语言响应:
- FIELD_INTEGRITY_EXCEPTION:"The assignee ID is invalid. Let me look up the correct user ID — what's the developer's username?"
- REQUIRED_FIELD_MISSING:"A required field is missing. Check that Subject and DevopsProjectId are both provided."
- INSUFFICIENT_ACCESS:"Your user doesn't have permission to create work items in this project."
- 任何其他错误:"The work item could not be created. Error: <plain summary>. Try again or create it manually in DevOps Center."
相关技能
analyzing-test-failures —— 提供失败分析和改进建议,这些是创建修复工单的动因。
限制
资料未提供其他限制、收费、价格或平台信息。