diff --git a/docs/Reference/Generated/MigrationTools.xml b/docs/Reference/Generated/MigrationTools.xml index 02a559b52..d7069fc85 100644 --- a/docs/Reference/Generated/MigrationTools.xml +++ b/docs/Reference/Generated/MigrationTools.xml @@ -279,27 +279,27 @@ - => @"d7406e1" + => @"2c1a6e6" - => @"d7406e10e2b9d09e8de81a7c8b46140b26729d28" + => @"2c1a6e616133abcfd770bf34ac958eb46ffcd977" - => @"2024-08-19T15:20:41+01:00" + => @"2024-08-19T15:39:29+01:00" - => @"127" + => @"130" - => @"v15.1.8-Preview.9-127-gd7406e1" + => @"v15.1.8-Preview.9-130-g2c1a6e6" @@ -334,7 +334,7 @@ - => @"135" + => @"138" diff --git a/docs/_data/reference.fieldmaps.fieldclearmapoptions.yaml b/docs/_data/reference.fieldmaps.fieldclearmapoptions.yaml new file mode 100644 index 000000000..65b2431a2 --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldclearmapoptions.yaml @@ -0,0 +1,54 @@ +optionsClassName: FieldClearMapOptions +optionsClassFullName: MigrationTools.Tools.FieldClearMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldClearMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldClearMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldClearMapOptions", + "WorkItemTypeName": null, + "targetField": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldClearMapOptions +description: Allows you to set an already populated field to Null. This will only work with fields that support null. +className: FieldClearMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldClearMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldClearMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.fieldliteralmapoptions.yaml b/docs/_data/reference.fieldmaps.fieldliteralmapoptions.yaml new file mode 100644 index 000000000..133de44c6 --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldliteralmapoptions.yaml @@ -0,0 +1,59 @@ +optionsClassName: FieldLiteralMapOptions +optionsClassFullName: MigrationTools.Tools.FieldLiteralMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldLiteralMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldLiteralMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldLiteralMapOptions", + "WorkItemTypeName": null, + "targetField": null, + "value": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldLiteralMapOptions +description: Sets a field on the `target` to b a specific value. +className: FieldLiteralMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: value + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldLiteralMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldLiteralMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.fieldmergemapoptions.yaml b/docs/_data/reference.fieldmaps.fieldmergemapoptions.yaml new file mode 100644 index 000000000..949167b50 --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldmergemapoptions.yaml @@ -0,0 +1,64 @@ +optionsClassName: FieldMergeMapOptions +optionsClassFullName: MigrationTools.Tools.FieldMergeMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldMergeMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldMergeMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldMergeMapOptions", + "WorkItemTypeName": null, + "sourceFields": null, + "targetField": null, + "formatExpression": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldMergeMapOptions +description: Ever wanted to merge two or three fields? This mapping will let you do just that. +className: FieldMergeMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: formatExpression + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: sourceFields + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldMergeMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldMergeMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.fieldskipmapoptions.yaml b/docs/_data/reference.fieldmaps.fieldskipmapoptions.yaml new file mode 100644 index 000000000..1b6061376 --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldskipmapoptions.yaml @@ -0,0 +1,54 @@ +optionsClassName: FieldSkipMapOptions +optionsClassFullName: MigrationTools.Tools.FieldSkipMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldSkipMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldSkipMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldSkipMapOptions", + "WorkItemTypeName": null, + "targetField": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldSkipMapOptions +description: Allows you to skip populating an existing field. Value in target with be reset to its OriginalValue. +className: FieldSkipMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldSkipMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldSkipMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.fieldtofieldmapoptions.yaml b/docs/_data/reference.fieldmaps.fieldtofieldmapoptions.yaml new file mode 100644 index 000000000..e8e7dcfd2 --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldtofieldmapoptions.yaml @@ -0,0 +1,64 @@ +optionsClassName: FieldtoFieldMapOptions +optionsClassFullName: MigrationTools.Tools.FieldtoFieldMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldtoFieldMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldtoFieldMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldtoFieldMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "targetField": null, + "defaultValue": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldtoFieldMapOptions +description: Just want to map one field to another? This is the one for you. +className: FieldtoFieldMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: defaultValue + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoFieldMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoFieldMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.fieldtofieldmultimapoptions.yaml b/docs/_data/reference.fieldmaps.fieldtofieldmultimapoptions.yaml new file mode 100644 index 000000000..a3eada537 --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldtofieldmultimapoptions.yaml @@ -0,0 +1,54 @@ +optionsClassName: FieldtoFieldMultiMapOptions +optionsClassFullName: MigrationTools.Tools.FieldtoFieldMultiMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldtoFieldMultiMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldtoFieldMultiMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldtoFieldMultiMapOptions", + "WorkItemTypeName": null, + "SourceToTargetMappings": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldtoFieldMultiMapOptions +description: Want to setup a bunch of field maps in a single go. Use this shortcut! +className: FieldtoFieldMultiMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: SourceToTargetMappings + type: Dictionary + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoFieldMultiMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoFieldMultiMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.fieldtotagmapoptions.yaml b/docs/_data/reference.fieldmaps.fieldtotagmapoptions.yaml new file mode 100644 index 000000000..9f132bda8 --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldtotagmapoptions.yaml @@ -0,0 +1,59 @@ +optionsClassName: FieldtoTagMapOptions +optionsClassFullName: MigrationTools.Tools.FieldtoTagMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldtoTagMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldtoTagMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldtoTagMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "formatExpression": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldtoTagMapOptions +description: Want to take a field and convert its value to a tag? Done... +className: FieldtoTagMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: formatExpression + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoTagMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoTagMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.fieldvaluemapoptions.yaml b/docs/_data/reference.fieldmaps.fieldvaluemapoptions.yaml new file mode 100644 index 000000000..23edda44d --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldvaluemapoptions.yaml @@ -0,0 +1,69 @@ +optionsClassName: FieldValueMapOptions +optionsClassFullName: MigrationTools.Tools.FieldValueMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldValueMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldValueMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldValueMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "targetField": null, + "defaultValue": null, + "valueMapping": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldValueMapOptions +description: Need to map not just the field but also values? This is the default value mapper. +className: FieldValueMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: defaultValue + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: valueMapping + type: Dictionary + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldValueMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldValueMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.fieldvaluetotagmapoptions.yaml b/docs/_data/reference.fieldmaps.fieldvaluetotagmapoptions.yaml new file mode 100644 index 000000000..49554628e --- /dev/null +++ b/docs/_data/reference.fieldmaps.fieldvaluetotagmapoptions.yaml @@ -0,0 +1,64 @@ +optionsClassName: FieldValuetoTagMapOptions +optionsClassFullName: MigrationTools.Tools.FieldValuetoTagMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldValuetoTagMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldValuetoTagMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldValuetoTagMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "pattern": null, + "formatExpression": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldValuetoTagMapOptions +description: Need to create a Tag based on a field value? Just create a regex match and choose how to populate the target. +className: FieldValuetoTagMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: formatExpression + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: pattern + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldValuetoTagMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldValuetoTagMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.multivalueconditionalmapoptions.yaml b/docs/_data/reference.fieldmaps.multivalueconditionalmapoptions.yaml new file mode 100644 index 000000000..07b033c70 --- /dev/null +++ b/docs/_data/reference.fieldmaps.multivalueconditionalmapoptions.yaml @@ -0,0 +1,59 @@ +optionsClassName: MultiValueConditionalMapOptions +optionsClassFullName: MigrationTools.Tools.MultiValueConditionalMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "MultiValueConditionalMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.MultiValueConditionalMapOptions +- name: Classic + description: + code: >- + { + "$type": "MultiValueConditionalMapOptions", + "WorkItemTypeName": null, + "sourceFieldsAndValues": null, + "targetFieldsAndValues": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.MultiValueConditionalMapOptions +description: ??? If you know how to use this please send a PR :) +className: MultiValueConditionalMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: sourceFieldsAndValues + type: Dictionary + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetFieldsAndValues + type: Dictionary + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/MultiValueConditionalMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/MultiValueConditionalMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.regexfieldmapoptions.yaml b/docs/_data/reference.fieldmaps.regexfieldmapoptions.yaml new file mode 100644 index 000000000..f9268d1f8 --- /dev/null +++ b/docs/_data/reference.fieldmaps.regexfieldmapoptions.yaml @@ -0,0 +1,69 @@ +optionsClassName: RegexFieldMapOptions +optionsClassFullName: MigrationTools.Tools.RegexFieldMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "RegexFieldMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.RegexFieldMapOptions +- name: Classic + description: + code: >- + { + "$type": "RegexFieldMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "targetField": null, + "pattern": null, + "replacement": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.RegexFieldMapOptions +description: I just need that bit of a field... need to send "2016.2" to two fields, one for year and one for release? Done. +className: RegexFieldMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: pattern + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: replacement + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/RegexFieldMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/RegexFieldMapOptions.cs diff --git a/docs/_data/reference.fieldmaps.treetotagmapoptions.yaml b/docs/_data/reference.fieldmaps.treetotagmapoptions.yaml new file mode 100644 index 000000000..2d1165c6e --- /dev/null +++ b/docs/_data/reference.fieldmaps.treetotagmapoptions.yaml @@ -0,0 +1,59 @@ +optionsClassName: TreeToTagMapOptions +optionsClassFullName: MigrationTools.Tools.TreeToTagMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "TreeToTagMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.TreeToTagMapOptions +- name: Classic + description: + code: >- + { + "$type": "TreeToTagMapOptions", + "WorkItemTypeName": null, + "toSkip": 0, + "timeTravel": 0, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.TreeToTagMapOptions +description: Need to clear out those nasty Area tree hierarchies? This creates Tags for each node in the Area Path... +className: TreeToTagMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: timeTravel + type: Int32 + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: toSkip + type: Int32 + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/TreeToTagMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/TreeToTagMapOptions.cs diff --git a/docs/_data/reference.processorenrichers.pauseaftereachitem.yaml b/docs/_data/reference.processorenrichers.pauseaftereachitem.yaml index 7f284ae34..bb434ae74 100644 --- a/docs/_data/reference.processorenrichers.pauseaftereachitem.yaml +++ b/docs/_data/reference.processorenrichers.pauseaftereachitem.yaml @@ -1,12 +1,23 @@ optionsClassName: PauseAfterEachItemOptions optionsClassFullName: MigrationTools.Enrichers.PauseAfterEachItemOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorEnricherDefaults": { + "PauseAfterEachItem": {} + } + } + } + sampleFor: MigrationTools.Enrichers.PauseAfterEachItemOptions - name: Classic description: code: >- { "$type": "PauseAfterEachItemOptions", - "Enabled": true + "Enabled": false } sampleFor: MigrationTools.Enrichers.PauseAfterEachItemOptions description: missng XML code comments @@ -24,5 +35,5 @@ options: defaultValue: missng XML code comments status: missng XML code comments processingTarget: missng XML code comments -classFile: /src/MigrationTools/ProcessorEnrichers/PauseAfterEachItem.cs -optionsClassFile: /src/MigrationTools/ProcessorEnrichers/PauseAfterEachItemOptions.cs +classFile: /src/MigrationTools/Processors/Enrichers/PauseAfterEachItem.cs +optionsClassFile: /src/MigrationTools/Processors/Enrichers/PauseAfterEachItemOptions.cs diff --git a/docs/_data/reference.processors.azuredevopspipelineprocessor.yaml b/docs/_data/reference.processors.azuredevopspipelineprocessor.yaml index d0d2499aa..d002bad8e 100644 --- a/docs/_data/reference.processors.azuredevopspipelineprocessor.yaml +++ b/docs/_data/reference.processors.azuredevopspipelineprocessor.yaml @@ -1,6 +1,17 @@ optionsClassName: AzureDevOpsPipelineProcessorOptions optionsClassFullName: MigrationTools.Processors.AzureDevOpsPipelineProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "AzureDevOpsPipelineProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.AzureDevOpsPipelineProcessorOptions - name: Classic description: code: >- diff --git a/docs/_data/reference.processors.exportprofilepicturefromadprocessor.yaml b/docs/_data/reference.processors.exportprofilepicturefromadprocessor.yaml index 16ea1dd99..6c65a9659 100644 --- a/docs/_data/reference.processors.exportprofilepicturefromadprocessor.yaml +++ b/docs/_data/reference.processors.exportprofilepicturefromadprocessor.yaml @@ -1,12 +1,79 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: ExportProfilePictureFromADProcessorOptions +optionsClassFullName: MigrationTools.Processors.ExportProfilePictureFromADProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "ExportProfilePictureFromADProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.ExportProfilePictureFromADProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "ExportProfilePictureFromADProcessorOptions", + "Enabled": false, + "Domain": null, + "Username": null, + "Password": null, + "PictureEmpIDFormat": null, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.ExportProfilePictureFromADProcessorOptions description: Downloads corporate images and updates TFS/Azure DevOps profiles className: ExportProfilePictureFromADProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Domain + type: String + description: The source domain where the pictures should be exported. + defaultValue: String.Empty +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: Password + type: String + description: The password of the user that is used to export the pictures. + defaultValue: String.Empty +- parameterName: PictureEmpIDFormat + type: String + description: 'TODO: You wpuld need to customise this for your system. Clone repo and run in Debug' + defaultValue: String.Empty +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Username + type: String + description: The user name of the user that is used to export the pictures. + defaultValue: String.Empty status: alpha processingTarget: Profiles classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ExportProfilePictureFromADProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ExportProfilePictureFromADProcessorOptions.cs diff --git a/docs/_data/reference.processors.exportusersformappingprocessor.yaml b/docs/_data/reference.processors.exportusersformappingprocessor.yaml index 5e47845e9..dd6ecfedf 100644 --- a/docs/_data/reference.processors.exportusersformappingprocessor.yaml +++ b/docs/_data/reference.processors.exportusersformappingprocessor.yaml @@ -1,12 +1,69 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: ExportUsersForMappingProcessorOptions +optionsClassFullName: MigrationTools.Processors.ExportUsersForMappingProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "ExportUsersForMappingProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.ExportUsersForMappingProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "ExportUsersForMappingProcessorOptions", + "Enabled": false, + "WIQLQuery": null, + "OnlyListUsersInWorkItems": true, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.ExportUsersForMappingProcessorOptions description: ExportUsersForMappingContext is a tool used to create a starter mapping file for users between the source and target systems. Use `ExportUsersForMappingConfig` to configure. className: ExportUsersForMappingProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: OnlyListUsersInWorkItems + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WIQLQuery + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: ready processingTarget: Work Items classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ExportUsersForMappingProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ExportUsersForMappingProcessorOptions.cs diff --git a/docs/_data/reference.processors.fakeprocessor.yaml b/docs/_data/reference.processors.fakeprocessor.yaml index 6c19edf38..6e6c96db1 100644 --- a/docs/_data/reference.processors.fakeprocessor.yaml +++ b/docs/_data/reference.processors.fakeprocessor.yaml @@ -1,29 +1,12 @@ -optionsClassName: FakeProcessorConfig -optionsClassFullName: MigrationTools._EngineV1.Configuration.Processing.FakeProcessorConfig -configurationSamples: -- name: Classic - description: - code: >- - { - "$type": "FakeProcessorConfig", - "Enabled": false, - "Enrichers": null - } - sampleFor: MigrationTools._EngineV1.Configuration.Processing.FakeProcessorConfig +optionsClassName: +optionsClassFullName: +configurationSamples: [] description: "Note: this is only for internal usage. Don't use this in your configurations." className: FakeProcessor typeName: Processors architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments -- parameterName: Enrichers - type: List - description: A list of enrichers that can augment the proccessing of the data - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/FakeProcessor.cs -optionsClassFile: /src/MigrationTools/_EngineV1/Configuration/Processing/FakeProcessorConfig.cs +optionsClassFile: diff --git a/docs/_data/reference.processors.fixgitcommitlinksprocessor.yaml b/docs/_data/reference.processors.fixgitcommitlinksprocessor.yaml index 18222b533..241e1a5f6 100644 --- a/docs/_data/reference.processors.fixgitcommitlinksprocessor.yaml +++ b/docs/_data/reference.processors.fixgitcommitlinksprocessor.yaml @@ -1,12 +1,69 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: FixGitCommitLinksProcessorOptions +optionsClassFullName: MigrationTools.Processors.FixGitCommitLinksProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "FixGitCommitLinksProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.FixGitCommitLinksProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "FixGitCommitLinksProcessorOptions", + "Enabled": false, + "TargetRepository": null, + "Query": null, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.FixGitCommitLinksProcessorOptions description: missng XML code comments className: FixGitCommitLinksProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: Query + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetRepository + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/FixGitCommitLinksProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/FixGitCommitLinksProcessorOptions.cs diff --git a/docs/_data/reference.processors.importprofilepictureprocessor.yaml b/docs/_data/reference.processors.importprofilepictureprocessor.yaml index f5337f561..129fdaf5e 100644 --- a/docs/_data/reference.processors.importprofilepictureprocessor.yaml +++ b/docs/_data/reference.processors.importprofilepictureprocessor.yaml @@ -1,12 +1,59 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: ImportProfilePictureProcessorOptions +optionsClassFullName: MigrationTools.Processors.ImportProfilePictureProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "ImportProfilePictureProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.ImportProfilePictureProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "ImportProfilePictureProcessorOptions", + "Enabled": false, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.ImportProfilePictureProcessorOptions description: Downloads corporate images and updates TFS/Azure DevOps profiles className: ImportProfilePictureProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: alpha processingTarget: Profiles classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ImportProfilePictureProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ImportProfilePictureProcessorOptions.cs diff --git a/docs/_data/reference.processors.processdefinitionprocessor.yaml b/docs/_data/reference.processors.processdefinitionprocessor.yaml index fb14833f5..80be2585a 100644 --- a/docs/_data/reference.processors.processdefinitionprocessor.yaml +++ b/docs/_data/reference.processors.processdefinitionprocessor.yaml @@ -1,23 +1,27 @@ optionsClassName: ProcessDefinitionProcessorOptions optionsClassFullName: MigrationTools.Processors.ProcessDefinitionProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "ProcessDefinitionProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.ProcessDefinitionProcessorOptions - name: Classic description: code: >- { "$type": "ProcessDefinitionProcessorOptions", "Enabled": false, - "Processes": { - "$type": "Dictionary`2", - "*": [ - "*" - ] - }, - "ProcessMaps": { - "$type": "Dictionary`2" - }, - "UpdateProcessDetails": true, - "MaxDegreeOfParallelism": 1, + "Processes": null, + "ProcessMaps": null, + "UpdateProcessDetails": false, + "MaxDegreeOfParallelism": 0, "Enrichers": null, "ProcessorEnrichers": null, "SourceName": null, diff --git a/docs/_data/reference.processors.testconfigurationsmigrationprocessor.yaml b/docs/_data/reference.processors.testconfigurationsmigrationprocessor.yaml index 3fe9947d2..c72c06609 100644 --- a/docs/_data/reference.processors.testconfigurationsmigrationprocessor.yaml +++ b/docs/_data/reference.processors.testconfigurationsmigrationprocessor.yaml @@ -1,12 +1,59 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: TestConfigurationsMigrationProcessorOptions +optionsClassFullName: MigrationTools.Processors.TestConfigurationsMigrationProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TestConfigurationsMigrationProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.TestConfigurationsMigrationProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "TestConfigurationsMigrationProcessorOptions", + "Enabled": false, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.TestConfigurationsMigrationProcessorOptions description: This processor can migrate `test configuration`. This should be run before `LinkMigrationConfig`. className: TestConfigurationsMigrationProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: Beta processingTarget: Suites & Plans classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestConfigurationsMigrationProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestConfigurationsMigrationProcessorOptions.cs diff --git a/docs/_data/reference.processors.testplansandsuitesmigrationprocessor.yaml b/docs/_data/reference.processors.testplansandsuitesmigrationprocessor.yaml index 4e12eb06d..0539834ae 100644 --- a/docs/_data/reference.processors.testplansandsuitesmigrationprocessor.yaml +++ b/docs/_data/reference.processors.testplansandsuitesmigrationprocessor.yaml @@ -1,12 +1,89 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: TestPlansAndSuitesMigrationProcessorOptions +optionsClassFullName: MigrationTools._EngineV1.Configuration.Processing.TestPlansAndSuitesMigrationProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TestPlansAndSuitesMigrationProcessor": {} + } + } + } + sampleFor: MigrationTools._EngineV1.Configuration.Processing.TestPlansAndSuitesMigrationProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "TestPlansAndSuitesMigrationProcessorOptions", + "Enabled": false, + "OnlyElementsWithTag": null, + "TestPlanQuery": null, + "RemoveAllLinks": false, + "MigrationDelay": 0, + "RemoveInvalidTestSuiteLinks": false, + "FilterCompleted": false, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools._EngineV1.Configuration.Processing.TestPlansAndSuitesMigrationProcessorOptions description: Rebuilds Suits and plans for Test Cases migrated using the WorkItemMigration className: TestPlansAndSuitesMigrationProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterCompleted + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: MigrationDelay + type: Int32 + description: ??Not sure what this does. Check code. + defaultValue: 0 +- parameterName: OnlyElementsWithTag + type: String + description: The tag name that is present on all elements that must be migrated. If this option isn't present this processor will migrate all. + defaultValue: '`String.Empty`' +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: RemoveAllLinks + type: Boolean + description: ??Not sure what this does. Check code. + defaultValue: false +- parameterName: RemoveInvalidTestSuiteLinks + type: Boolean + description: Indicates whether the configuration for node structure transformation should be taken from the common enricher configs. Otherwise the configuration elements below are used + defaultValue: false +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TestPlanQuery + type: String + description: Filtering conditions to decide whether to migrate a test plan or not. When provided, this partial query is added after `Select * From TestPlan Where` when selecting test plans. Among filtering options, `AreaPath`, `PlanName` and `PlanState` are known to work. There is unfortunately no documentation regarding the available fields. + defaultValue: '`String.Empty`' status: Beta processingTarget: Suites & Plans classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestPlansAndSuitesMigrationProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestPlansAndSuitesMigrationProcessorOptions.cs diff --git a/docs/_data/reference.processors.testvariablesmigrationprocessor.yaml b/docs/_data/reference.processors.testvariablesmigrationprocessor.yaml index ce847f15f..c52ad491e 100644 --- a/docs/_data/reference.processors.testvariablesmigrationprocessor.yaml +++ b/docs/_data/reference.processors.testvariablesmigrationprocessor.yaml @@ -1,12 +1,64 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: TestVariablesMigrationProcessorOptions +optionsClassFullName: MigrationTools.Processors.TestVariablesMigrationProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TestVariablesMigrationProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.TestVariablesMigrationProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "TestVariablesMigrationProcessorOptions", + "Enabled": false, + "Enrichers": null, + "Processor": "TestVariablesMigrationContext", + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.TestVariablesMigrationProcessorOptions description: This processor can migrate test variables that are defined in the test plans / suites. This must run before `TestPlansAndSuitesMigrationConfig`. className: TestVariablesMigrationProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: Processor + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: Beta processingTarget: Suites & Plans classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestVariablesMigrationProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestVariablesMigrationProcessorOptions.cs diff --git a/docs/_data/reference.processors.tfssharedqueryprocessor.yaml b/docs/_data/reference.processors.tfssharedqueryprocessor.yaml index ca10a5ac0..e1663dffc 100644 --- a/docs/_data/reference.processors.tfssharedqueryprocessor.yaml +++ b/docs/_data/reference.processors.tfssharedqueryprocessor.yaml @@ -1,6 +1,17 @@ optionsClassName: TfsSharedQueryProcessorOptions optionsClassFullName: MigrationTools.Processors.TfsSharedQueryProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TfsSharedQueryProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.TfsSharedQueryProcessorOptions - name: Classic description: code: >- @@ -12,8 +23,8 @@ configurationSamples: "SourceToTargetFieldMappings": null, "Enrichers": null, "ProcessorEnrichers": null, - "SourceName": "sourceName", - "TargetName": "targetName" + "SourceName": null, + "TargetName": null } sampleFor: MigrationTools.Processors.TfsSharedQueryProcessorOptions description: The TfsSharedQueryProcessor enabled you to migrate queries from one locatio nto another. diff --git a/docs/_data/reference.processors.tfsteamsettingsprocessor.yaml b/docs/_data/reference.processors.tfsteamsettingsprocessor.yaml index 332c662c1..42fee8e0e 100644 --- a/docs/_data/reference.processors.tfsteamsettingsprocessor.yaml +++ b/docs/_data/reference.processors.tfsteamsettingsprocessor.yaml @@ -1,21 +1,32 @@ optionsClassName: TfsTeamSettingsProcessorOptions optionsClassFullName: MigrationTools.Processors.TfsTeamSettingsProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TfsTeamSettingsProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.TfsTeamSettingsProcessorOptions - name: Classic description: code: >- { "$type": "TfsTeamSettingsProcessorOptions", "Enabled": false, - "MigrateTeamSettings": true, - "UpdateTeamSettings": true, + "MigrateTeamSettings": false, + "UpdateTeamSettings": false, "PrefixProjectToNodes": false, "MigrateTeamCapacities": false, "Teams": null, "Enrichers": null, "ProcessorEnrichers": null, - "SourceName": "sourceName", - "TargetName": "targetName" + "SourceName": null, + "TargetName": null } sampleFor: MigrationTools.Processors.TfsTeamSettingsProcessorOptions description: Native TFS Processor, does not work with any other Endpoints. diff --git a/docs/_data/reference.processors.workitembulkeditprocessor.yaml b/docs/_data/reference.processors.workitembulkeditprocessor.yaml index ff4869d88..adb43b5ad 100644 --- a/docs/_data/reference.processors.workitembulkeditprocessor.yaml +++ b/docs/_data/reference.processors.workitembulkeditprocessor.yaml @@ -1,12 +1,89 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemBulkEditProcessorOptions +optionsClassFullName: MigrationTools._EngineV1.Configuration.Processing.WorkItemBulkEditProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemBulkEditProcessor": {} + } + } + } + sampleFor: MigrationTools._EngineV1.Configuration.Processing.WorkItemBulkEditProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemBulkEditProcessorOptions", + "Enabled": false, + "WhatIf": false, + "WIQLQuery": "SELECT [System.Id] FROM WorkItems WHERE [System.TeamProject] = @TeamProject AND [@ReflectedWorkItemIdFieldName] = '' AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') ORDER BY [System.ChangedDate] desc", + "WorkItemIDs": null, + "FilterWorkItemsThatAlreadyExistInTarget": false, + "PauseAfterEachWorkItem": false, + "WorkItemCreateRetryLimit": 0, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools._EngineV1.Configuration.Processing.WorkItemBulkEditProcessorOptions description: This processor allows you to make changes in place where we load from teh Target and update the Target. This is used for bulk updates with the most common reason being a process template change. className: WorkItemBulkEditProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterWorkItemsThatAlreadyExistInTarget + type: Boolean + description: This loads all of the work items already saved to the Target and removes them from the Source work item list prior to commencing the run. While this may take some time in large data sets it reduces the time of the overall migration significantly if you need to restart. + defaultValue: true +- parameterName: PauseAfterEachWorkItem + type: Boolean + description: Pause after each work item is migrated + defaultValue: false +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WhatIf + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WIQLQuery + type: String + description: A work item query based on WIQL to select only important work items. To migrate all leave this empty. See [WIQL Query Bits](#wiql-query-bits) + defaultValue: AND [Microsoft.VSTS.Common.ClosedDate] = '' AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') +- parameterName: WorkItemCreateRetryLimit + type: Int32 + description: '**beta** If set to a number greater than 0 work items that fail to save will retry after a number of seconds equal to the retry count. This allows for periodic network glitches not to end the process.' + defaultValue: 5 +- parameterName: WorkItemIDs + type: IList + description: A list of work items to import + defaultValue: '[]' status: missng XML code comments processingTarget: WorkItem classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemBulkEditProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemBulkEditProcessorOptions.cs diff --git a/docs/_data/reference.processors.workitemdeleteprocessor.yaml b/docs/_data/reference.processors.workitemdeleteprocessor.yaml index 01526b3ee..bbfa0b80a 100644 --- a/docs/_data/reference.processors.workitemdeleteprocessor.yaml +++ b/docs/_data/reference.processors.workitemdeleteprocessor.yaml @@ -1,12 +1,84 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemDeleteProcessorOptions +optionsClassFullName: MigrationTools.Processors.WorkItemDeleteProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemDeleteProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemDeleteProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemDeleteProcessorOptions", + "Enabled": false, + "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", + "WorkItemIDs": null, + "FilterWorkItemsThatAlreadyExistInTarget": false, + "PauseAfterEachWorkItem": false, + "WorkItemCreateRetryLimit": 0, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.WorkItemDeleteProcessorOptions description: The `WorkItemDelete` processor allows you to delete any amount of work items that meet the query. **DANGER:** This is not a recoverable action and should be use with extream caution. className: WorkItemDeleteProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterWorkItemsThatAlreadyExistInTarget + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: PauseAfterEachWorkItem + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WIQLQuery + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemCreateRetryLimit + type: Int32 + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemIDs + type: IList + description: missng XML code comments + defaultValue: missng XML code comments status: ready processingTarget: WorkItem classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemDeleteProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemDeleteProcessorOptions.cs diff --git a/docs/_data/reference.processors.workitemmigrationprocessor.yaml b/docs/_data/reference.processors.workitemmigrationprocessor.yaml index 0f7ad0fbf..618f39459 100644 --- a/docs/_data/reference.processors.workitemmigrationprocessor.yaml +++ b/docs/_data/reference.processors.workitemmigrationprocessor.yaml @@ -1,12 +1,124 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemMigrationProcessorOptions +optionsClassFullName: MigrationTools.Processors.WorkItemMigrationProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemMigrationProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemMigrationProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemMigrationProcessorOptions", + "Enabled": false, + "UpdateCreatedDate": true, + "UpdateCreatedBy": true, + "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", + "FixHtmlAttachmentLinks": true, + "WorkItemCreateRetryLimit": 5, + "FilterWorkItemsThatAlreadyExistInTarget": false, + "PauseAfterEachWorkItem": false, + "AttachRevisionHistory": false, + "GenerateMigrationComment": true, + "WorkItemIDs": null, + "MaxGracefulFailures": 0, + "SkipRevisionWithInvalidIterationPath": false, + "SkipRevisionWithInvalidAreaPath": false, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.WorkItemMigrationProcessorOptions description: WorkItemMigrationConfig is the main processor used to Migrate Work Items, Links, and Attachments. Use `WorkItemMigrationConfig` to configure. className: WorkItemMigrationProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: AttachRevisionHistory + type: Boolean + description: This will create a json file with the revision history and attach it to the work item. Best used with `MaxRevisions` or `ReplayRevisions`. + defaultValue: '?' +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterWorkItemsThatAlreadyExistInTarget + type: Boolean + description: This loads all of the work items already saved to the Target and removes them from the Source work item list prior to commencing the run. While this may take some time in large data sets it reduces the time of the overall migration significantly if you need to restart. + defaultValue: true +- parameterName: FixHtmlAttachmentLinks + type: Boolean + description: "**beta** If enabled this will fix any image attachments URL's, work item mention URL's or user mentions in the HTML fields as well as discussion comments. You must specify a PersonalAccessToken in the Source project for Azure DevOps; TFS should use integrated authentication." + defaultValue: '?' +- parameterName: GenerateMigrationComment + type: Boolean + description: If enabled, adds a comment recording the migration + defaultValue: false +- parameterName: MaxGracefulFailures + type: Int32 + description: The maximum number of failures to tolerate before the migration fails. When set above zero, a work item migration error is logged but the migration will continue until the number of failed items reaches the configured value, after which the migration fails. + defaultValue: 0 +- parameterName: PauseAfterEachWorkItem + type: Boolean + description: Pause after each work item is migrated + defaultValue: false +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SkipRevisionWithInvalidAreaPath + type: Boolean + description: When set to true, this setting will skip a revision if the source area has not been migrated, has been deleted or is somehow invalid, etc. + defaultValue: missng XML code comments +- parameterName: SkipRevisionWithInvalidIterationPath + type: Boolean + description: This will skip a revision if the source iteration has not been migrated i.e. it was deleted + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: UpdateCreatedBy + type: Boolean + description: "If this is enabled the creation process on the target project will create the items with the original creation date. (Important: The item history is always pointed to the date of the migration, it's change only the data column CreateDate, not the internal create date)" + defaultValue: true +- parameterName: UpdateCreatedDate + type: Boolean + description: "If this is enabled the creation process on the target project will create the items with the original creation date. (Important: The item history is always pointed to the date of the migration, it's change only the data column CreateDate, not the internal create date)" + defaultValue: true +- parameterName: WIQLQuery + type: String + description: A work item query based on WIQL to select only important work items. To migrate all leave this empty. See [WIQL Query Bits](#wiql-query-bits) + defaultValue: 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 +- parameterName: WorkItemCreateRetryLimit + type: Int32 + description: '**beta** If set to a number greater than 0 work items that fail to save will retry after a number of seconds equal to the retry count. This allows for periodic network glitches not to end the process.' + defaultValue: 5 +- parameterName: WorkItemIDs + type: IList + description: A list of work items to import + defaultValue: '[]' status: ready processingTarget: Work Items classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemMigrationProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemMigrationProcessorOptions.cs diff --git a/docs/_data/reference.processors.workitempostprocessingprocessor.yaml b/docs/_data/reference.processors.workitempostprocessingprocessor.yaml index ab5cc67a7..ded3a8ad0 100644 --- a/docs/_data/reference.processors.workitempostprocessingprocessor.yaml +++ b/docs/_data/reference.processors.workitempostprocessingprocessor.yaml @@ -1,12 +1,84 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemPostProcessingProcessorOptions +optionsClassFullName: MigrationTools.Processors.WorkItemPostProcessingProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemPostProcessingProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemPostProcessingProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemPostProcessingProcessorOptions", + "Enabled": false, + "WorkItemIDs": null, + "WIQLQuery": "SELECT [System.Id] FROM WorkItems WHERE [System.TeamProject] = @TeamProject AND [@ReflectedWorkItemIdFieldName] = '' AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') ORDER BY [System.ChangedDate] desc", + "FilterWorkItemsThatAlreadyExistInTarget": false, + "PauseAfterEachWorkItem": false, + "WorkItemCreateRetryLimit": 0, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.WorkItemPostProcessingProcessorOptions description: Reapply field mappings after a migration. Does not migtate Work Items, only reapplied changes to filed mappings. className: WorkItemPostProcessingProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterWorkItemsThatAlreadyExistInTarget + type: Boolean + description: This loads all of the work items already saved to the Target and removes them from the Source work item list prior to commencing the run. While this may take some time in large data sets it reduces the time of the overall migration significantly if you need to restart. + defaultValue: true +- parameterName: PauseAfterEachWorkItem + type: Boolean + description: Pause after each work item is migrated + defaultValue: false +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WIQLQuery + type: String + description: A work item query based on WIQL to select only important work items. To migrate all leave this empty. See [WIQL Query Bits](#wiql-query-bits) + defaultValue: AND [Microsoft.VSTS.Common.ClosedDate] = '' AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') +- parameterName: WorkItemCreateRetryLimit + type: Int32 + description: '**beta** If set to a number greater than 0 work items that fail to save will retry after a number of seconds equal to the retry count. This allows for periodic network glitches not to end the process.' + defaultValue: 5 +- parameterName: WorkItemIDs + type: IList + description: A list of work items to import + defaultValue: '[]' status: preview processingTarget: Work Items classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemPostProcessingProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemPostProcessingProcessorOptions.cs diff --git a/docs/_data/reference.processors.workitemtrackingprocessor.yaml b/docs/_data/reference.processors.workitemtrackingprocessor.yaml index 30da8e021..3462bf4a0 100644 --- a/docs/_data/reference.processors.workitemtrackingprocessor.yaml +++ b/docs/_data/reference.processors.workitemtrackingprocessor.yaml @@ -1,15 +1,26 @@ optionsClassName: WorkItemTrackingProcessorOptions optionsClassFullName: MigrationTools.Processors.WorkItemTrackingProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemTrackingProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemTrackingProcessorOptions - name: Classic description: code: >- { "$type": "WorkItemTrackingProcessorOptions", - "Enabled": true, - "ReplayRevisions": true, + "Enabled": false, + "ReplayRevisions": false, "CollapseRevisions": false, - "WorkItemCreateRetryLimit": 5, + "WorkItemCreateRetryLimit": 0, "Enrichers": null, "ProcessorEnrichers": null, "SourceName": null, @@ -59,5 +70,5 @@ options: defaultValue: missng XML code comments status: missng XML code comments processingTarget: missng XML code comments -classFile: /src/MigrationTools/Processors/WorkItemProcessor/WorkItemTrackingProcessor.cs -optionsClassFile: /src/MigrationTools/Processors/WorkItemProcessor/WorkItemTrackingProcessorOptions.cs +classFile: /src/MigrationTools/Processors/WorkItemTrackingProcessor.cs +optionsClassFile: /src/MigrationTools/Processors/WorkItemTrackingProcessorOptions.cs diff --git a/docs/_data/reference.processors.workitemupdateareasastagsprocessor.yaml b/docs/_data/reference.processors.workitemupdateareasastagsprocessor.yaml index 8c93c4a2c..0b6ecaab4 100644 --- a/docs/_data/reference.processors.workitemupdateareasastagsprocessor.yaml +++ b/docs/_data/reference.processors.workitemupdateareasastagsprocessor.yaml @@ -1,12 +1,64 @@ -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemUpdateAreasAsTagsProcessorOptions +optionsClassFullName: MigrationTools.Processors.WorkItemUpdateAreasAsTagsProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemUpdateAreasAsTagsProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemUpdateAreasAsTagsProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemUpdateAreasAsTagsProcessorOptions", + "Enabled": false, + "AreaIterationPath": null, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.WorkItemUpdateAreasAsTagsProcessorOptions description: A common issue with older *TFS/Azure DevOps* instances is the proliferation of `Area Paths`. With the use of `Area Path` for `Teams` and the addition of the `Node Name` column option these extensive tag hierarchies should instad be moved to tags. className: WorkItemUpdateAreasAsTagsProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: AreaIterationPath + type: String + description: This is a required parameter. That define the root path of the iteration. To get the full path use `\` + defaultValue: '\' +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: Beta processingTarget: Work Item classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemUpdateAreasAsTagsProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemUpdateAreasAsTagsProcessorOptions.cs diff --git a/docs/_data/reference.tools.fieldmappingtool.yaml b/docs/_data/reference.tools.fieldmappingtool.yaml index 66441e79e..202769ccc 100644 --- a/docs/_data/reference.tools.fieldmappingtool.yaml +++ b/docs/_data/reference.tools.fieldmappingtool.yaml @@ -1,16 +1,13 @@ optionsClassName: FieldMappingToolOptions optionsClassFullName: MigrationTools.Tools.FieldMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "FieldMappingTool": { - "Enabled": "False", - "FieldMaps": "" - } + "ProcessorDefaults": { + "FieldMappingTool": {} } } } @@ -20,8 +17,7 @@ configurationSamples: code: >- { "$type": "FieldMappingToolOptions", - "FieldMaps": [], - "Enabled": false + "FieldMaps": [] } sampleFor: MigrationTools.Tools.FieldMappingToolOptions description: missng XML code comments @@ -29,10 +25,6 @@ className: FieldMappingTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: FieldMaps type: List description: missng XML code comments diff --git a/docs/_data/reference.tools.gitrepomappingtool.yaml b/docs/_data/reference.tools.gitrepomappingtool.yaml index 4f65cc12b..f304d6d77 100644 --- a/docs/_data/reference.tools.gitrepomappingtool.yaml +++ b/docs/_data/reference.tools.gitrepomappingtool.yaml @@ -1,18 +1,13 @@ optionsClassName: GitRepoMappingToolOptions optionsClassFullName: MigrationTools.Tools.GitRepoMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "GitRepoMappingTool": { - "Enabled": "True", - "Mappings": { - "Source Repo Name": "Target Repo Name" - } - } + "ProcessorDefaults": { + "GitRepoMappingTool": {} } } } @@ -22,11 +17,7 @@ configurationSamples: code: >- { "$type": "GitRepoMappingToolOptions", - "Mappings": { - "$type": "Dictionary`2", - "Source Repo Name": "Target Repo Name" - }, - "Enabled": true + "Mappings": null } sampleFor: MigrationTools.Tools.GitRepoMappingToolOptions description: Used to process the String fields of a work item. This is useful for cleaning up data. It will limit fields to a max length and apply regex replacements based on what is configured. Each regex replacement is applied in order and can be enabled or disabled. @@ -34,10 +25,6 @@ className: GitRepoMappingTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: Mappings type: Dictionary description: List of work item mappings. diff --git a/docs/_data/reference.tools.stringmanipulatortool.yaml b/docs/_data/reference.tools.stringmanipulatortool.yaml index 472d2ed58..3ba05a15f 100644 --- a/docs/_data/reference.tools.stringmanipulatortool.yaml +++ b/docs/_data/reference.tools.stringmanipulatortool.yaml @@ -1,25 +1,13 @@ optionsClassName: StringManipulatorToolOptions optionsClassFullName: MigrationTools.Tools.StringManipulatorToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "StringManipulatorTool": { - "Enabled": "True", - "Manipulators": { - "0": { - "$type": "RegexStringManipulator", - "Description": "Remove invalid characters from the end of the string", - "Enabled": "True", - "Pattern": "[^( -~)\n\r\t]+", - "Replacement": "" - } - }, - "MaxStringLength": "1000000" - } + "ProcessorDefaults": { + "StringManipulatorTool": {} } } } @@ -29,17 +17,8 @@ configurationSamples: code: >- { "$type": "StringManipulatorToolOptions", - "MaxStringLength": 1000000, - "Manipulators": [ - { - "$type": "RegexStringManipulator", - "Enabled": true, - "Pattern": "[^( -~)\n\r\t]+", - "Replacement": "", - "Description": "Remove invalid characters from the end of the string" - } - ], - "Enabled": true + "MaxStringLength": 0, + "Manipulators": null } sampleFor: MigrationTools.Tools.StringManipulatorToolOptions description: Used to process the String fields of a work item. This is useful for cleaning up data. It will limit fields to a max length and apply regex replacements based on what is configured. Each regex replacement is applied in order and can be enabled or disabled. @@ -47,10 +26,6 @@ className: StringManipulatorTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: Manipulators type: List description: List of regex based string manipulations to apply to all string fields. Each regex replacement is applied in order and can be enabled or disabled. diff --git a/docs/_data/reference.tools.tfsattachmenttool.yaml b/docs/_data/reference.tools.tfsattachmenttool.yaml index 2743b60d1..3812c161a 100644 --- a/docs/_data/reference.tools.tfsattachmenttool.yaml +++ b/docs/_data/reference.tools.tfsattachmenttool.yaml @@ -1,18 +1,13 @@ optionsClassName: TfsAttachmentToolOptions optionsClassFullName: MigrationTools.Tools.TfsAttachmentToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsAttachmentTool": { - "Enabled": "True", - "ExportBasePath": "c:\\temp\\WorkItemAttachmentExport", - "MaxAttachmentSize": "480000000", - "RefName": "TfsAttachmentTool" - } + "ProcessorDefaults": { + "TfsAttachmentTool": {} } } } @@ -22,9 +17,8 @@ configurationSamples: code: >- { "$type": "TfsAttachmentToolOptions", - "ExportBasePath": "c:\\temp\\WorkItemAttachmentExport", - "MaxAttachmentSize": 480000000, - "Enabled": true + "ExportBasePath": null, + "MaxAttachmentSize": 0 } sampleFor: MigrationTools.Tools.TfsAttachmentToolOptions description: missng XML code comments @@ -32,10 +26,6 @@ className: TfsAttachmentTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: ExportBasePath type: String description: '`AttachmentMigration` is set to true then you need to specify a working path for attachments to be saved locally.' diff --git a/docs/_data/reference.tools.tfschangesetmappingtool.yaml b/docs/_data/reference.tools.tfschangesetmappingtool.yaml index 17ea201f8..c6cdeb3f6 100644 --- a/docs/_data/reference.tools.tfschangesetmappingtool.yaml +++ b/docs/_data/reference.tools.tfschangesetmappingtool.yaml @@ -1,16 +1,13 @@ optionsClassName: TfsChangeSetMappingToolOptions optionsClassFullName: MigrationTools.Tools.TfsChangeSetMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsChangeSetMappingTool": { - "Enabled": "False", - "File": "" - } + "ProcessorDefaults": { + "TfsChangeSetMappingTool": {} } } } @@ -20,8 +17,7 @@ configurationSamples: code: >- { "$type": "TfsChangeSetMappingToolOptions", - "ChangeSetMappingFile": null, - "Enabled": false + "ChangeSetMappingFile": null } sampleFor: MigrationTools.Tools.TfsChangeSetMappingToolOptions description: missng XML code comments @@ -33,10 +29,6 @@ options: type: String description: missng XML code comments defaultValue: missng XML code comments -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsChangeSetMappingTool.cs diff --git a/docs/_data/reference.tools.tfsembededimagestool.yaml b/docs/_data/reference.tools.tfsembededimagestool.yaml index 12f8fa811..eff3e2703 100644 --- a/docs/_data/reference.tools.tfsembededimagestool.yaml +++ b/docs/_data/reference.tools.tfsembededimagestool.yaml @@ -1,15 +1,13 @@ optionsClassName: TfsEmbededImagesToolOptions optionsClassFullName: MigrationTools.Tools.TfsEmbededImagesToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsEmbededImagesTool": { - "Enabled": "True" - } + "ProcessorDefaults": { + "TfsEmbededImagesTool": {} } } } @@ -18,19 +16,14 @@ configurationSamples: description: code: >- { - "$type": "TfsEmbededImagesToolOptions", - "Enabled": true + "$type": "TfsEmbededImagesToolOptions" } sampleFor: MigrationTools.Tools.TfsEmbededImagesToolOptions description: missng XML code comments className: TfsEmbededImagesTool typeName: Tools architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsEmbededImagesTool.cs diff --git a/docs/_data/reference.tools.tfsgitrepositorytool.yaml b/docs/_data/reference.tools.tfsgitrepositorytool.yaml index 4c71f2050..8d1e42d1f 100644 --- a/docs/_data/reference.tools.tfsgitrepositorytool.yaml +++ b/docs/_data/reference.tools.tfsgitrepositorytool.yaml @@ -1,12 +1,12 @@ optionsClassName: TfsGitRepositoryToolOptions optionsClassFullName: MigrationTools.Tools.TfsGitRepositoryToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { + "ProcessorDefaults": { "TfsGitRepositoryTool": {} } } @@ -16,19 +16,14 @@ configurationSamples: description: code: >- { - "$type": "TfsGitRepositoryToolOptions", - "Enabled": false + "$type": "TfsGitRepositoryToolOptions" } sampleFor: MigrationTools.Tools.TfsGitRepositoryToolOptions description: missng XML code comments className: TfsGitRepositoryTool typeName: Tools architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsGitRepositoryTool.cs diff --git a/docs/_data/reference.tools.tfsnodestructuretool.yaml b/docs/_data/reference.tools.tfsnodestructuretool.yaml index 1e70c57ec..076765cb3 100644 --- a/docs/_data/reference.tools.tfsnodestructuretool.yaml +++ b/docs/_data/reference.tools.tfsnodestructuretool.yaml @@ -1,24 +1,13 @@ optionsClassName: TfsNodeStructureToolOptions optionsClassFullName: MigrationTools.Tools.TfsNodeStructureToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsNodeStructureTool": { - "AreaMaps": { - "^migrationSource1([\\\\]?.*)$": "MigrationTest5$1" - }, - "Enabled": "True", - "IterationMaps": { - "^migrationSource1([\\\\]?.*)$": "MigrationTest5$1" - }, - "NodeBasePaths": {}, - "ReplicateAllExistingNodes": "True", - "ShouldCreateMissingRevisionPaths": "True" - } + "ProcessorDefaults": { + "TfsNodeStructureTool": {} } } } @@ -29,17 +18,10 @@ configurationSamples: { "$type": "TfsNodeStructureToolOptions", "NodeBasePaths": null, - "AreaMaps": { - "$type": "Dictionary`2", - "^migrationSource1([\\\\]?.*)$": "MigrationTest5$1" - }, - "IterationMaps": { - "$type": "Dictionary`2", - "^migrationSource1([\\\\]?.*)$": "MigrationTest5$1" - }, - "ShouldCreateMissingRevisionPaths": true, - "ReplicateAllExistingNodes": true, - "Enabled": true + "AreaMaps": null, + "IterationMaps": null, + "ShouldCreateMissingRevisionPaths": false, + "ReplicateAllExistingNodes": false } sampleFor: MigrationTools.Tools.TfsNodeStructureToolOptions description: The TfsNodeStructureToolEnricher is used to create missing nodes in the target project. To configure it add a `TfsNodeStructureToolOptions` section to `CommonEnrichersConfig` in the config file. Otherwise defaults will be applied. @@ -51,10 +33,6 @@ options: type: Dictionary description: Remapping rules for area paths, implemented with regular expressions. The rules apply with a higher priority than the `PrefixProjectToNodes`, that is, if no rule matches the path and the `PrefixProjectToNodes` option is enabled, then the old `PrefixProjectToNodes` behavior is applied. defaultValue: '{}' -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: IterationMaps type: Dictionary description: Remapping rules for iteration paths, implemented with regular expressions. The rules apply with a higher priority than the `PrefixProjectToNodes`, that is, if no rule matches the path and the `PrefixProjectToNodes` option is enabled, then the old `PrefixProjectToNodes` behavior is applied. diff --git a/docs/_data/reference.tools.tfsrevisionmanagertool.yaml b/docs/_data/reference.tools.tfsrevisionmanagertool.yaml index 2b463edf1..36a7a3631 100644 --- a/docs/_data/reference.tools.tfsrevisionmanagertool.yaml +++ b/docs/_data/reference.tools.tfsrevisionmanagertool.yaml @@ -1,17 +1,13 @@ optionsClassName: TfsRevisionManagerToolOptions optionsClassFullName: MigrationTools.Tools.TfsRevisionManagerToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsRevisionManagerTool": { - "Enabled": "True", - "MaxRevisions": "0", - "ReplayRevisions": "True" - } + "ProcessorDefaults": { + "TfsRevisionManagerTool": {} } } } @@ -21,9 +17,8 @@ configurationSamples: code: >- { "$type": "TfsRevisionManagerToolOptions", - "ReplayRevisions": true, - "MaxRevisions": 0, - "Enabled": true + "ReplayRevisions": false, + "MaxRevisions": 0 } sampleFor: MigrationTools.Tools.TfsRevisionManagerToolOptions description: The TfsRevisionManagerTool manipulates the revisions of a work item to reduce the number of revisions that are migrated. @@ -31,10 +26,6 @@ className: TfsRevisionManagerTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: MaxRevisions type: Int32 description: Sets the maximum number of revisions that will be migrated. "First + Last N = Max". If this was set to 5 and there were 10 revisions you would get the first 1 (creation) and the latest 4 migrated. diff --git a/docs/_data/reference.tools.tfsteamsettingstool.yaml b/docs/_data/reference.tools.tfsteamsettingstool.yaml index 4c2843fda..b1da56a92 100644 --- a/docs/_data/reference.tools.tfsteamsettingstool.yaml +++ b/docs/_data/reference.tools.tfsteamsettingstool.yaml @@ -1,19 +1,13 @@ optionsClassName: TfsTeamSettingsToolOptions optionsClassFullName: MigrationTools.Tools.TfsTeamSettingsToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsTeamSettingsTool": { - "Enabled": "True", - "MigrateTeamCapacities": "True", - "MigrateTeamSettings": "True", - "Teams": {}, - "UpdateTeamSettings": "True" - } + "ProcessorDefaults": { + "TfsTeamSettingsTool": {} } } } @@ -23,11 +17,10 @@ configurationSamples: code: >- { "$type": "TfsTeamSettingsToolOptions", - "MigrateTeamSettings": true, - "UpdateTeamSettings": true, - "MigrateTeamCapacities": true, - "Teams": null, - "Enabled": true + "MigrateTeamSettings": false, + "UpdateTeamSettings": false, + "MigrateTeamCapacities": false, + "Teams": null } sampleFor: MigrationTools.Tools.TfsTeamSettingsToolOptions description: The TfsUserMappingTool is used to map users from the source to the target system. Run it with the ExportUsersForMappingContext to create a mapping file then with WorkItemMigrationContext to use the mapping file to update the users in the target system as you migrate the work items. @@ -35,10 +28,6 @@ className: TfsTeamSettingsTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: MigrateTeamCapacities type: Boolean description: 'Migrate original team member capacities after their creation on the target team project. Note: It will only migrate team member capacity if the team member with same display name exists on the target collection otherwise it will be ignored.' diff --git a/docs/_data/reference.tools.tfsusermappingtool.yaml b/docs/_data/reference.tools.tfsusermappingtool.yaml index 416e31b2c..91f44a0bb 100644 --- a/docs/_data/reference.tools.tfsusermappingtool.yaml +++ b/docs/_data/reference.tools.tfsusermappingtool.yaml @@ -1,24 +1,13 @@ optionsClassName: TfsUserMappingToolOptions optionsClassFullName: MigrationTools.Tools.TfsUserMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsUserMappingTool": { - "Enabled": "False", - "IdentityFieldsToCheck": { - "0": "System.AssignedTo", - "1": "System.ChangedBy", - "2": "System.CreatedBy", - "3": "Microsoft.VSTS.Common.ActivatedBy", - "4": "Microsoft.VSTS.Common.ResolvedBy", - "5": "Microsoft.VSTS.Common.ClosedBy" - }, - "UserMappingFile": "C:\\temp\\userExport.json" - } + "ProcessorDefaults": { + "TfsUserMappingTool": {} } } } @@ -28,16 +17,8 @@ configurationSamples: code: >- { "$type": "TfsUserMappingToolOptions", - "IdentityFieldsToCheck": [ - "System.AssignedTo", - "System.ChangedBy", - "System.CreatedBy", - "Microsoft.VSTS.Common.ActivatedBy", - "Microsoft.VSTS.Common.ResolvedBy", - "Microsoft.VSTS.Common.ClosedBy" - ], - "UserMappingFile": "C:\\temp\\userExport.json", - "Enabled": false + "IdentityFieldsToCheck": null, + "UserMappingFile": null } sampleFor: MigrationTools.Tools.TfsUserMappingToolOptions description: The TfsUserMappingTool is used to map users from the source to the target system. Run it with the ExportUsersForMappingContext to create a mapping file then with WorkItemMigrationContext to use the mapping file to update the users in the target system as you migrate the work items. @@ -45,10 +26,6 @@ className: TfsUserMappingTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: IdentityFieldsToCheck type: List description: This is a list of the Identiy fields in the Source to check for user mapping purposes. You should list all identiy fields that you wan to map. diff --git a/docs/_data/reference.tools.tfsvalidaterequiredfieldtool.yaml b/docs/_data/reference.tools.tfsvalidaterequiredfieldtool.yaml index e9dffbc59..32971b69f 100644 --- a/docs/_data/reference.tools.tfsvalidaterequiredfieldtool.yaml +++ b/docs/_data/reference.tools.tfsvalidaterequiredfieldtool.yaml @@ -1,12 +1,12 @@ optionsClassName: TfsValidateRequiredFieldToolOptions optionsClassFullName: MigrationTools.Tools.TfsValidateRequiredFieldToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { + "ProcessorDefaults": { "TfsValidateRequiredFieldTool": {} } } @@ -16,19 +16,14 @@ configurationSamples: description: code: >- { - "$type": "TfsValidateRequiredFieldToolOptions", - "Enabled": false + "$type": "TfsValidateRequiredFieldToolOptions" } sampleFor: MigrationTools.Tools.TfsValidateRequiredFieldToolOptions description: missng XML code comments className: TfsValidateRequiredFieldTool typeName: Tools architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsValidateRequiredFieldTool.cs diff --git a/docs/_data/reference.tools.tfsworkitemembededlinktool.yaml b/docs/_data/reference.tools.tfsworkitemembededlinktool.yaml index 4eff799db..8a94468db 100644 --- a/docs/_data/reference.tools.tfsworkitemembededlinktool.yaml +++ b/docs/_data/reference.tools.tfsworkitemembededlinktool.yaml @@ -1,15 +1,13 @@ optionsClassName: TfsWorkItemEmbededLinkToolOptions optionsClassFullName: MigrationTools.Tools.TfsWorkItemEmbededLinkToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsWorkItemEmbededLinkTool": { - "Enabled": "True" - } + "ProcessorDefaults": { + "TfsWorkItemEmbededLinkTool": {} } } } @@ -18,19 +16,14 @@ configurationSamples: description: code: >- { - "$type": "TfsWorkItemEmbededLinkToolOptions", - "Enabled": true + "$type": "TfsWorkItemEmbededLinkToolOptions" } sampleFor: MigrationTools.Tools.TfsWorkItemEmbededLinkToolOptions description: missng XML code comments className: TfsWorkItemEmbededLinkTool typeName: Tools architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsWorkItemEmbededLinkTool.cs diff --git a/docs/_data/reference.tools.tfsworkitemlinktool.yaml b/docs/_data/reference.tools.tfsworkitemlinktool.yaml index 776dac86b..103c82d5a 100644 --- a/docs/_data/reference.tools.tfsworkitemlinktool.yaml +++ b/docs/_data/reference.tools.tfsworkitemlinktool.yaml @@ -1,17 +1,13 @@ optionsClassName: TfsWorkItemLinkToolOptions optionsClassFullName: MigrationTools.Tools.TfsWorkItemLinkToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsWorkItemLinkTool": { - "Enabled": "True", - "FilterIfLinkCountMatches": "True", - "SaveAfterEachLinkIsAdded": "False" - } + "ProcessorDefaults": { + "TfsWorkItemLinkTool": {} } } } @@ -21,9 +17,8 @@ configurationSamples: code: >- { "$type": "TfsWorkItemLinkToolOptions", - "FilterIfLinkCountMatches": true, - "SaveAfterEachLinkIsAdded": false, - "Enabled": true + "FilterIfLinkCountMatches": false, + "SaveAfterEachLinkIsAdded": false } sampleFor: MigrationTools.Tools.TfsWorkItemLinkToolOptions description: missng XML code comments @@ -31,10 +26,6 @@ className: TfsWorkItemLinkTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: FilterIfLinkCountMatches type: Boolean description: Skip validating links if the number of links in the source and the target matches! diff --git a/docs/_data/reference.tools.workitemtypemappingtool.yaml b/docs/_data/reference.tools.workitemtypemappingtool.yaml index 1892d6dd2..ecfc9668e 100644 --- a/docs/_data/reference.tools.workitemtypemappingtool.yaml +++ b/docs/_data/reference.tools.workitemtypemappingtool.yaml @@ -1,18 +1,13 @@ optionsClassName: WorkItemTypeMappingToolOptions optionsClassFullName: MigrationTools.Tools.WorkItemTypeMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "WorkItemTypeMappingTool": { - "Enabled": "False", - "Mappings": { - "Source Work Item Type Name": "Target Work Item Type Name" - } - } + "ProcessorDefaults": { + "WorkItemTypeMappingTool": {} } } } @@ -22,11 +17,7 @@ configurationSamples: code: >- { "$type": "WorkItemTypeMappingToolOptions", - "Mappings": { - "$type": "Dictionary`2", - "Source Work Item Type Name": "Target Work Item Type Name" - }, - "Enabled": false + "Mappings": null } sampleFor: MigrationTools.Tools.WorkItemTypeMappingToolOptions description: Used to process the String fields of a work item. This is useful for cleaning up data. It will limit fields to a max length and apply regex replacements based on what is configured. Each regex replacement is applied in order and can be enabled or disabled. @@ -34,10 +25,6 @@ className: WorkItemTypeMappingTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: Mappings type: Dictionary description: List of work item mappings. diff --git a/docs/collections/_reference/reference.fieldmaps.fieldclearmapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldclearmapoptions.md new file mode 100644 index 000000000..e805b2f14 --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldclearmapoptions.md @@ -0,0 +1,76 @@ +--- +optionsClassName: FieldClearMapOptions +optionsClassFullName: MigrationTools.Tools.FieldClearMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldClearMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldClearMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldClearMapOptions", + "WorkItemTypeName": null, + "targetField": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldClearMapOptions +description: Allows you to set an already populated field to Null. This will only work with fields that support null. +className: FieldClearMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldClearMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldClearMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldClearMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldClearMapOptions/ +title: FieldClearMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldClearMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldClearMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.fieldliteralmapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldliteralmapoptions.md new file mode 100644 index 000000000..5e31767a3 --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldliteralmapoptions.md @@ -0,0 +1,81 @@ +--- +optionsClassName: FieldLiteralMapOptions +optionsClassFullName: MigrationTools.Tools.FieldLiteralMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldLiteralMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldLiteralMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldLiteralMapOptions", + "WorkItemTypeName": null, + "targetField": null, + "value": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldLiteralMapOptions +description: Sets a field on the `target` to b a specific value. +className: FieldLiteralMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: value + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldLiteralMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldLiteralMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldLiteralMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldLiteralMapOptions/ +title: FieldLiteralMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldLiteralMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldLiteralMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.fieldmergemapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldmergemapoptions.md new file mode 100644 index 000000000..b37b8347f --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldmergemapoptions.md @@ -0,0 +1,86 @@ +--- +optionsClassName: FieldMergeMapOptions +optionsClassFullName: MigrationTools.Tools.FieldMergeMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldMergeMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldMergeMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldMergeMapOptions", + "WorkItemTypeName": null, + "sourceFields": null, + "targetField": null, + "formatExpression": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldMergeMapOptions +description: Ever wanted to merge two or three fields? This mapping will let you do just that. +className: FieldMergeMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: formatExpression + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: sourceFields + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldMergeMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldMergeMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldMergeMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldMergeMapOptions/ +title: FieldMergeMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldMergeMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldMergeMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.fieldskipmapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldskipmapoptions.md new file mode 100644 index 000000000..52d38bdc6 --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldskipmapoptions.md @@ -0,0 +1,76 @@ +--- +optionsClassName: FieldSkipMapOptions +optionsClassFullName: MigrationTools.Tools.FieldSkipMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldSkipMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldSkipMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldSkipMapOptions", + "WorkItemTypeName": null, + "targetField": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldSkipMapOptions +description: Allows you to skip populating an existing field. Value in target with be reset to its OriginalValue. +className: FieldSkipMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldSkipMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldSkipMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldSkipMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldSkipMapOptions/ +title: FieldSkipMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldSkipMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldSkipMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.fieldtofieldmapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldtofieldmapoptions.md new file mode 100644 index 000000000..a3f2823ff --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldtofieldmapoptions.md @@ -0,0 +1,86 @@ +--- +optionsClassName: FieldtoFieldMapOptions +optionsClassFullName: MigrationTools.Tools.FieldtoFieldMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldtoFieldMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldtoFieldMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldtoFieldMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "targetField": null, + "defaultValue": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldtoFieldMapOptions +description: Just want to map one field to another? This is the one for you. +className: FieldtoFieldMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: defaultValue + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoFieldMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoFieldMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldtoFieldMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldtoFieldMapOptions/ +title: FieldtoFieldMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldtoFieldMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldtoFieldMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.fieldtofieldmultimapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldtofieldmultimapoptions.md new file mode 100644 index 000000000..2d1d307a5 --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldtofieldmultimapoptions.md @@ -0,0 +1,76 @@ +--- +optionsClassName: FieldtoFieldMultiMapOptions +optionsClassFullName: MigrationTools.Tools.FieldtoFieldMultiMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldtoFieldMultiMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldtoFieldMultiMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldtoFieldMultiMapOptions", + "WorkItemTypeName": null, + "SourceToTargetMappings": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldtoFieldMultiMapOptions +description: Want to setup a bunch of field maps in a single go. Use this shortcut! +className: FieldtoFieldMultiMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: SourceToTargetMappings + type: Dictionary + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoFieldMultiMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoFieldMultiMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldtoFieldMultiMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldtoFieldMultiMapOptions/ +title: FieldtoFieldMultiMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldtoFieldMultiMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldtoFieldMultiMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.fieldtotagmapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldtotagmapoptions.md new file mode 100644 index 000000000..ed0d56502 --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldtotagmapoptions.md @@ -0,0 +1,81 @@ +--- +optionsClassName: FieldtoTagMapOptions +optionsClassFullName: MigrationTools.Tools.FieldtoTagMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldtoTagMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldtoTagMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldtoTagMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "formatExpression": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldtoTagMapOptions +description: Want to take a field and convert its value to a tag? Done... +className: FieldtoTagMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: formatExpression + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoTagMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldtoTagMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldtoTagMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldtoTagMapOptions/ +title: FieldtoTagMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldtoTagMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldtoTagMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.fieldvaluemapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldvaluemapoptions.md new file mode 100644 index 000000000..2c07223ee --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldvaluemapoptions.md @@ -0,0 +1,91 @@ +--- +optionsClassName: FieldValueMapOptions +optionsClassFullName: MigrationTools.Tools.FieldValueMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldValueMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldValueMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldValueMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "targetField": null, + "defaultValue": null, + "valueMapping": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldValueMapOptions +description: Need to map not just the field but also values? This is the default value mapper. +className: FieldValueMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: defaultValue + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: valueMapping + type: Dictionary + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldValueMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldValueMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldValueMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldValueMapOptions/ +title: FieldValueMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldValueMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldValueMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.fieldvaluetotagmapoptions.md b/docs/collections/_reference/reference.fieldmaps.fieldvaluetotagmapoptions.md new file mode 100644 index 000000000..3b97f92ba --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.fieldvaluetotagmapoptions.md @@ -0,0 +1,86 @@ +--- +optionsClassName: FieldValuetoTagMapOptions +optionsClassFullName: MigrationTools.Tools.FieldValuetoTagMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "FieldValuetoTagMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.FieldValuetoTagMapOptions +- name: Classic + description: + code: >- + { + "$type": "FieldValuetoTagMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "pattern": null, + "formatExpression": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.FieldValuetoTagMapOptions +description: Need to create a Tag based on a field value? Just create a regex match and choose how to populate the target. +className: FieldValuetoTagMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: formatExpression + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: pattern + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldValuetoTagMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/FieldValuetoTagMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/FieldValuetoTagMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/FieldValuetoTagMapOptions/ +title: FieldValuetoTagMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/FieldValuetoTagMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/FieldValuetoTagMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.multivalueconditionalmapoptions.md b/docs/collections/_reference/reference.fieldmaps.multivalueconditionalmapoptions.md new file mode 100644 index 000000000..90460b544 --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.multivalueconditionalmapoptions.md @@ -0,0 +1,81 @@ +--- +optionsClassName: MultiValueConditionalMapOptions +optionsClassFullName: MigrationTools.Tools.MultiValueConditionalMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "MultiValueConditionalMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.MultiValueConditionalMapOptions +- name: Classic + description: + code: >- + { + "$type": "MultiValueConditionalMapOptions", + "WorkItemTypeName": null, + "sourceFieldsAndValues": null, + "targetFieldsAndValues": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.MultiValueConditionalMapOptions +description: ??? If you know how to use this please send a PR :) +className: MultiValueConditionalMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: sourceFieldsAndValues + type: Dictionary + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetFieldsAndValues + type: Dictionary + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/MultiValueConditionalMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/MultiValueConditionalMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/MultiValueConditionalMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/MultiValueConditionalMapOptions/ +title: MultiValueConditionalMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/MultiValueConditionalMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/MultiValueConditionalMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.regexfieldmapoptions.md b/docs/collections/_reference/reference.fieldmaps.regexfieldmapoptions.md new file mode 100644 index 000000000..04aa2be61 --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.regexfieldmapoptions.md @@ -0,0 +1,91 @@ +--- +optionsClassName: RegexFieldMapOptions +optionsClassFullName: MigrationTools.Tools.RegexFieldMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "RegexFieldMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.RegexFieldMapOptions +- name: Classic + description: + code: >- + { + "$type": "RegexFieldMapOptions", + "WorkItemTypeName": null, + "sourceField": null, + "targetField": null, + "pattern": null, + "replacement": null, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.RegexFieldMapOptions +description: I just need that bit of a field... need to send "2016.2" to two fields, one for year and one for release? Done. +className: RegexFieldMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: pattern + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: replacement + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: sourceField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: targetField + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/RegexFieldMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/RegexFieldMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/RegexFieldMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/RegexFieldMapOptions/ +title: RegexFieldMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/RegexFieldMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/RegexFieldMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.fieldmaps.treetotagmapoptions.md b/docs/collections/_reference/reference.fieldmaps.treetotagmapoptions.md new file mode 100644 index 000000000..aac8ffdf6 --- /dev/null +++ b/docs/collections/_reference/reference.fieldmaps.treetotagmapoptions.md @@ -0,0 +1,81 @@ +--- +optionsClassName: TreeToTagMapOptions +optionsClassFullName: MigrationTools.Tools.TreeToTagMapOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "CommonTools": { + "FieldMappingTool": { + "FieldDefaults": { + "TreeToTagMap": {} + } + } + } + } + } + sampleFor: MigrationTools.Tools.TreeToTagMapOptions +- name: Classic + description: + code: >- + { + "$type": "TreeToTagMapOptions", + "WorkItemTypeName": null, + "toSkip": 0, + "timeTravel": 0, + "Enabled": false, + "ApplyTo": null + } + sampleFor: MigrationTools.Tools.TreeToTagMapOptions +description: Need to clear out those nasty Area tree hierarchies? This creates Tags for each node in the Area Path... +className: TreeToTagMapOptions +typeName: FieldMaps +architecture: v1 +options: +- parameterName: ApplyTo + type: List + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enabled + type: Boolean + description: If set to `true` then the Fieldmap will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: timeTravel + type: Int32 + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: toSkip + type: Int32 + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemTypeName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +status: ready +processingTarget: Work Item Field +classFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/TreeToTagMapOptions.cs +optionsClassFile: /src/MigrationTools/Tools/FieldMappingTool/FieldMaps/TreeToTagMapOptions.cs + +redirectFrom: +- /Reference/v1/FieldMaps/TreeToTagMapOptions/ +layout: reference +toc: true +permalink: /Reference/FieldMaps/TreeToTagMapOptions/ +title: TreeToTagMapOptions +categories: +- FieldMaps +- v1 +topics: +- topic: notes + path: /FieldMaps/TreeToTagMapOptions-notes.md + exists: false + markdown: '' +- topic: introduction + path: /FieldMaps/TreeToTagMapOptions-introduction.md + exists: false + markdown: '' + +--- \ No newline at end of file diff --git a/docs/collections/_reference/reference.processorenrichers.pauseaftereachitem.md b/docs/collections/_reference/reference.processorenrichers.pauseaftereachitem.md index dd21407fd..497c1b35d 100644 --- a/docs/collections/_reference/reference.processorenrichers.pauseaftereachitem.md +++ b/docs/collections/_reference/reference.processorenrichers.pauseaftereachitem.md @@ -2,12 +2,23 @@ optionsClassName: PauseAfterEachItemOptions optionsClassFullName: MigrationTools.Enrichers.PauseAfterEachItemOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorEnricherDefaults": { + "PauseAfterEachItem": {} + } + } + } + sampleFor: MigrationTools.Enrichers.PauseAfterEachItemOptions - name: Classic description: code: >- { "$type": "PauseAfterEachItemOptions", - "Enabled": true + "Enabled": false } sampleFor: MigrationTools.Enrichers.PauseAfterEachItemOptions description: missng XML code comments @@ -25,8 +36,8 @@ options: defaultValue: missng XML code comments status: missng XML code comments processingTarget: missng XML code comments -classFile: /src/MigrationTools/ProcessorEnrichers/PauseAfterEachItem.cs -optionsClassFile: /src/MigrationTools/ProcessorEnrichers/PauseAfterEachItemOptions.cs +classFile: /src/MigrationTools/Processors/Enrichers/PauseAfterEachItem.cs +optionsClassFile: /src/MigrationTools/Processors/Enrichers/PauseAfterEachItemOptions.cs redirectFrom: - /Reference/v2/ProcessorEnrichers/PauseAfterEachItemOptions/ diff --git a/docs/collections/_reference/reference.processors.azuredevopspipelineprocessor.md b/docs/collections/_reference/reference.processors.azuredevopspipelineprocessor.md index 118e16b0d..819e7460d 100644 --- a/docs/collections/_reference/reference.processors.azuredevopspipelineprocessor.md +++ b/docs/collections/_reference/reference.processors.azuredevopspipelineprocessor.md @@ -2,6 +2,17 @@ optionsClassName: AzureDevOpsPipelineProcessorOptions optionsClassFullName: MigrationTools.Processors.AzureDevOpsPipelineProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "AzureDevOpsPipelineProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.AzureDevOpsPipelineProcessorOptions - name: Classic description: code: >- diff --git a/docs/collections/_reference/reference.processors.exportprofilepicturefromadprocessor.md b/docs/collections/_reference/reference.processors.exportprofilepicturefromadprocessor.md index 675a4515c..eb232fb49 100644 --- a/docs/collections/_reference/reference.processors.exportprofilepicturefromadprocessor.md +++ b/docs/collections/_reference/reference.processors.exportprofilepicturefromadprocessor.md @@ -1,19 +1,86 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: ExportProfilePictureFromADProcessorOptions +optionsClassFullName: MigrationTools.Processors.ExportProfilePictureFromADProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "ExportProfilePictureFromADProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.ExportProfilePictureFromADProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "ExportProfilePictureFromADProcessorOptions", + "Enabled": false, + "Domain": null, + "Username": null, + "Password": null, + "PictureEmpIDFormat": null, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.ExportProfilePictureFromADProcessorOptions description: Downloads corporate images and updates TFS/Azure DevOps profiles className: ExportProfilePictureFromADProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Domain + type: String + description: The source domain where the pictures should be exported. + defaultValue: String.Empty +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: Password + type: String + description: The password of the user that is used to export the pictures. + defaultValue: String.Empty +- parameterName: PictureEmpIDFormat + type: String + description: 'TODO: You wpuld need to customise this for your system. Clone repo and run in Debug' + defaultValue: String.Empty +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Username + type: String + description: The user name of the user that is used to export the pictures. + defaultValue: String.Empty status: alpha processingTarget: Profiles classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ExportProfilePictureFromADProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ExportProfilePictureFromADProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/ExportProfilePictureFromADProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/ExportProfilePictureFromADProcessor/ diff --git a/docs/collections/_reference/reference.processors.exportusersformappingprocessor.md b/docs/collections/_reference/reference.processors.exportusersformappingprocessor.md index dfc0e4d5f..efb60d795 100644 --- a/docs/collections/_reference/reference.processors.exportusersformappingprocessor.md +++ b/docs/collections/_reference/reference.processors.exportusersformappingprocessor.md @@ -1,19 +1,76 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: ExportUsersForMappingProcessorOptions +optionsClassFullName: MigrationTools.Processors.ExportUsersForMappingProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "ExportUsersForMappingProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.ExportUsersForMappingProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "ExportUsersForMappingProcessorOptions", + "Enabled": false, + "WIQLQuery": null, + "OnlyListUsersInWorkItems": true, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.ExportUsersForMappingProcessorOptions description: ExportUsersForMappingContext is a tool used to create a starter mapping file for users between the source and target systems. Use `ExportUsersForMappingConfig` to configure. className: ExportUsersForMappingProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: OnlyListUsersInWorkItems + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WIQLQuery + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: ready processingTarget: Work Items classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ExportUsersForMappingProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ExportUsersForMappingProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/ExportUsersForMappingProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/ExportUsersForMappingProcessor/ diff --git a/docs/collections/_reference/reference.processors.fakeprocessor.md b/docs/collections/_reference/reference.processors.fakeprocessor.md index cee2021a3..72497238a 100644 --- a/docs/collections/_reference/reference.processors.fakeprocessor.md +++ b/docs/collections/_reference/reference.processors.fakeprocessor.md @@ -1,36 +1,19 @@ --- -optionsClassName: FakeProcessorConfig -optionsClassFullName: MigrationTools._EngineV1.Configuration.Processing.FakeProcessorConfig -configurationSamples: -- name: Classic - description: - code: >- - { - "$type": "FakeProcessorConfig", - "Enabled": false, - "Enrichers": null - } - sampleFor: MigrationTools._EngineV1.Configuration.Processing.FakeProcessorConfig +optionsClassName: +optionsClassFullName: +configurationSamples: [] description: "Note: this is only for internal usage. Don't use this in your configurations." className: FakeProcessor typeName: Processors architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments -- parameterName: Enrichers - type: List - description: A list of enrichers that can augment the proccessing of the data - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/FakeProcessor.cs -optionsClassFile: /src/MigrationTools/_EngineV1/Configuration/Processing/FakeProcessorConfig.cs +optionsClassFile: redirectFrom: -- /Reference/v1/Processors/FakeProcessorConfig/ +- /Reference/v1/Processors// layout: reference toc: true permalink: /Reference/Processors/FakeProcessor/ diff --git a/docs/collections/_reference/reference.processors.fixgitcommitlinksprocessor.md b/docs/collections/_reference/reference.processors.fixgitcommitlinksprocessor.md index bd40d1c4e..112d33af9 100644 --- a/docs/collections/_reference/reference.processors.fixgitcommitlinksprocessor.md +++ b/docs/collections/_reference/reference.processors.fixgitcommitlinksprocessor.md @@ -1,19 +1,76 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: FixGitCommitLinksProcessorOptions +optionsClassFullName: MigrationTools.Processors.FixGitCommitLinksProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "FixGitCommitLinksProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.FixGitCommitLinksProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "FixGitCommitLinksProcessorOptions", + "Enabled": false, + "TargetRepository": null, + "Query": null, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.FixGitCommitLinksProcessorOptions description: missng XML code comments className: FixGitCommitLinksProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: Query + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetRepository + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/FixGitCommitLinksProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/FixGitCommitLinksProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/FixGitCommitLinksProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/FixGitCommitLinksProcessor/ diff --git a/docs/collections/_reference/reference.processors.importprofilepictureprocessor.md b/docs/collections/_reference/reference.processors.importprofilepictureprocessor.md index d1f13c8b3..26ec7b1c6 100644 --- a/docs/collections/_reference/reference.processors.importprofilepictureprocessor.md +++ b/docs/collections/_reference/reference.processors.importprofilepictureprocessor.md @@ -1,19 +1,66 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: ImportProfilePictureProcessorOptions +optionsClassFullName: MigrationTools.Processors.ImportProfilePictureProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "ImportProfilePictureProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.ImportProfilePictureProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "ImportProfilePictureProcessorOptions", + "Enabled": false, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.ImportProfilePictureProcessorOptions description: Downloads corporate images and updates TFS/Azure DevOps profiles className: ImportProfilePictureProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: alpha processingTarget: Profiles classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ImportProfilePictureProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/ImportProfilePictureProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/ImportProfilePictureProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/ImportProfilePictureProcessor/ diff --git a/docs/collections/_reference/reference.processors.processdefinitionprocessor.md b/docs/collections/_reference/reference.processors.processdefinitionprocessor.md index 70909be77..90d160b5a 100644 --- a/docs/collections/_reference/reference.processors.processdefinitionprocessor.md +++ b/docs/collections/_reference/reference.processors.processdefinitionprocessor.md @@ -2,23 +2,27 @@ optionsClassName: ProcessDefinitionProcessorOptions optionsClassFullName: MigrationTools.Processors.ProcessDefinitionProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "ProcessDefinitionProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.ProcessDefinitionProcessorOptions - name: Classic description: code: >- { "$type": "ProcessDefinitionProcessorOptions", "Enabled": false, - "Processes": { - "$type": "Dictionary`2", - "*": [ - "*" - ] - }, - "ProcessMaps": { - "$type": "Dictionary`2" - }, - "UpdateProcessDetails": true, - "MaxDegreeOfParallelism": 1, + "Processes": null, + "ProcessMaps": null, + "UpdateProcessDetails": false, + "MaxDegreeOfParallelism": 0, "Enrichers": null, "ProcessorEnrichers": null, "SourceName": null, diff --git a/docs/collections/_reference/reference.processors.testconfigurationsmigrationprocessor.md b/docs/collections/_reference/reference.processors.testconfigurationsmigrationprocessor.md index 1d8448ae3..949193fa4 100644 --- a/docs/collections/_reference/reference.processors.testconfigurationsmigrationprocessor.md +++ b/docs/collections/_reference/reference.processors.testconfigurationsmigrationprocessor.md @@ -1,19 +1,66 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: TestConfigurationsMigrationProcessorOptions +optionsClassFullName: MigrationTools.Processors.TestConfigurationsMigrationProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TestConfigurationsMigrationProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.TestConfigurationsMigrationProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "TestConfigurationsMigrationProcessorOptions", + "Enabled": false, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.TestConfigurationsMigrationProcessorOptions description: This processor can migrate `test configuration`. This should be run before `LinkMigrationConfig`. className: TestConfigurationsMigrationProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: Beta processingTarget: Suites & Plans classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestConfigurationsMigrationProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestConfigurationsMigrationProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/TestConfigurationsMigrationProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/TestConfigurationsMigrationProcessor/ diff --git a/docs/collections/_reference/reference.processors.testplansandsuitesmigrationprocessor.md b/docs/collections/_reference/reference.processors.testplansandsuitesmigrationprocessor.md index e751ae289..48b54eaac 100644 --- a/docs/collections/_reference/reference.processors.testplansandsuitesmigrationprocessor.md +++ b/docs/collections/_reference/reference.processors.testplansandsuitesmigrationprocessor.md @@ -1,19 +1,96 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: TestPlansAndSuitesMigrationProcessorOptions +optionsClassFullName: MigrationTools._EngineV1.Configuration.Processing.TestPlansAndSuitesMigrationProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TestPlansAndSuitesMigrationProcessor": {} + } + } + } + sampleFor: MigrationTools._EngineV1.Configuration.Processing.TestPlansAndSuitesMigrationProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "TestPlansAndSuitesMigrationProcessorOptions", + "Enabled": false, + "OnlyElementsWithTag": null, + "TestPlanQuery": null, + "RemoveAllLinks": false, + "MigrationDelay": 0, + "RemoveInvalidTestSuiteLinks": false, + "FilterCompleted": false, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools._EngineV1.Configuration.Processing.TestPlansAndSuitesMigrationProcessorOptions description: Rebuilds Suits and plans for Test Cases migrated using the WorkItemMigration className: TestPlansAndSuitesMigrationProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterCompleted + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: MigrationDelay + type: Int32 + description: ??Not sure what this does. Check code. + defaultValue: 0 +- parameterName: OnlyElementsWithTag + type: String + description: The tag name that is present on all elements that must be migrated. If this option isn't present this processor will migrate all. + defaultValue: '`String.Empty`' +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: RemoveAllLinks + type: Boolean + description: ??Not sure what this does. Check code. + defaultValue: false +- parameterName: RemoveInvalidTestSuiteLinks + type: Boolean + description: Indicates whether the configuration for node structure transformation should be taken from the common enricher configs. Otherwise the configuration elements below are used + defaultValue: false +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TestPlanQuery + type: String + description: Filtering conditions to decide whether to migrate a test plan or not. When provided, this partial query is added after `Select * From TestPlan Where` when selecting test plans. Among filtering options, `AreaPath`, `PlanName` and `PlanState` are known to work. There is unfortunately no documentation regarding the available fields. + defaultValue: '`String.Empty`' status: Beta processingTarget: Suites & Plans classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestPlansAndSuitesMigrationProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestPlansAndSuitesMigrationProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/TestPlansAndSuitesMigrationProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/TestPlansAndSuitesMigrationProcessor/ diff --git a/docs/collections/_reference/reference.processors.testvariablesmigrationprocessor.md b/docs/collections/_reference/reference.processors.testvariablesmigrationprocessor.md index eba8f8d7b..f3f92909c 100644 --- a/docs/collections/_reference/reference.processors.testvariablesmigrationprocessor.md +++ b/docs/collections/_reference/reference.processors.testvariablesmigrationprocessor.md @@ -1,19 +1,71 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: TestVariablesMigrationProcessorOptions +optionsClassFullName: MigrationTools.Processors.TestVariablesMigrationProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TestVariablesMigrationProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.TestVariablesMigrationProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "TestVariablesMigrationProcessorOptions", + "Enabled": false, + "Enrichers": null, + "Processor": "TestVariablesMigrationContext", + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.TestVariablesMigrationProcessorOptions description: This processor can migrate test variables that are defined in the test plans / suites. This must run before `TestPlansAndSuitesMigrationConfig`. className: TestVariablesMigrationProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: Processor + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: Beta processingTarget: Suites & Plans classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestVariablesMigrationProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/TestVariablesMigrationProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/TestVariablesMigrationProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/TestVariablesMigrationProcessor/ diff --git a/docs/collections/_reference/reference.processors.tfssharedqueryprocessor.md b/docs/collections/_reference/reference.processors.tfssharedqueryprocessor.md index 083168d29..baab4532d 100644 --- a/docs/collections/_reference/reference.processors.tfssharedqueryprocessor.md +++ b/docs/collections/_reference/reference.processors.tfssharedqueryprocessor.md @@ -2,6 +2,17 @@ optionsClassName: TfsSharedQueryProcessorOptions optionsClassFullName: MigrationTools.Processors.TfsSharedQueryProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TfsSharedQueryProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.TfsSharedQueryProcessorOptions - name: Classic description: code: >- @@ -13,8 +24,8 @@ configurationSamples: "SourceToTargetFieldMappings": null, "Enrichers": null, "ProcessorEnrichers": null, - "SourceName": "sourceName", - "TargetName": "targetName" + "SourceName": null, + "TargetName": null } sampleFor: MigrationTools.Processors.TfsSharedQueryProcessorOptions description: The TfsSharedQueryProcessor enabled you to migrate queries from one locatio nto another. diff --git a/docs/collections/_reference/reference.processors.tfsteamsettingsprocessor.md b/docs/collections/_reference/reference.processors.tfsteamsettingsprocessor.md index 9f2611ab7..1359f00af 100644 --- a/docs/collections/_reference/reference.processors.tfsteamsettingsprocessor.md +++ b/docs/collections/_reference/reference.processors.tfsteamsettingsprocessor.md @@ -2,21 +2,32 @@ optionsClassName: TfsTeamSettingsProcessorOptions optionsClassFullName: MigrationTools.Processors.TfsTeamSettingsProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "TfsTeamSettingsProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.TfsTeamSettingsProcessorOptions - name: Classic description: code: >- { "$type": "TfsTeamSettingsProcessorOptions", "Enabled": false, - "MigrateTeamSettings": true, - "UpdateTeamSettings": true, + "MigrateTeamSettings": false, + "UpdateTeamSettings": false, "PrefixProjectToNodes": false, "MigrateTeamCapacities": false, "Teams": null, "Enrichers": null, "ProcessorEnrichers": null, - "SourceName": "sourceName", - "TargetName": "targetName" + "SourceName": null, + "TargetName": null } sampleFor: MigrationTools.Processors.TfsTeamSettingsProcessorOptions description: Native TFS Processor, does not work with any other Endpoints. diff --git a/docs/collections/_reference/reference.processors.workitembulkeditprocessor.md b/docs/collections/_reference/reference.processors.workitembulkeditprocessor.md index 9e7753a3d..56717cebe 100644 --- a/docs/collections/_reference/reference.processors.workitembulkeditprocessor.md +++ b/docs/collections/_reference/reference.processors.workitembulkeditprocessor.md @@ -1,19 +1,96 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemBulkEditProcessorOptions +optionsClassFullName: MigrationTools._EngineV1.Configuration.Processing.WorkItemBulkEditProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemBulkEditProcessor": {} + } + } + } + sampleFor: MigrationTools._EngineV1.Configuration.Processing.WorkItemBulkEditProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemBulkEditProcessorOptions", + "Enabled": false, + "WhatIf": false, + "WIQLQuery": "SELECT [System.Id] FROM WorkItems WHERE [System.TeamProject] = @TeamProject AND [@ReflectedWorkItemIdFieldName] = '' AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') ORDER BY [System.ChangedDate] desc", + "WorkItemIDs": null, + "FilterWorkItemsThatAlreadyExistInTarget": false, + "PauseAfterEachWorkItem": false, + "WorkItemCreateRetryLimit": 0, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools._EngineV1.Configuration.Processing.WorkItemBulkEditProcessorOptions description: This processor allows you to make changes in place where we load from teh Target and update the Target. This is used for bulk updates with the most common reason being a process template change. className: WorkItemBulkEditProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterWorkItemsThatAlreadyExistInTarget + type: Boolean + description: This loads all of the work items already saved to the Target and removes them from the Source work item list prior to commencing the run. While this may take some time in large data sets it reduces the time of the overall migration significantly if you need to restart. + defaultValue: true +- parameterName: PauseAfterEachWorkItem + type: Boolean + description: Pause after each work item is migrated + defaultValue: false +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WhatIf + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WIQLQuery + type: String + description: A work item query based on WIQL to select only important work items. To migrate all leave this empty. See [WIQL Query Bits](#wiql-query-bits) + defaultValue: AND [Microsoft.VSTS.Common.ClosedDate] = '' AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') +- parameterName: WorkItemCreateRetryLimit + type: Int32 + description: '**beta** If set to a number greater than 0 work items that fail to save will retry after a number of seconds equal to the retry count. This allows for periodic network glitches not to end the process.' + defaultValue: 5 +- parameterName: WorkItemIDs + type: IList + description: A list of work items to import + defaultValue: '[]' status: missng XML code comments processingTarget: WorkItem classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemBulkEditProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemBulkEditProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/WorkItemBulkEditProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/WorkItemBulkEditProcessor/ diff --git a/docs/collections/_reference/reference.processors.workitemdeleteprocessor.md b/docs/collections/_reference/reference.processors.workitemdeleteprocessor.md index 1145d3722..0e13aaff9 100644 --- a/docs/collections/_reference/reference.processors.workitemdeleteprocessor.md +++ b/docs/collections/_reference/reference.processors.workitemdeleteprocessor.md @@ -1,19 +1,91 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemDeleteProcessorOptions +optionsClassFullName: MigrationTools.Processors.WorkItemDeleteProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemDeleteProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemDeleteProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemDeleteProcessorOptions", + "Enabled": false, + "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", + "WorkItemIDs": null, + "FilterWorkItemsThatAlreadyExistInTarget": false, + "PauseAfterEachWorkItem": false, + "WorkItemCreateRetryLimit": 0, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.WorkItemDeleteProcessorOptions description: The `WorkItemDelete` processor allows you to delete any amount of work items that meet the query. **DANGER:** This is not a recoverable action and should be use with extream caution. className: WorkItemDeleteProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterWorkItemsThatAlreadyExistInTarget + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: PauseAfterEachWorkItem + type: Boolean + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WIQLQuery + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemCreateRetryLimit + type: Int32 + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WorkItemIDs + type: IList + description: missng XML code comments + defaultValue: missng XML code comments status: ready processingTarget: WorkItem classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemDeleteProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemDeleteProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/WorkItemDeleteProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/WorkItemDeleteProcessor/ diff --git a/docs/collections/_reference/reference.processors.workitemmigrationprocessor.md b/docs/collections/_reference/reference.processors.workitemmigrationprocessor.md index e91058b21..a3b69da05 100644 --- a/docs/collections/_reference/reference.processors.workitemmigrationprocessor.md +++ b/docs/collections/_reference/reference.processors.workitemmigrationprocessor.md @@ -1,19 +1,131 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemMigrationProcessorOptions +optionsClassFullName: MigrationTools.Processors.WorkItemMigrationProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemMigrationProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemMigrationProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemMigrationProcessorOptions", + "Enabled": false, + "UpdateCreatedDate": true, + "UpdateCreatedBy": true, + "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", + "FixHtmlAttachmentLinks": true, + "WorkItemCreateRetryLimit": 5, + "FilterWorkItemsThatAlreadyExistInTarget": false, + "PauseAfterEachWorkItem": false, + "AttachRevisionHistory": false, + "GenerateMigrationComment": true, + "WorkItemIDs": null, + "MaxGracefulFailures": 0, + "SkipRevisionWithInvalidIterationPath": false, + "SkipRevisionWithInvalidAreaPath": false, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.WorkItemMigrationProcessorOptions description: WorkItemMigrationConfig is the main processor used to Migrate Work Items, Links, and Attachments. Use `WorkItemMigrationConfig` to configure. className: WorkItemMigrationProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: AttachRevisionHistory + type: Boolean + description: This will create a json file with the revision history and attach it to the work item. Best used with `MaxRevisions` or `ReplayRevisions`. + defaultValue: '?' +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterWorkItemsThatAlreadyExistInTarget + type: Boolean + description: This loads all of the work items already saved to the Target and removes them from the Source work item list prior to commencing the run. While this may take some time in large data sets it reduces the time of the overall migration significantly if you need to restart. + defaultValue: true +- parameterName: FixHtmlAttachmentLinks + type: Boolean + description: "**beta** If enabled this will fix any image attachments URL's, work item mention URL's or user mentions in the HTML fields as well as discussion comments. You must specify a PersonalAccessToken in the Source project for Azure DevOps; TFS should use integrated authentication." + defaultValue: '?' +- parameterName: GenerateMigrationComment + type: Boolean + description: If enabled, adds a comment recording the migration + defaultValue: false +- parameterName: MaxGracefulFailures + type: Int32 + description: The maximum number of failures to tolerate before the migration fails. When set above zero, a work item migration error is logged but the migration will continue until the number of failed items reaches the configured value, after which the migration fails. + defaultValue: 0 +- parameterName: PauseAfterEachWorkItem + type: Boolean + description: Pause after each work item is migrated + defaultValue: false +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SkipRevisionWithInvalidAreaPath + type: Boolean + description: When set to true, this setting will skip a revision if the source area has not been migrated, has been deleted or is somehow invalid, etc. + defaultValue: missng XML code comments +- parameterName: SkipRevisionWithInvalidIterationPath + type: Boolean + description: This will skip a revision if the source iteration has not been migrated i.e. it was deleted + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: UpdateCreatedBy + type: Boolean + description: "If this is enabled the creation process on the target project will create the items with the original creation date. (Important: The item history is always pointed to the date of the migration, it's change only the data column CreateDate, not the internal create date)" + defaultValue: true +- parameterName: UpdateCreatedDate + type: Boolean + description: "If this is enabled the creation process on the target project will create the items with the original creation date. (Important: The item history is always pointed to the date of the migration, it's change only the data column CreateDate, not the internal create date)" + defaultValue: true +- parameterName: WIQLQuery + type: String + description: A work item query based on WIQL to select only important work items. To migrate all leave this empty. See [WIQL Query Bits](#wiql-query-bits) + defaultValue: 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 +- parameterName: WorkItemCreateRetryLimit + type: Int32 + description: '**beta** If set to a number greater than 0 work items that fail to save will retry after a number of seconds equal to the retry count. This allows for periodic network glitches not to end the process.' + defaultValue: 5 +- parameterName: WorkItemIDs + type: IList + description: A list of work items to import + defaultValue: '[]' status: ready processingTarget: Work Items classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemMigrationProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemMigrationProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/WorkItemMigrationProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/WorkItemMigrationProcessor/ diff --git a/docs/collections/_reference/reference.processors.workitempostprocessingprocessor.md b/docs/collections/_reference/reference.processors.workitempostprocessingprocessor.md index 6aba4300e..66c470def 100644 --- a/docs/collections/_reference/reference.processors.workitempostprocessingprocessor.md +++ b/docs/collections/_reference/reference.processors.workitempostprocessingprocessor.md @@ -1,19 +1,91 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemPostProcessingProcessorOptions +optionsClassFullName: MigrationTools.Processors.WorkItemPostProcessingProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemPostProcessingProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemPostProcessingProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemPostProcessingProcessorOptions", + "Enabled": false, + "WorkItemIDs": null, + "WIQLQuery": "SELECT [System.Id] FROM WorkItems WHERE [System.TeamProject] = @TeamProject AND [@ReflectedWorkItemIdFieldName] = '' AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') ORDER BY [System.ChangedDate] desc", + "FilterWorkItemsThatAlreadyExistInTarget": false, + "PauseAfterEachWorkItem": false, + "WorkItemCreateRetryLimit": 0, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.WorkItemPostProcessingProcessorOptions description: Reapply field mappings after a migration. Does not migtate Work Items, only reapplied changes to filed mappings. className: WorkItemPostProcessingProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: FilterWorkItemsThatAlreadyExistInTarget + type: Boolean + description: This loads all of the work items already saved to the Target and removes them from the Source work item list prior to commencing the run. While this may take some time in large data sets it reduces the time of the overall migration significantly if you need to restart. + defaultValue: true +- parameterName: PauseAfterEachWorkItem + type: Boolean + description: Pause after each work item is migrated + defaultValue: false +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: WIQLQuery + type: String + description: A work item query based on WIQL to select only important work items. To migrate all leave this empty. See [WIQL Query Bits](#wiql-query-bits) + defaultValue: AND [Microsoft.VSTS.Common.ClosedDate] = '' AND [System.WorkItemType] NOT IN ('Test Suite', 'Test Plan','Shared Steps','Shared Parameter','Feedback Request') +- parameterName: WorkItemCreateRetryLimit + type: Int32 + description: '**beta** If set to a number greater than 0 work items that fail to save will retry after a number of seconds equal to the retry count. This allows for periodic network glitches not to end the process.' + defaultValue: 5 +- parameterName: WorkItemIDs + type: IList + description: A list of work items to import + defaultValue: '[]' status: preview processingTarget: Work Items classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemPostProcessingProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemPostProcessingProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/WorkItemPostProcessingProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/WorkItemPostProcessingProcessor/ diff --git a/docs/collections/_reference/reference.processors.workitemtrackingprocessor.md b/docs/collections/_reference/reference.processors.workitemtrackingprocessor.md index 5e0a3b73d..7ce02dfa1 100644 --- a/docs/collections/_reference/reference.processors.workitemtrackingprocessor.md +++ b/docs/collections/_reference/reference.processors.workitemtrackingprocessor.md @@ -2,15 +2,26 @@ optionsClassName: WorkItemTrackingProcessorOptions optionsClassFullName: MigrationTools.Processors.WorkItemTrackingProcessorOptions configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemTrackingProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemTrackingProcessorOptions - name: Classic description: code: >- { "$type": "WorkItemTrackingProcessorOptions", - "Enabled": true, - "ReplayRevisions": true, + "Enabled": false, + "ReplayRevisions": false, "CollapseRevisions": false, - "WorkItemCreateRetryLimit": 5, + "WorkItemCreateRetryLimit": 0, "Enrichers": null, "ProcessorEnrichers": null, "SourceName": null, @@ -60,8 +71,8 @@ options: defaultValue: missng XML code comments status: missng XML code comments processingTarget: missng XML code comments -classFile: /src/MigrationTools/Processors/WorkItemProcessor/WorkItemTrackingProcessor.cs -optionsClassFile: /src/MigrationTools/Processors/WorkItemProcessor/WorkItemTrackingProcessorOptions.cs +classFile: /src/MigrationTools/Processors/WorkItemTrackingProcessor.cs +optionsClassFile: /src/MigrationTools/Processors/WorkItemTrackingProcessorOptions.cs redirectFrom: - /Reference/v2/Processors/WorkItemTrackingProcessorOptions/ diff --git a/docs/collections/_reference/reference.processors.workitemupdateareasastagsprocessor.md b/docs/collections/_reference/reference.processors.workitemupdateareasastagsprocessor.md index c609a1632..7adf5fc0e 100644 --- a/docs/collections/_reference/reference.processors.workitemupdateareasastagsprocessor.md +++ b/docs/collections/_reference/reference.processors.workitemupdateareasastagsprocessor.md @@ -1,19 +1,71 @@ --- -optionsClassName: -optionsClassFullName: -configurationSamples: [] +optionsClassName: WorkItemUpdateAreasAsTagsProcessorOptions +optionsClassFullName: MigrationTools.Processors.WorkItemUpdateAreasAsTagsProcessorOptions +configurationSamples: +- name: defaults + description: + code: >- + { + "MigrationTools": { + "ProcessorDefaults": { + "WorkItemUpdateAreasAsTagsProcessor": {} + } + } + } + sampleFor: MigrationTools.Processors.WorkItemUpdateAreasAsTagsProcessorOptions +- name: Classic + description: + code: >- + { + "$type": "WorkItemUpdateAreasAsTagsProcessorOptions", + "Enabled": false, + "AreaIterationPath": null, + "Enrichers": null, + "ProcessorEnrichers": null, + "SourceName": null, + "TargetName": null + } + sampleFor: MigrationTools.Processors.WorkItemUpdateAreasAsTagsProcessorOptions description: A common issue with older *TFS/Azure DevOps* instances is the proliferation of `Area Paths`. With the use of `Area Path` for `Teams` and the addition of the `Node Name` column option these extensive tag hierarchies should instad be moved to tags. className: WorkItemUpdateAreasAsTagsProcessor typeName: Processors architecture: v1 -options: [] +options: +- parameterName: AreaIterationPath + type: String + description: This is a required parameter. That define the root path of the iteration. To get the full path use `\` + defaultValue: '\' +- parameterName: Enabled + type: Boolean + description: If set to `true` then the processor will run. Set to `false` and the processor will not run. + defaultValue: missng XML code comments +- parameterName: Enrichers + type: List + description: A list of enrichers that can augment the proccessing of the data + defaultValue: missng XML code comments +- parameterName: ProcessorEnrichers + type: List + description: List of Enrichers that can be used to add more features to this processor. Only works with Native Processors and not legacy Processors. + defaultValue: missng XML code comments +- parameterName: RefName + type: String + description: '`Refname` will be used in the future to allow for using named Options without the need to copy all of the options.' + defaultValue: missng XML code comments +- parameterName: SourceName + type: String + description: missng XML code comments + defaultValue: missng XML code comments +- parameterName: TargetName + type: String + description: missng XML code comments + defaultValue: missng XML code comments status: Beta processingTarget: Work Item classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemUpdateAreasAsTagsProcessor.cs -optionsClassFile: +optionsClassFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Processors/WorkItemUpdateAreasAsTagsProcessorOptions.cs redirectFrom: -- /Reference/v1/Processors// +- /Reference/v1/Processors/WorkItemUpdateAreasAsTagsProcessorOptions/ layout: reference toc: true permalink: /Reference/Processors/WorkItemUpdateAreasAsTagsProcessor/ diff --git a/docs/collections/_reference/reference.tools.fieldmappingtool.md b/docs/collections/_reference/reference.tools.fieldmappingtool.md index 25ca7e304..2b2657de0 100644 --- a/docs/collections/_reference/reference.tools.fieldmappingtool.md +++ b/docs/collections/_reference/reference.tools.fieldmappingtool.md @@ -2,16 +2,13 @@ optionsClassName: FieldMappingToolOptions optionsClassFullName: MigrationTools.Tools.FieldMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "FieldMappingTool": { - "Enabled": "False", - "FieldMaps": "" - } + "ProcessorDefaults": { + "FieldMappingTool": {} } } } @@ -21,8 +18,7 @@ configurationSamples: code: >- { "$type": "FieldMappingToolOptions", - "FieldMaps": [], - "Enabled": false + "FieldMaps": [] } sampleFor: MigrationTools.Tools.FieldMappingToolOptions description: missng XML code comments @@ -30,10 +26,6 @@ className: FieldMappingTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: FieldMaps type: List description: missng XML code comments diff --git a/docs/collections/_reference/reference.tools.gitrepomappingtool.md b/docs/collections/_reference/reference.tools.gitrepomappingtool.md index 1b07e6854..956f64284 100644 --- a/docs/collections/_reference/reference.tools.gitrepomappingtool.md +++ b/docs/collections/_reference/reference.tools.gitrepomappingtool.md @@ -2,18 +2,13 @@ optionsClassName: GitRepoMappingToolOptions optionsClassFullName: MigrationTools.Tools.GitRepoMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "GitRepoMappingTool": { - "Enabled": "True", - "Mappings": { - "Source Repo Name": "Target Repo Name" - } - } + "ProcessorDefaults": { + "GitRepoMappingTool": {} } } } @@ -23,11 +18,7 @@ configurationSamples: code: >- { "$type": "GitRepoMappingToolOptions", - "Mappings": { - "$type": "Dictionary`2", - "Source Repo Name": "Target Repo Name" - }, - "Enabled": true + "Mappings": null } sampleFor: MigrationTools.Tools.GitRepoMappingToolOptions description: Used to process the String fields of a work item. This is useful for cleaning up data. It will limit fields to a max length and apply regex replacements based on what is configured. Each regex replacement is applied in order and can be enabled or disabled. @@ -35,10 +26,6 @@ className: GitRepoMappingTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: Mappings type: Dictionary description: List of work item mappings. diff --git a/docs/collections/_reference/reference.tools.stringmanipulatortool.md b/docs/collections/_reference/reference.tools.stringmanipulatortool.md index bf0ea64cf..d1b0a4190 100644 --- a/docs/collections/_reference/reference.tools.stringmanipulatortool.md +++ b/docs/collections/_reference/reference.tools.stringmanipulatortool.md @@ -2,25 +2,13 @@ optionsClassName: StringManipulatorToolOptions optionsClassFullName: MigrationTools.Tools.StringManipulatorToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "StringManipulatorTool": { - "Enabled": "True", - "Manipulators": { - "0": { - "$type": "RegexStringManipulator", - "Description": "Remove invalid characters from the end of the string", - "Enabled": "True", - "Pattern": "[^( -~)\n\r\t]+", - "Replacement": "" - } - }, - "MaxStringLength": "1000000" - } + "ProcessorDefaults": { + "StringManipulatorTool": {} } } } @@ -30,17 +18,8 @@ configurationSamples: code: >- { "$type": "StringManipulatorToolOptions", - "MaxStringLength": 1000000, - "Manipulators": [ - { - "$type": "RegexStringManipulator", - "Enabled": true, - "Pattern": "[^( -~)\n\r\t]+", - "Replacement": "", - "Description": "Remove invalid characters from the end of the string" - } - ], - "Enabled": true + "MaxStringLength": 0, + "Manipulators": null } sampleFor: MigrationTools.Tools.StringManipulatorToolOptions description: Used to process the String fields of a work item. This is useful for cleaning up data. It will limit fields to a max length and apply regex replacements based on what is configured. Each regex replacement is applied in order and can be enabled or disabled. @@ -48,10 +27,6 @@ className: StringManipulatorTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: Manipulators type: List description: List of regex based string manipulations to apply to all string fields. Each regex replacement is applied in order and can be enabled or disabled. diff --git a/docs/collections/_reference/reference.tools.tfsattachmenttool.md b/docs/collections/_reference/reference.tools.tfsattachmenttool.md index c30aec861..e1d03d690 100644 --- a/docs/collections/_reference/reference.tools.tfsattachmenttool.md +++ b/docs/collections/_reference/reference.tools.tfsattachmenttool.md @@ -2,18 +2,13 @@ optionsClassName: TfsAttachmentToolOptions optionsClassFullName: MigrationTools.Tools.TfsAttachmentToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsAttachmentTool": { - "Enabled": "True", - "ExportBasePath": "c:\\temp\\WorkItemAttachmentExport", - "MaxAttachmentSize": "480000000", - "RefName": "TfsAttachmentTool" - } + "ProcessorDefaults": { + "TfsAttachmentTool": {} } } } @@ -23,9 +18,8 @@ configurationSamples: code: >- { "$type": "TfsAttachmentToolOptions", - "ExportBasePath": "c:\\temp\\WorkItemAttachmentExport", - "MaxAttachmentSize": 480000000, - "Enabled": true + "ExportBasePath": null, + "MaxAttachmentSize": 0 } sampleFor: MigrationTools.Tools.TfsAttachmentToolOptions description: missng XML code comments @@ -33,10 +27,6 @@ className: TfsAttachmentTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: ExportBasePath type: String description: '`AttachmentMigration` is set to true then you need to specify a working path for attachments to be saved locally.' diff --git a/docs/collections/_reference/reference.tools.tfschangesetmappingtool.md b/docs/collections/_reference/reference.tools.tfschangesetmappingtool.md index b01b24f92..15ce4d6b2 100644 --- a/docs/collections/_reference/reference.tools.tfschangesetmappingtool.md +++ b/docs/collections/_reference/reference.tools.tfschangesetmappingtool.md @@ -2,16 +2,13 @@ optionsClassName: TfsChangeSetMappingToolOptions optionsClassFullName: MigrationTools.Tools.TfsChangeSetMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsChangeSetMappingTool": { - "Enabled": "False", - "File": "" - } + "ProcessorDefaults": { + "TfsChangeSetMappingTool": {} } } } @@ -21,8 +18,7 @@ configurationSamples: code: >- { "$type": "TfsChangeSetMappingToolOptions", - "ChangeSetMappingFile": null, - "Enabled": false + "ChangeSetMappingFile": null } sampleFor: MigrationTools.Tools.TfsChangeSetMappingToolOptions description: missng XML code comments @@ -34,10 +30,6 @@ options: type: String description: missng XML code comments defaultValue: missng XML code comments -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsChangeSetMappingTool.cs diff --git a/docs/collections/_reference/reference.tools.tfsembededimagestool.md b/docs/collections/_reference/reference.tools.tfsembededimagestool.md index 21f5610c9..0f1b4c910 100644 --- a/docs/collections/_reference/reference.tools.tfsembededimagestool.md +++ b/docs/collections/_reference/reference.tools.tfsembededimagestool.md @@ -2,15 +2,13 @@ optionsClassName: TfsEmbededImagesToolOptions optionsClassFullName: MigrationTools.Tools.TfsEmbededImagesToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsEmbededImagesTool": { - "Enabled": "True" - } + "ProcessorDefaults": { + "TfsEmbededImagesTool": {} } } } @@ -19,19 +17,14 @@ configurationSamples: description: code: >- { - "$type": "TfsEmbededImagesToolOptions", - "Enabled": true + "$type": "TfsEmbededImagesToolOptions" } sampleFor: MigrationTools.Tools.TfsEmbededImagesToolOptions description: missng XML code comments className: TfsEmbededImagesTool typeName: Tools architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsEmbededImagesTool.cs diff --git a/docs/collections/_reference/reference.tools.tfsgitrepositorytool.md b/docs/collections/_reference/reference.tools.tfsgitrepositorytool.md index f274e2445..c02279743 100644 --- a/docs/collections/_reference/reference.tools.tfsgitrepositorytool.md +++ b/docs/collections/_reference/reference.tools.tfsgitrepositorytool.md @@ -2,12 +2,12 @@ optionsClassName: TfsGitRepositoryToolOptions optionsClassFullName: MigrationTools.Tools.TfsGitRepositoryToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { + "ProcessorDefaults": { "TfsGitRepositoryTool": {} } } @@ -17,19 +17,14 @@ configurationSamples: description: code: >- { - "$type": "TfsGitRepositoryToolOptions", - "Enabled": false + "$type": "TfsGitRepositoryToolOptions" } sampleFor: MigrationTools.Tools.TfsGitRepositoryToolOptions description: missng XML code comments className: TfsGitRepositoryTool typeName: Tools architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsGitRepositoryTool.cs diff --git a/docs/collections/_reference/reference.tools.tfsnodestructuretool.md b/docs/collections/_reference/reference.tools.tfsnodestructuretool.md index 0ab7f9905..4684532a0 100644 --- a/docs/collections/_reference/reference.tools.tfsnodestructuretool.md +++ b/docs/collections/_reference/reference.tools.tfsnodestructuretool.md @@ -2,24 +2,13 @@ optionsClassName: TfsNodeStructureToolOptions optionsClassFullName: MigrationTools.Tools.TfsNodeStructureToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsNodeStructureTool": { - "AreaMaps": { - "^migrationSource1([\\\\]?.*)$": "MigrationTest5$1" - }, - "Enabled": "True", - "IterationMaps": { - "^migrationSource1([\\\\]?.*)$": "MigrationTest5$1" - }, - "NodeBasePaths": {}, - "ReplicateAllExistingNodes": "True", - "ShouldCreateMissingRevisionPaths": "True" - } + "ProcessorDefaults": { + "TfsNodeStructureTool": {} } } } @@ -30,17 +19,10 @@ configurationSamples: { "$type": "TfsNodeStructureToolOptions", "NodeBasePaths": null, - "AreaMaps": { - "$type": "Dictionary`2", - "^migrationSource1([\\\\]?.*)$": "MigrationTest5$1" - }, - "IterationMaps": { - "$type": "Dictionary`2", - "^migrationSource1([\\\\]?.*)$": "MigrationTest5$1" - }, - "ShouldCreateMissingRevisionPaths": true, - "ReplicateAllExistingNodes": true, - "Enabled": true + "AreaMaps": null, + "IterationMaps": null, + "ShouldCreateMissingRevisionPaths": false, + "ReplicateAllExistingNodes": false } sampleFor: MigrationTools.Tools.TfsNodeStructureToolOptions description: The TfsNodeStructureToolEnricher is used to create missing nodes in the target project. To configure it add a `TfsNodeStructureToolOptions` section to `CommonEnrichersConfig` in the config file. Otherwise defaults will be applied. @@ -52,10 +34,6 @@ options: type: Dictionary description: Remapping rules for area paths, implemented with regular expressions. The rules apply with a higher priority than the `PrefixProjectToNodes`, that is, if no rule matches the path and the `PrefixProjectToNodes` option is enabled, then the old `PrefixProjectToNodes` behavior is applied. defaultValue: '{}' -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: IterationMaps type: Dictionary description: Remapping rules for iteration paths, implemented with regular expressions. The rules apply with a higher priority than the `PrefixProjectToNodes`, that is, if no rule matches the path and the `PrefixProjectToNodes` option is enabled, then the old `PrefixProjectToNodes` behavior is applied. diff --git a/docs/collections/_reference/reference.tools.tfsrevisionmanagertool.md b/docs/collections/_reference/reference.tools.tfsrevisionmanagertool.md index f61f8b05e..7319f97f4 100644 --- a/docs/collections/_reference/reference.tools.tfsrevisionmanagertool.md +++ b/docs/collections/_reference/reference.tools.tfsrevisionmanagertool.md @@ -2,17 +2,13 @@ optionsClassName: TfsRevisionManagerToolOptions optionsClassFullName: MigrationTools.Tools.TfsRevisionManagerToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsRevisionManagerTool": { - "Enabled": "True", - "MaxRevisions": "0", - "ReplayRevisions": "True" - } + "ProcessorDefaults": { + "TfsRevisionManagerTool": {} } } } @@ -22,9 +18,8 @@ configurationSamples: code: >- { "$type": "TfsRevisionManagerToolOptions", - "ReplayRevisions": true, - "MaxRevisions": 0, - "Enabled": true + "ReplayRevisions": false, + "MaxRevisions": 0 } sampleFor: MigrationTools.Tools.TfsRevisionManagerToolOptions description: The TfsRevisionManagerTool manipulates the revisions of a work item to reduce the number of revisions that are migrated. @@ -32,10 +27,6 @@ className: TfsRevisionManagerTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: MaxRevisions type: Int32 description: Sets the maximum number of revisions that will be migrated. "First + Last N = Max". If this was set to 5 and there were 10 revisions you would get the first 1 (creation) and the latest 4 migrated. diff --git a/docs/collections/_reference/reference.tools.tfsteamsettingstool.md b/docs/collections/_reference/reference.tools.tfsteamsettingstool.md index 96722e613..3f9b6a95c 100644 --- a/docs/collections/_reference/reference.tools.tfsteamsettingstool.md +++ b/docs/collections/_reference/reference.tools.tfsteamsettingstool.md @@ -2,19 +2,13 @@ optionsClassName: TfsTeamSettingsToolOptions optionsClassFullName: MigrationTools.Tools.TfsTeamSettingsToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsTeamSettingsTool": { - "Enabled": "True", - "MigrateTeamCapacities": "True", - "MigrateTeamSettings": "True", - "Teams": {}, - "UpdateTeamSettings": "True" - } + "ProcessorDefaults": { + "TfsTeamSettingsTool": {} } } } @@ -24,11 +18,10 @@ configurationSamples: code: >- { "$type": "TfsTeamSettingsToolOptions", - "MigrateTeamSettings": true, - "UpdateTeamSettings": true, - "MigrateTeamCapacities": true, - "Teams": null, - "Enabled": true + "MigrateTeamSettings": false, + "UpdateTeamSettings": false, + "MigrateTeamCapacities": false, + "Teams": null } sampleFor: MigrationTools.Tools.TfsTeamSettingsToolOptions description: The TfsUserMappingTool is used to map users from the source to the target system. Run it with the ExportUsersForMappingContext to create a mapping file then with WorkItemMigrationContext to use the mapping file to update the users in the target system as you migrate the work items. @@ -36,10 +29,6 @@ className: TfsTeamSettingsTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: MigrateTeamCapacities type: Boolean description: 'Migrate original team member capacities after their creation on the target team project. Note: It will only migrate team member capacity if the team member with same display name exists on the target collection otherwise it will be ignored.' diff --git a/docs/collections/_reference/reference.tools.tfsusermappingtool.md b/docs/collections/_reference/reference.tools.tfsusermappingtool.md index 84949a60c..12612ef73 100644 --- a/docs/collections/_reference/reference.tools.tfsusermappingtool.md +++ b/docs/collections/_reference/reference.tools.tfsusermappingtool.md @@ -2,24 +2,13 @@ optionsClassName: TfsUserMappingToolOptions optionsClassFullName: MigrationTools.Tools.TfsUserMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsUserMappingTool": { - "Enabled": "False", - "IdentityFieldsToCheck": { - "0": "System.AssignedTo", - "1": "System.ChangedBy", - "2": "System.CreatedBy", - "3": "Microsoft.VSTS.Common.ActivatedBy", - "4": "Microsoft.VSTS.Common.ResolvedBy", - "5": "Microsoft.VSTS.Common.ClosedBy" - }, - "UserMappingFile": "C:\\temp\\userExport.json" - } + "ProcessorDefaults": { + "TfsUserMappingTool": {} } } } @@ -29,16 +18,8 @@ configurationSamples: code: >- { "$type": "TfsUserMappingToolOptions", - "IdentityFieldsToCheck": [ - "System.AssignedTo", - "System.ChangedBy", - "System.CreatedBy", - "Microsoft.VSTS.Common.ActivatedBy", - "Microsoft.VSTS.Common.ResolvedBy", - "Microsoft.VSTS.Common.ClosedBy" - ], - "UserMappingFile": "C:\\temp\\userExport.json", - "Enabled": false + "IdentityFieldsToCheck": null, + "UserMappingFile": null } sampleFor: MigrationTools.Tools.TfsUserMappingToolOptions description: The TfsUserMappingTool is used to map users from the source to the target system. Run it with the ExportUsersForMappingContext to create a mapping file then with WorkItemMigrationContext to use the mapping file to update the users in the target system as you migrate the work items. @@ -46,10 +27,6 @@ className: TfsUserMappingTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: IdentityFieldsToCheck type: List description: This is a list of the Identiy fields in the Source to check for user mapping purposes. You should list all identiy fields that you wan to map. diff --git a/docs/collections/_reference/reference.tools.tfsvalidaterequiredfieldtool.md b/docs/collections/_reference/reference.tools.tfsvalidaterequiredfieldtool.md index 578e42bf2..974e67bf9 100644 --- a/docs/collections/_reference/reference.tools.tfsvalidaterequiredfieldtool.md +++ b/docs/collections/_reference/reference.tools.tfsvalidaterequiredfieldtool.md @@ -2,12 +2,12 @@ optionsClassName: TfsValidateRequiredFieldToolOptions optionsClassFullName: MigrationTools.Tools.TfsValidateRequiredFieldToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { + "ProcessorDefaults": { "TfsValidateRequiredFieldTool": {} } } @@ -17,19 +17,14 @@ configurationSamples: description: code: >- { - "$type": "TfsValidateRequiredFieldToolOptions", - "Enabled": false + "$type": "TfsValidateRequiredFieldToolOptions" } sampleFor: MigrationTools.Tools.TfsValidateRequiredFieldToolOptions description: missng XML code comments className: TfsValidateRequiredFieldTool typeName: Tools architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsValidateRequiredFieldTool.cs diff --git a/docs/collections/_reference/reference.tools.tfsworkitemembededlinktool.md b/docs/collections/_reference/reference.tools.tfsworkitemembededlinktool.md index ffc1ad07b..8af46c54b 100644 --- a/docs/collections/_reference/reference.tools.tfsworkitemembededlinktool.md +++ b/docs/collections/_reference/reference.tools.tfsworkitemembededlinktool.md @@ -2,15 +2,13 @@ optionsClassName: TfsWorkItemEmbededLinkToolOptions optionsClassFullName: MigrationTools.Tools.TfsWorkItemEmbededLinkToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsWorkItemEmbededLinkTool": { - "Enabled": "True" - } + "ProcessorDefaults": { + "TfsWorkItemEmbededLinkTool": {} } } } @@ -19,19 +17,14 @@ configurationSamples: description: code: >- { - "$type": "TfsWorkItemEmbededLinkToolOptions", - "Enabled": true + "$type": "TfsWorkItemEmbededLinkToolOptions" } sampleFor: MigrationTools.Tools.TfsWorkItemEmbededLinkToolOptions description: missng XML code comments className: TfsWorkItemEmbededLinkTool typeName: Tools architecture: v1 -options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments +options: [] status: missng XML code comments processingTarget: missng XML code comments classFile: /src/MigrationTools.Clients.AzureDevops.ObjectModel/Tools/TfsWorkItemEmbededLinkTool.cs diff --git a/docs/collections/_reference/reference.tools.tfsworkitemlinktool.md b/docs/collections/_reference/reference.tools.tfsworkitemlinktool.md index cbddc8beb..b13a3483e 100644 --- a/docs/collections/_reference/reference.tools.tfsworkitemlinktool.md +++ b/docs/collections/_reference/reference.tools.tfsworkitemlinktool.md @@ -2,17 +2,13 @@ optionsClassName: TfsWorkItemLinkToolOptions optionsClassFullName: MigrationTools.Tools.TfsWorkItemLinkToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "TfsWorkItemLinkTool": { - "Enabled": "True", - "FilterIfLinkCountMatches": "True", - "SaveAfterEachLinkIsAdded": "False" - } + "ProcessorDefaults": { + "TfsWorkItemLinkTool": {} } } } @@ -22,9 +18,8 @@ configurationSamples: code: >- { "$type": "TfsWorkItemLinkToolOptions", - "FilterIfLinkCountMatches": true, - "SaveAfterEachLinkIsAdded": false, - "Enabled": true + "FilterIfLinkCountMatches": false, + "SaveAfterEachLinkIsAdded": false } sampleFor: MigrationTools.Tools.TfsWorkItemLinkToolOptions description: missng XML code comments @@ -32,10 +27,6 @@ className: TfsWorkItemLinkTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: FilterIfLinkCountMatches type: Boolean description: Skip validating links if the number of links in the source and the target matches! diff --git a/docs/collections/_reference/reference.tools.workitemtypemappingtool.md b/docs/collections/_reference/reference.tools.workitemtypemappingtool.md index de526ba85..16e12cb93 100644 --- a/docs/collections/_reference/reference.tools.workitemtypemappingtool.md +++ b/docs/collections/_reference/reference.tools.workitemtypemappingtool.md @@ -2,18 +2,13 @@ optionsClassName: WorkItemTypeMappingToolOptions optionsClassFullName: MigrationTools.Tools.WorkItemTypeMappingToolOptions configurationSamples: -- name: default +- name: defaults description: code: >- { "MigrationTools": { - "CommonTools": { - "WorkItemTypeMappingTool": { - "Enabled": "False", - "Mappings": { - "Source Work Item Type Name": "Target Work Item Type Name" - } - } + "ProcessorDefaults": { + "WorkItemTypeMappingTool": {} } } } @@ -23,11 +18,7 @@ configurationSamples: code: >- { "$type": "WorkItemTypeMappingToolOptions", - "Mappings": { - "$type": "Dictionary`2", - "Source Work Item Type Name": "Target Work Item Type Name" - }, - "Enabled": false + "Mappings": null } sampleFor: MigrationTools.Tools.WorkItemTypeMappingToolOptions description: Used to process the String fields of a work item. This is useful for cleaning up data. It will limit fields to a max length and apply regex replacements based on what is configured. Each regex replacement is applied in order and can be enabled or disabled. @@ -35,10 +26,6 @@ className: WorkItemTypeMappingTool typeName: Tools architecture: v1 options: -- parameterName: Enabled - type: Boolean - description: missng XML code comments - defaultValue: missng XML code comments - parameterName: Mappings type: Dictionary description: List of work item mappings. diff --git a/src/MigrationTools.ConsoleDataGenerator/ClassDataLoader.cs b/src/MigrationTools.ConsoleDataGenerator/ClassDataLoader.cs index dcaa0d2c6..1587dc98d 100644 --- a/src/MigrationTools.ConsoleDataGenerator/ClassDataLoader.cs +++ b/src/MigrationTools.ConsoleDataGenerator/ClassDataLoader.cs @@ -28,28 +28,6 @@ public ClassDataLoader(DataSerialization saveData, Microsoft.Extensions.Configur this.configuration = configuration; } - [Obsolete("Please use GetClassData instead")] - public ClassGroup GetClassGroup(List targetTypes, List allTypes, Type type, string apiVersion, string dataTypeName, bool findConfig = true, string configEnd = "Options") - { - Console.WriteLine(); - Console.WriteLine($"ClassDataLoader::BuildJekyllDataFile:: {dataTypeName}"); - ClassGroup data = new ClassGroup(); - data.Name = dataTypeName; - var founds = targetTypes.Where(t => type.IsAssignableFrom(t) && !t.IsAbstract && !t.IsInterface && t.IsPublic).OrderBy(t => t.Name).ToList(); - Console.WriteLine($"ClassDataLoader::BuildJekyllDataFile:: ----------- Found {founds.Count}"); - - // Each File - foreach (var item in founds) - { - DataItem dataItem = new DataItem(); - - Console.WriteLine($"ClassDataLoader::BuildJekyllDataFile::-PROCESS {item.Name}"); - dataItem.classData = CreateClassData(targetTypes, allTypes, apiVersion, dataTypeName, item, findConfig, configEnd); - } - Console.WriteLine("ClassDataLoader::BuildJekyllDataFile:: -----------"); - return data; - } - public List GetClassData(List targetTypes, List allTypes, Type type, string apiVersion, string dataTypeName, bool findConfig = true, string configEnd = "Options") { Console.WriteLine(); @@ -61,13 +39,13 @@ public List GetClassData(List targetTypes, List allTypes, foreach (var item in founds) { Console.WriteLine($"ClassDataLoader::populateClassData::-PROCESS {item.Name}"); - data.Add(CreateClassData(targetTypes, allTypes, apiVersion, dataTypeName, item, findConfig, configEnd)); + data.Add(CreateClassData(targetTypes, allTypes, type, apiVersion, dataTypeName, item, findConfig, configEnd)); } Console.WriteLine("ClassDataLoader::populateClassData:: -----------"); return data; } - private ClassData CreateClassData(List targetTypes, List allTypes, string apiVersion, string dataTypeName, Type item, bool findConfig = true, string configEnd = "Options") + private ClassData CreateClassData(List targetTypes, List allTypes, Type type, string apiVersion, string dataTypeName, Type item, bool findConfig = true, string configEnd = "Options") { Type typeOption = item; string objectName = item.Name; @@ -98,26 +76,20 @@ private ClassData CreateClassData(List targetTypes, List allTypes, s data.OptionsClassName = typeOption.Name; data.OptionsClassFile = codeFinder.FindCodeFile(typeOption); object targetItem = null; - var ConfigurationSectionName = ((IOptions)typeOption).ConfigurationSectionName; + var instanceOfOptions = Activator.CreateInstance(typeOption); + var ConfigurationSectionName = (string)typeOption.GetProperty("ConfigurationSectionName")?.GetValue(instanceOfOptions); if (!string.IsNullOrEmpty(ConfigurationSectionName)) { Console.WriteLine("Processing as ConfigurationSectionName"); var section = configuration.GetSection(ConfigurationSectionName); - targetItem = (IOptions)Activator.CreateInstance(typeOption); + targetItem = (IOptions)instanceOfOptions; section.Bind(targetItem); - data.ConfigurationSamples.Add(new ConfigurationSample() { Name = "default", SampleFor = data.OptionsClassFullName, Code = ConvertSectionWithPathToJson(configuration, section).Trim() } ); + data.ConfigurationSamples.Add(new ConfigurationSample() { Name = "defaults", SampleFor = data.OptionsClassFullName, Code = ConvertSectionWithPathToJson(configuration, section).Trim() } ); } if (typeOption.GetInterfaces().Contains(typeof(IOptions))) { Console.WriteLine("Processing as IOptions"); - var options = (IOldOptions)Activator.CreateInstance(typeOption); - targetItem = options; - } - if (typeOption.GetInterfaces().Contains(typeof(IFieldMapOptions))) - { - Console.WriteLine("Processing as IFieldMapConfig"); - var options = (IFieldMapOptions)Activator.CreateInstance(typeOption); - options.SetExampleConfigDefaults(); + var options = (IOptions)instanceOfOptions; targetItem = options; } if (targetItem != null) diff --git a/src/MigrationTools.ConsoleDataGenerator/Program.cs b/src/MigrationTools.ConsoleDataGenerator/Program.cs index fd5cbc754..6301aae5e 100644 --- a/src/MigrationTools.ConsoleDataGenerator/Program.cs +++ b/src/MigrationTools.ConsoleDataGenerator/Program.cs @@ -57,18 +57,21 @@ static void Main(string[] args) List classDataList = new List(); // V1 - classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IOldProcessor), "v1", "Processors", true, "Config")); - classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IFieldMapOptions), "v1", "FieldMaps", false)); + classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IOldProcessor), "v1", "Processors", true)); + // V2 classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IProcessor), "v2", "Processors")); classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IProcessorEnricher), "v2", "ProcessorEnrichers")); - classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IFieldMapOptions), "v2", "FieldMaps", false)); + classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IEndpoint), "v2", "Endpoints")); classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IEndpointEnricher), "v2", "EndpointEnrichers")); classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(ITool), "v1", "Tools")); + classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IFieldMapOptions), "v2", "FieldMaps", false)); + classDataList.AddRange(cdLoader.GetClassData(newTypes, newTypes, typeof(IFieldMapOptions), "v1", "FieldMaps", false)); + Console.WriteLine("-----------"); Console.WriteLine("Output"); Console.WriteLine("-----------"); diff --git a/src/MigrationTools.Tests/Core/Engine/Containers/SimpleProcessorConfigMock.cs b/src/MigrationTools.Tests/Core/Engine/Containers/SimpleProcessorConfigMock.cs index 067f580f8..6f6bf2dd1 100644 --- a/src/MigrationTools.Tests/Core/Engine/Containers/SimpleProcessorConfigMock.cs +++ b/src/MigrationTools.Tests/Core/Engine/Containers/SimpleProcessorConfigMock.cs @@ -1,26 +1,12 @@ using System.Collections.Generic; using MigrationTools._EngineV1.Configuration; using MigrationTools.Enrichers; +using MigrationTools.Processors.Infrastructure; namespace MigrationTools.Engine.Containers.Tests { - public class SimpleProcessorConfigMock : IProcessorConfig + public class SimpleProcessorConfigMock : ProcessorOptions { - /// - public bool Enabled { get; set; } - /// - public string Processor - { - get { return "SimpleProcessorMock"; } - } - - public List Enrichers { get ; set ; } - - /// - public bool IsProcessorCompatible(IReadOnlyList otherProcessors) - { - return true; - } } } \ No newline at end of file diff --git a/src/MigrationTools/Processors/Infrastructure/ProcessorContainer.cs b/src/MigrationTools/Processors/Infrastructure/ProcessorContainer.cs index c1d5aa603..cd7e1f2e8 100644 --- a/src/MigrationTools/Processors/Infrastructure/ProcessorContainer.cs +++ b/src/MigrationTools/Processors/Infrastructure/ProcessorContainer.cs @@ -56,16 +56,16 @@ private List LoadProcessorsfromOptions(ProcessorContainerOptions { if (processorConfig.IsProcessorCompatible(enabledProcessors)) { - _logger.LogInformation("ProcessorContainer: Adding Processor {ProcessorName}", processorConfig.Processor); + _logger.LogInformation("ProcessorContainer: Adding Processor {ProcessorName}", processorConfig.OptionFor); Type type = allTypes - .FirstOrDefault(t => t.Name.Equals(processorConfig.Processor)); + .FirstOrDefault(t => t.Name.Equals(processorConfig.OptionFor)); if (type == null) { - _logger.LogError("Type " + processorConfig.Processor + " not found.", processorConfig.Processor); - throw new Exception("Type " + processorConfig.Processor + " not found."); + _logger.LogError("Type " + processorConfig.OptionFor + " not found.", processorConfig.OptionFor); + throw new Exception("Type " + processorConfig.OptionFor + " not found."); } IOldProcessor pc = (IOldProcessor)ActivatorUtilities.CreateInstance(_services, type); processors.Add(pc); @@ -73,8 +73,8 @@ private List LoadProcessorsfromOptions(ProcessorContainerOptions else { var message = "ProcessorContainer: Cannot add Processor {ProcessorName}. Processor is not compatible with other enabled processors in configuration."; - _logger.LogError(message, processorConfig.Processor); - throw new InvalidOperationException(string.Format(message, processorConfig.Processor, "ProcessorContainer")); + _logger.LogError(message, processorConfig.OptionFor); + throw new InvalidOperationException(string.Format(message, processorConfig.OptionFor, "ProcessorContainer")); } } } diff --git a/src/MigrationTools/Processors/Infrastructure/ProcessorOptions.cs b/src/MigrationTools/Processors/Infrastructure/ProcessorOptions.cs index cb161ae49..1d17c4142 100644 --- a/src/MigrationTools/Processors/Infrastructure/ProcessorOptions.cs +++ b/src/MigrationTools/Processors/Infrastructure/ProcessorOptions.cs @@ -7,8 +7,8 @@ namespace MigrationTools.Processors.Infrastructure { public abstract class ProcessorOptions : IProcessorOptions { - public virtual string ConfigurationSectionName => $"MigrationTools:ProcessorDefaults:{Processor}"; - public virtual string Processor => $"{GetType().Name.Replace("Options", "")}"; + public virtual string ConfigurationSectionName => $"MigrationTools:ProcessorDefaults:{OptionFor}"; + public string OptionFor => $"{GetType().Name.Replace("Options", "")}"; /// /// If set to `true` then the processor will run. Set to `false` and the processor will not run. /// diff --git a/src/MigrationTools/Tools/FieldMappingTool/Infrastructure/FieldMapOptions.cs b/src/MigrationTools/Tools/FieldMappingTool/Infrastructure/FieldMapOptions.cs index 4e471da66..e1815a41a 100644 --- a/src/MigrationTools/Tools/FieldMappingTool/Infrastructure/FieldMapOptions.cs +++ b/src/MigrationTools/Tools/FieldMappingTool/Infrastructure/FieldMapOptions.cs @@ -18,10 +18,5 @@ public abstract class FieldMapOptions : IFieldMapOptions public bool Enabled { get; set; } public List ApplyTo { get; set; } - - public void SetExampleConfigDefaults() - { - throw new NotImplementedException(); - } } } diff --git a/src/MigrationTools/Tools/FieldMappingTool/Infrastructure/IFieldMapOptions.cs b/src/MigrationTools/Tools/FieldMappingTool/Infrastructure/IFieldMapOptions.cs index 550d00b9a..d6ab773b9 100644 --- a/src/MigrationTools/Tools/FieldMappingTool/Infrastructure/IFieldMapOptions.cs +++ b/src/MigrationTools/Tools/FieldMappingTool/Infrastructure/IFieldMapOptions.cs @@ -8,7 +8,5 @@ public interface IFieldMapOptions : IOptions { List ApplyTo { get; set; } - void SetExampleConfigDefaults(); - } } \ No newline at end of file diff --git a/src/MigrationTools/_EngineV1/Configuration/IProcessorConfig.cs b/src/MigrationTools/_EngineV1/Configuration/IProcessorConfig.cs index 3213605ac..1bdedd5ad 100644 --- a/src/MigrationTools/_EngineV1/Configuration/IProcessorConfig.cs +++ b/src/MigrationTools/_EngineV1/Configuration/IProcessorConfig.cs @@ -1,10 +1,11 @@ using System.Collections.Generic; using MigrationTools.Enrichers; +using MigrationTools.Options; using Newtonsoft.Json; namespace MigrationTools._EngineV1.Configuration { - public interface IProcessorConfig + public interface IProcessorConfig : IOptions { /// /// Active the processor if it true. @@ -12,8 +13,6 @@ public interface IProcessorConfig [JsonProperty(Order = -200)] bool Enabled { get; set; } - [JsonIgnore] - string Processor { get; } List Enrichers { get; set; } ///