Skip to content

Commit 27e400c

Browse files
committed
Get Migration task parameter set changes
1 parent 9f3793b commit 27e400c

File tree

2 files changed

+125
-68
lines changed

2 files changed

+125
-68
lines changed

src/ResourceManager/DataMigration/Commands.DataMigration/Cmdlets/GetDataMigrationTask.cs

Lines changed: 45 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -14,96 +14,109 @@ namespace Microsoft.Azure.Commands.DataMigration.Cmdlets
1414
[Alias("Get-AzureRmDmsTask")]
1515
public class GetDataMigrationTask : DataMigrationCmdlet
1616
{
17-
private const string DefaultParams = ComponentNameParameterSet;
18-
private const string ExpandTaskSet = "ExpandTaskSet";
19-
private const string ExpandTaskResultTypeSet = "ExpandTaskResultTypeSet";
20-
private const string TaskSet = "TaskSet";
21-
private const string TaskTypeSet = "TaskTypeSet";
17+
private const string DefaultParams = ListByComponent;
18+
private const string ListByComponent = "ListByComponent";
19+
private const string GetByComponent = "GetByComponent";
20+
private const string GetByComponentResultType = "GetByComponentResultType";
21+
private const string ListByInputObject = "ListByInputObject";
22+
private const string GetByInputObject = "GetByInputObject";
23+
private const string GetByInputObjectResultType = "GetByInputObjectResultType";
24+
private const string ListByResourceId = "ListByResourceId";
25+
private const string GetByResourceId = "GetByResourceId";
26+
private const string GetByResourceIdResultType = "GetByResourceIdResultType";
27+
2228

2329
[Parameter(
2430
Position = 0,
2531
Mandatory = true,
26-
ParameterSetName = ComponentObjectParameterSet,
32+
ParameterSetName = ListByInputObject,
2733
ValueFromPipeline = true,
2834
HelpMessage = "PSProject Object.")]
35+
[Parameter(ParameterSetName = GetByInputObject, Mandatory = true)]
36+
[Parameter(ParameterSetName = GetByInputObjectResultType, Mandatory = true)]
2937
[ValidateNotNull]
3038
[Alias("Project")]
3139
public PSProject InputObject { get; set; }
3240

3341
[Parameter(
3442
Position = 0,
3543
Mandatory = true,
36-
ParameterSetName = ResourceIdParameterSet,
44+
ParameterSetName = ListByResourceId,
3745
ValueFromPipelineByPropertyName = true,
3846
HelpMessage = "Project Resource Id.")]
3947
[ValidateNotNullOrEmpty]
48+
[Parameter(ParameterSetName = GetByResourceId, Mandatory = true)]
49+
[Parameter(ParameterSetName = GetByResourceIdResultType, Mandatory = true)]
4050
public string ResourceId { get; set; }
4151

4252
[Parameter(
4353
Mandatory = true,
44-
ParameterSetName = DefaultParams,
54+
ParameterSetName = ListByComponent,
4555
HelpMessage = "The name of the resource group."
4656
)]
4757
[ValidateNotNullOrEmpty]
48-
[Parameter(ParameterSetName = TaskSet, Mandatory = true)]
49-
[Parameter(ParameterSetName = ExpandTaskSet, Mandatory = true)]
50-
[Parameter(ParameterSetName = ExpandTaskResultTypeSet, Mandatory = true)]
51-
[Parameter(ParameterSetName = TaskTypeSet, Mandatory = true)]
58+
[Parameter(ParameterSetName = GetByComponent, Mandatory = true)]
59+
[Parameter(ParameterSetName = GetByComponentResultType, Mandatory = true)]
5260
public string ResourceGroupName { get; set; }
5361

5462
[Parameter(
5563
Mandatory = true,
56-
ParameterSetName = DefaultParams,
64+
ParameterSetName = ListByComponent,
5765
HelpMessage = "Data Migration Service Name.")]
5866
[ValidateNotNullOrEmpty]
59-
[Parameter(ParameterSetName = TaskSet, Mandatory = true)]
60-
[Parameter(ParameterSetName = ExpandTaskSet, Mandatory = true)]
61-
[Parameter(ParameterSetName = ExpandTaskResultTypeSet, Mandatory = true)]
62-
[Parameter(ParameterSetName = TaskTypeSet, Mandatory = true)]
67+
[Parameter(ParameterSetName = GetByComponent, Mandatory = true)]
68+
[Parameter(ParameterSetName = GetByComponentResultType, Mandatory = true)]
6369
public string ServiceName { get; set; }
6470

6571
[Parameter(
6672
Mandatory = true,
67-
ParameterSetName = DefaultParams,
73+
ParameterSetName = ListByComponent,
6874
HelpMessage = "The name of the project.")]
69-
[Parameter(ParameterSetName = TaskSet, Mandatory = true)]
70-
[Parameter(ParameterSetName = ExpandTaskSet, Mandatory = true)]
71-
[Parameter(ParameterSetName = ExpandTaskResultTypeSet, Mandatory = true)]
72-
[Parameter(ParameterSetName = TaskTypeSet, Mandatory = true)]
75+
[Parameter(ParameterSetName = GetByComponent, Mandatory = true)]
76+
[Parameter(ParameterSetName = GetByComponentResultType, Mandatory = true)]
7377
[ValidateNotNullOrEmpty]
7478
public string ProjectName { get; set; }
7579

7680
[Parameter(
77-
ParameterSetName = TaskSet,
81+
ParameterSetName = GetByComponent,
7882
Mandatory = false,
7983
HelpMessage = "The name of the task.")]
80-
[Parameter(ParameterSetName = ExpandTaskSet, Mandatory = true)]
81-
[Parameter(ParameterSetName = ExpandTaskResultTypeSet, Mandatory = true)]
82-
[Parameter(ParameterSetName = ComponentObjectParameterSet, Mandatory = false)]
83-
[Parameter(ParameterSetName = ResourceIdParameterSet, Mandatory = false)]
84+
[Parameter(ParameterSetName = GetByComponentResultType, Mandatory = true)]
85+
[Parameter(ParameterSetName = GetByInputObject, Mandatory = true)]
86+
[Parameter(ParameterSetName = GetByInputObjectResultType, Mandatory = true)]
87+
[Parameter(ParameterSetName = GetByResourceId, Mandatory = true)]
88+
[Parameter(ParameterSetName = GetByResourceIdResultType, Mandatory = true)]
8489
[ValidateNotNullOrEmpty]
8590
[Alias("TaskName")]
8691
public string Name { get; set; }
8792

8893
[Parameter(
89-
ParameterSetName = ExpandTaskSet,
90-
Mandatory = true,
94+
ParameterSetName = GetByComponent,
95+
Mandatory = false,
9196
HelpMessage = "Expand output")]
92-
[Parameter(ParameterSetName = ExpandTaskResultTypeSet, Mandatory = true)]
97+
[Parameter(ParameterSetName = GetByComponentResultType, Mandatory = true)]
98+
[Parameter(ParameterSetName = GetByInputObject, Mandatory = false)]
99+
[Parameter(ParameterSetName = GetByInputObjectResultType, Mandatory = true)]
100+
[Parameter(ParameterSetName = GetByResourceId, Mandatory = false)]
101+
[Parameter(ParameterSetName = GetByResourceIdResultType, Mandatory = true)]
93102
[ValidateNotNullOrEmpty]
94103
public SwitchParameter Expand { get; set; }
95104

96105
[Parameter(
97-
ParameterSetName = ExpandTaskResultTypeSet,
106+
ParameterSetName = GetByComponentResultType,
98107
Mandatory = true,
99108
HelpMessage = "Expand output of given result type.")]
109+
[Parameter(ParameterSetName = GetByInputObjectResultType, Mandatory = true)]
110+
[Parameter(ParameterSetName = GetByResourceIdResultType, Mandatory = true)]
100111
[ValidateNotNullOrEmpty]
101112
public ResultTypeEnum ResultType { get; set; }
102113

103114
[Parameter(
104-
ParameterSetName = TaskTypeSet,
115+
ParameterSetName = ListByComponent,
105116
Mandatory = false,
106117
HelpMessage = "Filter by TaskType.")]
118+
[Parameter(ParameterSetName = ListByInputObject, Mandatory = false)]
119+
[Parameter(ParameterSetName = ListByResourceId, Mandatory = false)]
107120
[ValidateNotNullOrEmpty]
108121
public TaskTypeEnum? TaskType { get; set; }
109122

src/ResourceManager/DataMigration/Commands.DataMigration/help/Get-AzureRmDataMigrationTask.md

Lines changed: 80 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -11,45 +11,59 @@ schema: 2.0.0
1111
Retrieves the PSProjectTask object associated with an Azure Database Migration Service migration task.
1212

1313
## SYNTAX
14-
### ComponentNameParameterSet (Default)
14+
15+
### ListByComponent (Default)
1516
```
1617
Get-AzureRmDataMigrationTask -ResourceGroupName <String> -ServiceName <String> -ProjectName <String>
18+
[-TaskType <TaskTypeEnum>] [-DefaultProfile <IAzureContextContainer>]
19+
```
20+
21+
### ListByInputObject
22+
```
23+
Get-AzureRmDataMigrationTask [-InputObject] <PSProject> [-TaskType <TaskTypeEnum>]
1724
[-DefaultProfile <IAzureContextContainer>]
1825
```
1926

20-
### ComponentObjectParameterSet
27+
### GetByInputObject
2128
```
22-
Get-AzureRmDataMigrationTask [-InputObject] <PSProject> [-Name <String>]
29+
Get-AzureRmDataMigrationTask [-InputObject] <PSProject> -Name <String> [-Expand]
2330
[-DefaultProfile <IAzureContextContainer>]
2431
```
2532

26-
### ResourceIdParameterSet
33+
### GetByInputObjectResultType
2734
```
28-
Get-AzureRmDataMigrationTask [-ResourceId] <String> [-Name <String>] [-DefaultProfile <IAzureContextContainer>]
35+
Get-AzureRmDataMigrationTask [-InputObject] <PSProject> -Name <String> [-Expand] -ResultType <ResultTypeEnum>
36+
[-DefaultProfile <IAzureContextContainer>]
2937
```
3038

31-
### TaskSet
39+
### ListByResourceId
3240
```
33-
Get-AzureRmDataMigrationTask -ResourceGroupName <String> -ServiceName <String> -ProjectName <String>
34-
[-Name <String>] [-DefaultProfile <IAzureContextContainer>]
41+
Get-AzureRmDataMigrationTask [-ResourceId] <String> [-TaskType <TaskTypeEnum>]
42+
[-DefaultProfile <IAzureContextContainer>]
3543
```
3644

37-
### ExpandTaskSet
45+
### GetByResourceId
3846
```
39-
Get-AzureRmDataMigrationTask -ResourceGroupName <String> -ServiceName <String> -ProjectName <String>
40-
-Name <String> [-Expand] [-DefaultProfile <IAzureContextContainer>]
47+
Get-AzureRmDataMigrationTask [-ResourceId] <String> -Name <String> [-Expand]
48+
[-DefaultProfile <IAzureContextContainer>]
4149
```
4250

43-
### ExpandTaskResultTypeSet
51+
### GetByResourceIdResultType
52+
```
53+
Get-AzureRmDataMigrationTask [-ResourceId] <String> -Name <String> [-Expand] -ResultType <ResultTypeEnum>
54+
[-DefaultProfile <IAzureContextContainer>]
55+
```
56+
57+
### GetByComponent
4458
```
4559
Get-AzureRmDataMigrationTask -ResourceGroupName <String> -ServiceName <String> -ProjectName <String>
46-
-Name <String> [-Expand] -ResultType <ResultTypeEnum> [-DefaultProfile <IAzureContextContainer>]
60+
[-Name <String>] [-Expand] [-DefaultProfile <IAzureContextContainer>]
4761
```
4862

49-
### TaskTypeSet
63+
### GetByComponentResultType
5064
```
5165
Get-AzureRmDataMigrationTask -ResourceGroupName <String> -ServiceName <String> -ProjectName <String>
52-
[-TaskType <TaskTypeEnum>] [-DefaultProfile <IAzureContextContainer>]
66+
-Name <String> [-Expand] -ResultType <ResultTypeEnum> [-DefaultProfile <IAzureContextContainer>]
5367
```
5468

5569
## DESCRIPTION
@@ -59,18 +73,14 @@ The Get-AzureRmDataMigrationTask cmdlet retrieves the properties associated with
5973

6074
### Example 1
6175
```
62-
PS C:\> Get -AzureRmDataMigrationTask –TaskName myTestTask -ServiceName myTestService -ProjectName MyTestProject -ResourceGroupName MyResourceGroup -Expand
63-
64-
76+
PS C:\> Get -AzureRmDataMigrationTask -TaskName myTestTask -ServiceName myTestService -ProjectName MyTestProject -ResourceGroupName MyResourceGroup -Expand
6577
```
6678

6779
The above example illustrates the use of Get-AzureRmDataMigrationTask cmdlet to retrieve the properties associated with an Azure Database Migration Service migration task based on task name passed in as input parameter
6880

6981
### Example 2
7082
```
71-
PS C:\> Get -AzureRmDataMigrationTask –Project $myProject
72-
73-
83+
PS C:\> Get -AzureRmDataMigrationTask -Project $myProject
7484
```
7585

7686
The above example illustrates the use of Get-AzureRmDataMigrationTask cmdlet to retrieve all of the migration tasks associated with PSProject object passed in as input parameter
@@ -97,12 +107,24 @@ Expand output
97107
98108
```yaml
99109
Type: SwitchParameter
100-
Parameter Sets: ExpandTaskSet, ExpandTaskResultTypeSet
110+
Parameter Sets: GetByInputObject, GetByResourceId, GetByComponent
111+
Aliases:
112+
113+
Required: False
114+
Position: Named
115+
Default value: False
116+
Accept pipeline input: False
117+
Accept wildcard characters: False
118+
```
119+
120+
```yaml
121+
Type: SwitchParameter
122+
Parameter Sets: GetByInputObjectResultType, GetByResourceIdResultType, GetByComponentResultType
101123
Aliases:
102124

103125
Required: True
104126
Position: Named
105-
Default value: None
127+
Default value: False
106128
Accept pipeline input: False
107129
Accept wildcard characters: False
108130
```
@@ -112,7 +134,19 @@ PSProject Object.
112134
113135
```yaml
114136
Type: PSProject
115-
Parameter Sets: ComponentObjectParameterSet
137+
Parameter Sets: ListByInputObject
138+
Aliases: Project
139+
140+
Required: True
141+
Position: 0
142+
Default value: None
143+
Accept pipeline input: True (ByValue)
144+
Accept wildcard characters: False
145+
```
146+
147+
```yaml
148+
Type: PSProject
149+
Parameter Sets: GetByInputObject, GetByInputObjectResultType
116150
Aliases: Project
117151

118152
Required: True
@@ -127,10 +161,10 @@ The name of the task.
127161
128162
```yaml
129163
Type: String
130-
Parameter Sets: ComponentObjectParameterSet, ResourceIdParameterSet, TaskSet
164+
Parameter Sets: GetByInputObject, GetByInputObjectResultType, GetByResourceId, GetByResourceIdResultType, GetByComponentResultType
131165
Aliases: TaskName
132166

133-
Required: False
167+
Required: True
134168
Position: Named
135169
Default value: None
136170
Accept pipeline input: False
@@ -139,10 +173,10 @@ Accept wildcard characters: False
139173
140174
```yaml
141175
Type: String
142-
Parameter Sets: ExpandTaskSet, ExpandTaskResultTypeSet
176+
Parameter Sets: GetByComponent
143177
Aliases: TaskName
144178

145-
Required: True
179+
Required: False
146180
Position: Named
147181
Default value: None
148182
Accept pipeline input: False
@@ -154,7 +188,7 @@ The name of the project.
154188
155189
```yaml
156190
Type: String
157-
Parameter Sets: ComponentNameParameterSet, TaskSet, ExpandTaskSet, ExpandTaskResultTypeSet, TaskTypeSet
191+
Parameter Sets: ListByComponent, GetByComponent, GetByComponentResultType
158192
Aliases:
159193

160194
Required: True
@@ -169,7 +203,7 @@ The name of the resource group.
169203
170204
```yaml
171205
Type: String
172-
Parameter Sets: ComponentNameParameterSet, TaskSet, ExpandTaskSet, ExpandTaskResultTypeSet, TaskTypeSet
206+
Parameter Sets: ListByComponent, GetByComponent, GetByComponentResultType
173207
Aliases:
174208

175209
Required: True
@@ -184,7 +218,19 @@ Project Resource Id.
184218
185219
```yaml
186220
Type: String
187-
Parameter Sets: ResourceIdParameterSet
221+
Parameter Sets: ListByResourceId
222+
Aliases:
223+
224+
Required: True
225+
Position: 0
226+
Default value: None
227+
Accept pipeline input: True (ByPropertyName)
228+
Accept wildcard characters: False
229+
```
230+
231+
```yaml
232+
Type: String
233+
Parameter Sets: GetByResourceId, GetByResourceIdResultType
188234
Aliases:
189235

190236
Required: True
@@ -199,7 +245,7 @@ Expand output of given result type.
199245
200246
```yaml
201247
Type: ResultTypeEnum
202-
Parameter Sets: ExpandTaskResultTypeSet
248+
Parameter Sets: GetByInputObjectResultType, GetByResourceIdResultType, GetByComponentResultType
203249
Aliases:
204250
Accepted values: MigrationLevelOutput, DatabaseLevelOutput, TableLevelOutput, MigrationValidationOutput, MigrationValidationDatabaseLevelOutput
205251

@@ -215,7 +261,7 @@ Data Migration Service Name.
215261
216262
```yaml
217263
Type: String
218-
Parameter Sets: ComponentNameParameterSet, TaskSet, ExpandTaskSet, ExpandTaskResultTypeSet, TaskTypeSet
264+
Parameter Sets: ListByComponent, GetByComponent, GetByComponentResultType
219265
Aliases:
220266

221267
Required: True
@@ -230,7 +276,7 @@ Filter by TaskType.
230276
231277
```yaml
232278
Type: TaskTypeEnum
233-
Parameter Sets: TaskTypeSet
279+
Parameter Sets: ListByComponent, ListByInputObject, ListByResourceId
234280
Aliases:
235281
Accepted values: MigrateSqlServerSqlDb, ConnectToSourceSqlServer, ConnectToTargetSqlDb, GetUserTablesSql
236282

@@ -246,12 +292,10 @@ Accept wildcard characters: False
246292
### Microsoft.Azure.Commands.DataMigration.Models.PSProject
247293
System.String
248294
249-
250295
## OUTPUTS
251296
252297
### System.Collections.Generic.IList`1[[Microsoft.Azure.Commands.DataMigration.Models.PSProjectTask, Microsoft.Azure.Commands.DataMigration, Version=0.1.0.0, Culture=neutral, PublicKeyToken=null]]
253298

254-
255299
## NOTES
256300

257301
## RELATED LINKS

0 commit comments

Comments
 (0)