-
-
Notifications
You must be signed in to change notification settings - Fork 329
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Release v15! Query and CommonEnrichersConfig changes #1889
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This update is a +semver: major change. There are many config changes! **Change 1:** Updates all Processors to use only `CommonEnrichersConfig` and removes inline options. _Only options set in `CommonEnrichersConfig` will be honored._ This will minimise the number of configuration options for processors, and reduce confusion and support tickets. 1. `TfsNodeStructureOptions` has been made the default so `AreaMaps`, `IterationMaps`, `NodeBasePaths`, `PrefixProjectToNodes`, `ShouldCreateMissingRevisionPaths`, and `ReplicateAllExistingNodes` are all removed from `WorkItemMigrationContext` and must instead be added to `CommonEnrichersConfig` in line with [TfsNodeStructure](https://nkdagility.com/learn/azure-devops-migration-tools/Reference/v2/ProcessorEnrichers/TfsNodeStructure/). The documentation for `AreaMaps`, `IterationMaps`, `NodeBasePaths` has all been moved here. 2. `TfsRevisionManagerOptions` has been made default so `ReplayRevisions` and `MaxRevisions` is now only configurable by adding a `TfsRevisionManagerOptions` section to `CommonEnrichersConfig`. See [TfsRevisionManagerOptions](https://nkdagility.com/learn/azure-devops-migration-tools/Reference/v2/ProcessorEnrichers/TfsRevisionManager/) 3. 'TfsWorkItemLinkEnricherOptions' has been made the default moving its option `FilterIfLinkCountMatches`, and `SaveAfterEachLinkIsAdded` to `CommonEnrichersConfig`. See [TfsWorkItemLinkEnricherOptions](https://nkdagility.com/learn/azure-devops-migration-tools/Reference/v2/ProcessorEnrichers/TfsWorkItemLinkEnricher/) ``` "CommonEnrichersConfig": [ { "$type": "TfsNodeStructureOptions", "PrefixProjectToNodes": false, "NodeBasePaths": [], "AreaMaps": { "^Skypoint Cloud$": "MigrationTest5" }, "IterationMaps": { "^Skypoint Cloud\\\\Sprint 1$": "MigrationTest5\\Sprint 1" }, "ShouldCreateMissingRevisionPaths": true, "ReplicateAllExistingNodes": true }, { "$type": "TfsWorkItemLinkEnricherOptions", "Enabled": true, "FilterIfLinkCountMatches": true, "SaveAfterEachLinkIsAdded": false }, { "$type": "TfsRevisionManagerOptions", "Enabled": true, "ReplayRevisions": true, "MaxRevisions": 0 } ], ``` **Change 2:** Update the Query system to no longer have two parts that are added together. All queries are now the full query. There are no docs on this but a typical query now looks like: ``` "WIQLQuery": "SELECT [System.Id] FROM WorkItems WHERE [System.TeamProject] = @teamproject AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') ORDER BY [System.ChangedDate] desc", ```
MrHinsh
temporarily deployed
to
nakedalmweb-githubSDK
January 30, 2024 14:39
— with
GitHub Actions
Inactive
MrHinsh
temporarily deployed
to
nakedalmweb-githubSDK
January 30, 2024 20:00
— with
GitHub Actions
Inactive
MrHinsh
temporarily deployed
to
nakedalmweb-githubSDK
February 5, 2024 16:52
— with
GitHub Actions
Inactive
This should truncate longTest fields to the max length and resolve #1861
MrHinsh
temporarily deployed
to
nakedalmweb-githubSDK
February 5, 2024 17:07
— with
GitHub Actions
Inactive
This was
linked to
issues
Feb 5, 2024
MrHinsh
temporarily deployed
to
nakedalmweb-githubSDK
February 6, 2024 11:37
— with
GitHub Actions
Inactive
MrHinsh
added a commit
that referenced
this pull request
Mar 4, 2024
This update is a +semver: major change. There are many config changes! **Change 1:** Updates all Processors to use only `CommonEnrichersConfig` and removes inline options. _Only options set in `CommonEnrichersConfig` will be honored._ This will minimise the number of configuration options for processors, and reduce confusion and support tickets. 1. `TfsNodeStructureOptions` has been made the default so `AreaMaps`, `IterationMaps`, `NodeBasePaths`, `PrefixProjectToNodes`, `ShouldCreateMissingRevisionPaths`, and `ReplicateAllExistingNodes` are all removed from `WorkItemMigrationContext` and must instead be added to `CommonEnrichersConfig` in line with [TfsNodeStructure](https://nkdagility.com/learn/azure-devops-migration-tools/Reference/v2/ProcessorEnrichers/TfsNodeStructure/). The documentation for `AreaMaps`, `IterationMaps`, `NodeBasePaths` has all been moved here. 2. `TfsRevisionManagerOptions` has been made default so `ReplayRevisions` and `MaxRevisions` is now only configurable by adding a `TfsRevisionManagerOptions` section to `CommonEnrichersConfig`. See [TfsRevisionManagerOptions](https://nkdagility.com/learn/azure-devops-migration-tools/Reference/v2/ProcessorEnrichers/TfsRevisionManager/) 3. 'TfsWorkItemLinkEnricherOptions' has been made the default moving its option `FilterIfLinkCountMatches`, and `SaveAfterEachLinkIsAdded` to `CommonEnrichersConfig`. See [TfsWorkItemLinkEnricherOptions](https://nkdagility.com/learn/azure-devops-migration-tools/Reference/v2/ProcessorEnrichers/TfsWorkItemLinkEnricher/) ``` "CommonEnrichersConfig": [ { "$type": "TfsNodeStructureOptions", "PrefixProjectToNodes": false, "NodeBasePaths": [], "AreaMaps": { "^Skypoint Cloud$": "MigrationTest5" }, "IterationMaps": { "^Skypoint Cloud\\\\Sprint 1$": "MigrationTest5\\Sprint 1" }, "ShouldCreateMissingRevisionPaths": true, "ReplicateAllExistingNodes": true }, { "$type": "TfsWorkItemLinkEnricherOptions", "Enabled": true, "FilterIfLinkCountMatches": true, "SaveAfterEachLinkIsAdded": false }, { "$type": "TfsRevisionManagerOptions", "Enabled": true, "ReplayRevisions": true, "MaxRevisions": 0 } ], ``` **Change 2:** Update the Query system to no longer have two parts that are added together. All queries are now the full query. There are no docs on this but a typical query now looks like: ``` "WIQLQuery": "SELECT [System.Id] FROM WorkItems WHERE [System.TeamProject] = @teamproject AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') ORDER BY [System.ChangedDate] desc", ``` **Change 3:** Added a String Manipulator to combat the new 100000 max string length and the inability of the ObjectModel to support special chars: ``` { "$type": "StringManipulatorEnricherOptions", "Enabled": true, "MaxStringLength": 1000000, "Manipulators": [ { "$type": "RegexStringManipulator", "Enabled": false, "Pattern": "[^( -~)\n\r\t]+", "Replacement": "", "Description": "Remove invalid characters from the end of the string" } ] } ``` Real version of #1889 --------- Co-authored-by: Nico Orschel <norschel@users.noreply.github.com> Co-authored-by: Tom Frenzel <40773830+tomfrenzel@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This update is a +semver: major change. There are many config changes!
Change 1: Updates all Processors to use only
CommonEnrichersConfig
and removes inline options. Only options set inCommonEnrichersConfig
will be honored.This will minimise the number of configuration options for processors, and reduce confusion and support tickets.
TfsNodeStructureOptions
has been made the default soAreaMaps
,IterationMaps
,NodeBasePaths
,PrefixProjectToNodes
,ShouldCreateMissingRevisionPaths
, andReplicateAllExistingNodes
are all removed fromWorkItemMigrationContext
and must instead be added toCommonEnrichersConfig
in line with TfsNodeStructure. The documentation forAreaMaps
,IterationMaps
,NodeBasePaths
has all been moved here.TfsRevisionManagerOptions
has been made default soReplayRevisions
andMaxRevisions
is now only configurable by adding aTfsRevisionManagerOptions
section toCommonEnrichersConfig
. See TfsRevisionManagerOptionsFilterIfLinkCountMatches
, andSaveAfterEachLinkIsAdded
toCommonEnrichersConfig
. See TfsWorkItemLinkEnricherOptionsChange 2: Update the Query system to no longer have two parts that are added together. All queries are now the full query. There are no docs on this but a typical query now looks like: