Skip to content

Commit 4a21a9d

Browse files
authored
Update TfsWorkItemTypeValidatorTool documentation (#3055)
Update documentation of `TfsWorkItemTypeValidator` [based on this issue](#2903 (comment)). <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Renamed configuration key to ExcludeWorkItemTypes and replaced per-field mappings with per-work-item-type excluded-field lists (ExcludeSourceFields). * Added ExcludeDefaultWorkItemTypes and ExcludeWorkItemTypes entries to control which types are skipped. * **Documentation** * Updated docs and schema defaults to describe the new ExcludeSourceFields structure, wildcard support and updated default values. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2 parents d3570a6 + acf4a78 commit 4a21a9d

File tree

5 files changed

+35
-37
lines changed

5 files changed

+35
-37
lines changed

appsettings.json

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -181,10 +181,9 @@
181181
},
182182
"TfsWorkItemTypeValidatorTool": {
183183
"Enabled": true,
184-
"ExcludeWorkItemtypes": [],
184+
"ExcludeWorkItemTypes": [],
185185
"ExcludeDefaultWorkItemTypes": true,
186-
"SourceFieldMappings": [],
187-
"FixedTargetFields": []
186+
"ExcludeSourceFields": {}
188187
}
189188
},
190189
"CommonToolSamples": {
@@ -196,15 +195,13 @@
196195
},
197196
"TfsWorkItemTypeValidatorTool": {
198197
"Enabled": true,
199-
"ExcludeWorkItemtypes": [
200-
],
201-
"SourceFieldMappings": {
202-
"User Story": {
203-
"Microsoft.VSTS.Common.Prirucka": "Custom.Prirucka"
204-
}
205-
},
206-
"FixedTargetFields": {
207-
"User Story": ["Custom.Prirucka"]
198+
"ExcludeWorkItemTypes": [],
199+
"ExcludeDefaultWorkItemTypes": true,
200+
"ExcludeSourceFields": {
201+
"Bug": [
202+
"Microsoft.VSTS.Common.AcceptanceCriteria",
203+
"Microsoft.VSTS.Scheduling.Effort"
204+
]
208205
}
209206
},
210207
"FieldMappingTool": {

docs/data/classes/reference.tools.tfsworkitemtypevalidatortool.yaml

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,8 @@ configurationSamples:
1212
"TfsWorkItemTypeValidatorTool": {
1313
"Enabled": "True",
1414
"ExcludeDefaultWorkItemTypes": "True",
15-
"ExcludeWorkItemtypes": null,
16-
"FixedTargetFields": null,
17-
"SourceFieldMappings": null
15+
"ExcludeSourceFields": null,
16+
"ExcludeWorkItemTypes": null
1817
}
1918
}
2019
}
@@ -30,17 +29,14 @@ configurationSamples:
3029
"CommonTools": {
3130
"TfsWorkItemTypeValidatorTool": {
3231
"Enabled": "True",
33-
"ExcludeWorkItemtypes": null,
34-
"FixedTargetFields": {
35-
"User Story": [
36-
"Custom.Prirucka"
32+
"ExcludeDefaultWorkItemTypes": "True",
33+
"ExcludeSourceFields": {
34+
"Bug": [
35+
"Microsoft.VSTS.Common.AcceptanceCriteria",
36+
"Microsoft.VSTS.Scheduling.Effort"
3737
]
3838
},
39-
"SourceFieldMappings": {
40-
"User Story": {
41-
"Microsoft.VSTS.Common.Prirucka": "Custom.Prirucka"
42-
}
43-
}
39+
"ExcludeWorkItemTypes": null
4440
}
4541
}
4642
}
@@ -56,7 +52,12 @@ configurationSamples:
5652
"IncludeWorkItemTypes": [],
5753
"ExcludeWorkItemTypes": [],
5854
"ExcludeDefaultWorkItemTypes": true,
59-
"ExcludeSourceFields": {}
55+
"ExcludeSourceFields": {
56+
"Bug": [
57+
"Microsoft.VSTS.Common.AcceptanceCriteria",
58+
"Microsoft.VSTS.Scheduling.Effort"
59+
]
60+
}
6061
}
6162
sampleFor: MigrationTools.Tools.TfsWorkItemTypeValidatorToolOptions
6263
description: >-
@@ -83,13 +84,13 @@ options:
8384
- parameterName: ExcludeSourceFields
8485
type: Dictionary
8586
description: >-
86-
List of fields in source work itemt types, that are excluded from validation.
87+
List of fields in source work item types, that are excluded from validation.
8788
Fields excluded from validation are still validated and all found issues are logged.
8889
But the result of the validation is 'valid' and the issues are logged as information instead of warning.
8990
90-
The key is the source work item type name.
91-
You can also use `*` to exclude fields from all source work item types.
92-
defaultValue: null
91+
The key is the source work item type name. The value is list of fields' reference names which are excluded.
92+
You can also use `*` as key to exclude fields from all source work item types.
93+
defaultValue: Empty dictionary
9394
isRequired: false
9495
dotNetType: System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Collections.Generic.List`1[[System.String, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e
9596
- parameterName: ExcludeWorkItemTypes

docs/static/schema/configuration.schema.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2473,9 +2473,9 @@
24732473
"type": "boolean"
24742474
},
24752475
"ExcludeSourceFields": {
2476-
"description": "List of fields in source work itemt types, that are excluded from validation.\r\n Fields excluded from validation are still validated and all found issues are logged.\r\n But the result of the validation is 'valid' and the issues are logged as information instead of warning.\r\n\n The key is the source work item type name.\r\n You can also use `*` to exclude fields from all source work item types.",
2476+
"description": "List of fields in source work item types, that are excluded from validation.\r\n Fields excluded from validation are still validated and all found issues are logged.\r\n But the result of the validation is 'valid' and the issues are logged as information instead of warning.\r\n\n The key is the source work item type name. The value is list of fields' reference names which are excluded.\r\n You can also use `*` as key to exclude fields from all source work item types.",
24772477
"type": "object",
2478-
"default": "null",
2478+
"default": "Empty dictionary",
24792479
"additionalProperties": {
24802480
"type": "array",
24812481
"prefixItems": [

docs/static/schema/schema.tools.tfsworkitemtypevalidatortool.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@
1515
"type": "boolean"
1616
},
1717
"ExcludeSourceFields": {
18-
"description": "List of fields in source work itemt types, that are excluded from validation.\r\n Fields excluded from validation are still validated and all found issues are logged.\r\n But the result of the validation is 'valid' and the issues are logged as information instead of warning.\r\n\n The key is the source work item type name.\r\n You can also use `*` to exclude fields from all source work item types.",
18+
"description": "List of fields in source work item types, that are excluded from validation.\r\n Fields excluded from validation are still validated and all found issues are logged.\r\n But the result of the validation is 'valid' and the issues are logged as information instead of warning.\r\n\n The key is the source work item type name. The value is list of fields' reference names which are excluded.\r\n You can also use `*` as key to exclude fields from all source work item types.",
1919
"type": "object",
20-
"default": "null"
20+
"default": "Empty dictionary"
2121
},
2222
"ExcludeWorkItemTypes": {
2323
"description": "List of work item types which will be excluded from validation.",

src/MigrationTools.Clients.TfsObjectModel/Tools/TfsWorkItemTypeValidatorToolOptions.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,16 +43,16 @@ public class TfsWorkItemTypeValidatorToolOptions : ToolOptions
4343

4444
/// <summary>
4545
/// <para>
46-
/// List of fields in source work itemt types, that are excluded from validation.
46+
/// List of fields in source work item types, that are excluded from validation.
4747
/// Fields excluded from validation are still validated and all found issues are logged.
4848
/// But the result of the validation is 'valid' and the issues are logged as information instead of warning.
4949
/// </para>
5050
/// <para>
51-
/// The key is the source work item type name.
52-
/// You can also use <c>*</c> to exclude fields from all source work item types.
51+
/// The key is the source work item type name. The value is list of fields' reference names which are excluded.
52+
/// You can also use <c>*</c> as key to exclude fields from all source work item types.
5353
/// </para>
5454
/// </summary>
55-
/// <default>null</default>
55+
/// <default>Empty dictionary</default>
5656
public Dictionary<string, List<string>> ExcludeSourceFields { get; set; } = [];
5757

5858
/// <summary>

0 commit comments

Comments
 (0)