You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/content/docs/reference/tools/tfs-workitemtype-validator-tool/index.md
+84Lines changed: 84 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,12 +20,35 @@ discussionId: 2903
20
20
21
21
{{< class-options >}}
22
22
23
+
## How it Works
24
+
25
+
TfsWorkItemTypeValidatorTool validates work item types and fields between the source and target systems before migration starts. Its purpose is to catch missing types or fields early and stop the migration if the configuration is invalid. Validation now runs at the very beginning of migration, so issues are detected quickly.
26
+
27
+
***Enabled by default**: The tool runs even without configuration. It can be disabled explicitly, in which case a warning will be logged.
28
+
***Validation respects mappings**: Work item type mappings (`IWorkItemTypeMappingTool`) are applied before validation.
29
+
***Validation checks**:
30
+
* Existence of work item types in the target system.
31
+
* Existence of the reflected work item ID field.
32
+
* Existence of source fields in the corresponding target work item type.
33
+
***Failure behaviour**: If validation fails, migration is stopped immediately.
34
+
***Scope control**:
35
+
* Users can configure which work item types to validate. If none are specified, all are validated.
36
+
* Users can configure field mappings per work item type to:
37
+
38
+
* Map a source field to a different target field.
39
+
* Exclude a field from validation (by mapping it to an empty string).
40
+
23
41
## Samples
24
42
25
43
### Sample
26
44
27
45
{{< class-sample sample="sample" >}}
28
46
47
+
48
+
***Enabled**: Controls whether the tool runs (default is `true`).
49
+
***IncludeWorkItemtypes**: Limits validation to specific work item types.
50
+
***FieldMappings**: Defines per-type field mappings or exclusions.
51
+
29
52
### Defaults
30
53
31
54
{{< class-sample sample="defaults" >}}
@@ -41,3 +64,64 @@ discussionId: 2903
41
64
## Schema
42
65
43
66
{{< class-schema >}}
67
+
68
+
69
+
## Log output example
70
+
71
+
```
72
+
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Validating work item types.
73
+
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Source work item types are: Bug, Task, Quality of Service Requirement, User Story, Risk, Test Plan, Test Suite, Code Review Request, Code Review Response, Epic, Feature, Feedback Request, Feedback Response, Impediment, Product Backlog Item, Shared Parameter, Shared Steps, Test Case.
74
+
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Target work item types are: Bug, Code Review Request, Code Review Response, Epic, Feature, Feedback Request, Feedback Response, Shared Steps, Task, Test Case, Test Plan, Test Suite, User Story, Issue, Shared Parameter.
75
+
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Validating work item type 'Feature'
76
+
[10:54:09 WRN] [16.2.10-Local.8-1-gfcb86e55] 'Feature' does not contain reflected work item ID field 'Custom.TfsWorkItemId'.
77
+
[10:54:09 WRN] [16.2.10-Local.8-1-gfcb86e55] Missing field 'Microsoft.VSTS.Common.AcceptanceCriteria' in 'Feature'.
78
+
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Source field name: Microsoft.VSTS.Common.AcceptanceCriteria
79
+
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Field type: Html
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Source field 'Microsoft.VSTS.Common.Prirucka' is mapped as empty string, so it is not validated in target.
97
+
[10:54:09 WRN] [16.2.10-Local.8-1-gfcb86e55] Missing field 'Microsoft.VSTS.Common.StavHelpu' in 'User Story'.
98
+
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Source field name: Microsoft.VSTS.Common.StavHelpu
99
+
[10:54:09 INF] [16.2.10-Local.8-1-gfcb86e55] Field type: String
[10:54:09 ERR] [16.2.10-Local.8-1-gfcb86e55] Some work item types or their fields are not present in the target system (see previous logs). Either add these fields into target work items, or map source fields to other target fields in options (FieldMappings).
0 commit comments