Completers/Microsoft.Az.ResourceGroup.ResourceGroupName.ArgumentCompleters.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
$ScriptBlock = {
        <#
        .SYNOPSIS
        Auto-complete the -ResourceGroupName parameter value for Azure Resource Manager (ARM) PowerShell cmdlets.

        .NOTES
        Created by Trevor Sullivan <trevor@trevorsullivan.net>
        http://trevorsullivan.net
        #>

        param($commandName, $parameterName, $wordToComplete, $commandAst, $fakeBoundParameter)

        try {
            $ResourceGroupList = Get-AzResourceGroup -ErrorAction Stop -WarningAction Ignore;
        } catch {
            Write-Host -Object ('Error occurred retrieving resource groups: {0}' -f $PSItem.Exception.Message);
        }
        $ItemList = $ResourceGroupList | Where-Object { $PSItem.ResourceGroupName -match $wordToComplete } | ForEach-Object {
            $CompletionText = $PSItem.ResourceGroupName;
            $ToolTip = 'Resource Group {0} in {1} region.' -f $PSItem.ResourceGroupName, $PSItem.Location;
            $ListItemText = '{0} ({1})' -f $PSItem.ResourceGroupName, $PSItem.Location;
            $CompletionResultType = [System.Management.Automation.CompletionResultType]::ParameterValue;

            New-Object -TypeName System.Management.Automation.CompletionResult -ArgumentList @($CompletionText, $ListItemText, $CompletionResultType, $ToolTip);
        }

        return $ItemList
    }

$ArgumentCompleter = @{
        CommandName = @(
            'Get-AzSqlDatabaseServerAuditingPolicy'
            'Remove-AzSqlDatabaseServerAuditing'
            'Set-AzSqlDatabaseServerAuditingPolicy'
            'Use-AzSqlDatabaseServerAuditingPolicy'
            'Add-AzVhd'
            'Backup-AzApiManagement'
            'Disable-AzTrafficManagerEndpoint'
            'Disable-AzTrafficManagerProfile'
            'Enable-AzTrafficManagerEndpoint'
            'Enable-AzTrafficManagerProfile'
            'Export-AzAutomationDscConfiguration'
            'Export-AzAutomationDscNodeReportContent'
            'Export-AzAutomationRunbook'
            'Get-AzApiManagement'
            'Get-AzApiManagementSsoToken'
            'Get-AzApplicationGateway'
            'Get-AzAppServicePlan'
            'Get-AzAutomationAccount'
            'Get-AzAutomationCertificate'
            'Get-AzAutomationConnection'
            'Get-AzAutomationCredential'
            'Get-AzAutomationDscCompilationJob'
            'Get-AzAutomationDscCompilationJobOutput'
            'Get-AzAutomationDscConfiguration'
            'Get-AzAutomationDscNode'
            'Get-AzAutomationDscNodeConfiguration'
            'Get-AzAutomationDscNodeReport'
            'Get-AzAutomationDscOnboardingMetaconfig'
            'Get-AzAutomationJob'
            'Get-AzAutomationJobOutput'
            'Get-AzAutomationModule'
            'Get-AzAutomationRegistrationInfo'
            'Get-AzAutomationRunbook'
            'Get-AzAutomationSchedule'
            'Get-AzAutomationScheduledRunbook'
            'Get-AzAutomationVariable'
            'Get-AzAutomationWebhook'
            'Get-AzAvailabilitySet'
            'Get-AzBackupVault'
            'Get-AzBatchAccount'
            'Get-AzBatchAccountKeys'
            'Get-AzDataFactory'
            'Get-AzDataFactoryDataset'
            'Get-AzDataFactoryGateway'
            'Get-AzDataFactoryHub'
            'Get-AzDataFactoryLinkedService'
            'Get-AzDataFactoryPipeline'
            'Get-AzDataFactoryRun'
            'Get-AzDataFactorySlice'
            'Get-AzDnsRecordSet'
            'Get-AzDnsZone'
            'Get-AzHDInsightCluster'
            'Get-AzHDInsightJob'
            'Get-AzHDInsightJobOutput'
            'Get-AzKeyVault'
            'Get-AzLoadBalancer'
            'Get-AzLocalNetworkGateway'
            'Get-AzNetworkInterface'
            'Get-AzNetworkSecurityGroup'
            'Get-AzOperationalInsightsStorageInsight'
            'Get-AzOperationalInsightsWorkspace'
            'Get-AzOperationalInsightsWorkspaceManagementGroups'
            'Get-AzOperationalInsightsWorkspaceSharedKeys'
            'Get-AzOperationalInsightsWorkspaceUsage'
            'Get-AzPublicIpAddress'
            'Get-AzRedisCache'
            'Get-AzRedisCacheKey'
            'Get-AzRemoteDesktopFile'
            'Get-AzResource'
            'Get-AzResourceGroup'
            'Get-AzResourceGroupDeployment'
            'Get-AzResourceGroupDeploymentOperation'
            'Get-AzResourceLock'
            'Get-AzRoleAssignment'
            'Get-AzRouteTable'
            'Get-AzSqlDatabase'
            'Get-AzSqlDatabaseActivity'
            'Get-AzSqlDatabaseAuditingPolicy'
            'Get-AzSqlDatabaseDataMaskingPolicy'
            'Get-AzSqlDatabaseDataMaskingRule'
            'Get-AzSqlDatabaseExpanded'
            'Get-AzSqlDatabaseIndexRecommendations'
            'Get-AzSqlDatabaseReplicationLink'
            'Get-AzSqlDatabaseRestorePoints'
            'Get-AzSqlDatabaseSecureConnectionPolicy'
            'Get-AzSqlDatabaseTransparentDataEncryption'
            'Get-AzSqlDatabaseTransparentDataEncryptionActivity'
            'Get-AzSqlDatabaseUpgradeHint'
            'Get-AzSqlElasticPool'
            'Get-AzSqlElasticPoolActivity'
            'Get-AzSqlElasticPoolDatabase'
            'Get-AzSqlElasticPoolRecommendation'
            'Get-AzSqlServer'
            'Get-AzSqlServerActiveDirectoryAdministrator'
            'Get-AzSqlServerAuditingPolicy'
            'Get-AzSqlServerFirewallRule'
            'Get-AzSqlServerServiceObjective'
            'Get-AzSqlServerUpgrade'
            'Get-AzSqlServerUpgradeHint'
            'Get-AzStreamAnalyticsInput'
            'Get-AzStreamAnalyticsJob'
            'Get-AzStreamAnalyticsOutput'
            'Get-AzStreamAnalyticsTransformation'
            'Get-AzTrafficManagerEndpoint'
            'Get-AzTrafficManagerProfile'
            'Get-AzVirtualNetwork'
            'Get-AzVirtualNetworkGateway'
            'Get-AzVirtualNetworkGatewayConnection'
            'Get-AzVirtualNetworkGatewayConnectionSharedKey'
            'Get-AzVM'
            'Get-AzVMAccessExtension'
            'Get-AzVMCustomScriptExtension'
            'Get-AzVMDiagnosticsExtension'
            'Get-AzVMDscExtension'
            'Get-AzVMExtension'
            'Get-AzVMSize'
            'Get-AzVMSqlServerExtension'
            'Get-AzWebApp'
            'Get-AzWebAppPublishingProfile'
            'Grant-AzHDInsightHttpServicesAccess'
            'Grant-AzHDInsightRdpServicesAccess'
            'Import-AzApiManagementHostnameCertificate'
            'Import-AzAutomationDscConfiguration'
            'Import-AzAutomationRunbook'
            'Invoke-AzResourceAction'
            'New-AzApiManagement'
            'New-AzApiManagementContext'
            'New-AzApplicationGateway'
            'New-AzAppServicePlan'
            'New-AzAutomationAccount'
            'New-AzAutomationCertificate'
            'New-AzAutomationConnection'
            'New-AzAutomationCredential'
            'New-AzAutomationKey'
            'New-AzAutomationModule'
            'New-AzAutomationRunbook'
            'New-AzAutomationSchedule'
            'New-AzAutomationVariable'
            'New-AzAutomationWebhook'
            'New-AzAvailabilitySet'
            'New-AzBackupVault'
            'New-AzBatchAccount'
            'New-AzBatchAccountKey'
            'New-AzDataFactory'
            'New-AzDataFactoryDataset'
            'New-AzDataFactoryEncryptValue'
            'New-AzDataFactoryGateway'
            'New-AzDataFactoryGatewayKey'
            'New-AzDataFactoryHub'
            'New-AzDataFactoryLinkedService'
            'New-AzDataFactoryPipeline'
            'New-AzDnsRecordSet'
            'New-AzDnsZone'
            'New-AzHDInsightCluster'
            'New-AzKeyVault'
            'New-AzLoadBalancer'
            'New-AzLocalNetworkGateway'
            'New-AzNetworkInterface'
            'New-AzNetworkSecurityGroup'
            'New-AzOperationalInsightsStorageInsight'
            'New-AzOperationalInsightsWorkspace'
            'New-AzPublicIpAddress'
            'New-AzRedisCache'
            'New-AzRedisCacheKey'
            'New-AzResource'
            'New-AzResourceGroup'
            'New-AzResourceGroupDeployment'
            'New-AzResourceLock'
            'New-AzRoleAssignment'
            'New-AzRouteTable'
            'New-AzSqlDatabase'
            'New-AzSqlDatabaseCopy'
            'New-AzSqlDatabaseDataMaskingRule'
            'New-AzSqlDatabaseSecondary'
            'New-AzSqlElasticPool'
            'New-AzSqlServer'
            'New-AzSqlServerFirewallRule'
            'New-AzStorageAccount'
            'New-AzStreamAnalyticsInput'
            'New-AzStreamAnalyticsJob'
            'New-AzStreamAnalyticsOutput'
            'New-AzStreamAnalyticsTransformation'
            'New-AzTrafficManagerEndpoint'
            'New-AzTrafficManagerProfile'
            'New-AzVirtualNetwork'
            'New-AzVirtualNetworkGateway'
            'New-AzVirtualNetworkGatewayConnection'
            'New-AzVM'
            'New-AzWebApp'
            'New-AzureVMSqlServerAutoBackupConfig'
            'Publish-AzAutomationRunbook'
            'Publish-AzVMDscConfiguration'
            'Register-AzAutomationDscNode'
            'Register-AzAutomationScheduledRunbook'
            'Register-AzBackupContainer'
            'Remove-AzApiManagement'
            'Remove-AzApplicationGateway'
            'Remove-AzAppServicePlan'
            'Remove-AzAutomationAccount'
            'Remove-AzAutomationCertificate'
            'Remove-AzAutomationConnection'
            'Remove-AzAutomationCredential'
            'Remove-AzAutomationModule'
            'Remove-AzAutomationRunbook'
            'Remove-AzAutomationSchedule'
            'Remove-AzAutomationVariable'
            'Remove-AzAutomationWebhook'
            'Remove-AzAvailabilitySet'
            'Remove-AzBatchAccount'
            'Remove-AzDataFactory'
            'Remove-AzDataFactoryDataset'
            'Remove-AzDataFactoryGateway'
            'Remove-AzDataFactoryHub'
            'Remove-AzDataFactoryLinkedService'
            'Remove-AzDataFactoryPipeline'
            'Remove-AzDnsRecordSet'
            'Remove-AzDnsZone'
            'Remove-AzHDInsightCluster'
            'Remove-AzKeyVault'
            'Remove-AzKeyVaultAccessPolicy'
            'Remove-AzLoadBalancer'
            'Remove-AzLocalNetworkGateway'
            'Remove-AzNetworkInterface'
            'Remove-AzNetworkSecurityGroup'
            'Remove-AzOperationalInsightsStorageInsight'
            'Remove-AzOperationalInsightsWorkspace'
            'Remove-AzPublicIpAddress'
            'Remove-AzRedisCache'
            'Remove-AzResource'
            'Remove-AzResourceGroup'
            'Remove-AzResourceGroupDeployment'
            'Remove-AzResourceLock'
            'Remove-AzRoleAssignment'
            'Remove-AzRouteTable'
            'Remove-AzSqlDatabase'
            'Remove-AzSqlDatabaseAuditing'
            'Remove-AzSqlDatabaseDataMaskingRule'
            'Remove-AzSqlDatabaseSecondary'
            'Remove-AzSqlElasticPool'
            'Remove-AzSqlServer'
            'Remove-AzSqlServerActiveDirectoryAdministrator'
            'Remove-AzSqlServerAuditing'
            'Remove-AzSqlServerFirewallRule'
            'Remove-AzStorageAccount'
            'Remove-AzStreamAnalyticsInput'
            'Remove-AzStreamAnalyticsJob'
            'Remove-AzStreamAnalyticsOutput'
            'Remove-AzTrafficManagerEndpoint'
            'Remove-AzTrafficManagerProfile'
            'Remove-AzVirtualNetwork'
            'Remove-AzVirtualNetworkGateway'
            'Remove-AzVirtualNetworkGatewayConnection'
            'Remove-AzVM'
            'Remove-AzVMAccessExtension'
            'Remove-AzVMCustomScriptExtension'
            'Remove-AzVMDiagnosticsExtension'
            'Remove-AzVMDscExtension'
            'Remove-AzVMExtension'
            'Remove-AzVMSqlServerExtension'
            'Remove-AzWebApp'
            'Reset-AzVirtualNetworkGatewayConnectionSharedKey'
            'Restart-AzVM'
            'Restart-AzWebApp'
            'Restore-AzApiManagement'
            'Resume-AzAutomationJob'
            'Resume-AzDataFactoryPipeline'
            'Resume-AzSqlDatabase'
            'Revoke-AzHDInsightHttpServicesAccess'
            'Revoke-AzHDInsightRdpServicesAccess'
            'Save-AzDataFactoryLog'
            'Save-AzVMImage'
            'Set-AzApiManagementHostnames'
            'Set-AzApiManagementVirtualNetworks'
            'Set-AzAppServicePlan'
            'Set-AzAutomationAccount'
            'Set-AzAutomationCertificate'
            'Set-AzAutomationConnectionFieldValue'
            'Set-AzAutomationCredential'
            'Set-AzAutomationDscNode'
            'Set-AzAutomationModule'
            'Set-AzAutomationRunbook'
            'Set-AzAutomationSchedule'
            'Set-AzAutomationVariable'
            'Set-AzAutomationWebhook'
            'Set-AzBatchAccount'
            'Set-AzDataFactoryGateway'
            'Set-AzDataFactoryPipelineActivePeriod'
            'Set-AzDataFactorySliceStatus'
            'Set-AzDnsZone'
            'Set-AzHDInsightClusterSize'
            'Set-AzKeyVaultAccessPolicy'
            'Set-AzOperationalInsightsStorageInsight'
            'Set-AzOperationalInsightsWorkspace'
            'Set-AzRedisCache'
            'Set-AzResource'
            'Set-AzResourceGroup'
            'Set-AzResourceLock'
            'Set-AzSqlDatabase'
            'Set-AzSqlDatabaseAuditingPolicy'
            'Set-AzSqlDatabaseDataMaskingPolicy'
            'Set-AzSqlDatabaseDataMaskingRule'
            'Set-AzSqlDatabaseSecondary'
            'Set-AzSqlDatabaseTransparentDataEncryption'
            'Set-AzSqlElasticPool'
            'Set-AzSqlServer'
            'Set-AzSqlServerActiveDirectoryAdministrator'
            'Set-AzSqlServerAuditingPolicy'
            'Set-AzSqlServerFirewallRule'
            'Set-AzStorageAccount'
            'Set-AzVirtualNetworkGatewayConnectionSharedKey'
            'Set-AzVM'
            'Set-AzVMAccessExtension'
            'Set-AzVMCustomScriptExtension'
            'Set-AzVMDiagnosticsExtension'
            'Set-AzVMDscExtension'
            'Set-AzVMExtension'
            'Set-AzVMSqlServerExtension'
            'Start-AzAutomationDscCompilationJob'
            'Start-AzAutomationRunbook'
            'Start-AzHDInsightJob'
            'Start-AzSqlDatabaseExecuteIndexRecommendation'
            'Start-AzSqlServerUpgrade'
            'Start-AzStreamAnalyticsJob'
            'Start-AzVM'
            'Start-AzWebApp'
            'Stop-AzAutomationJob'
            'Stop-AzHDInsightJob'
            'Stop-AzResourceGroupDeployment'
            'Stop-AzSqlDatabaseExecuteIndexRecommendation'
            'Stop-AzSqlServerUpgrade'
            'Stop-AzStreamAnalyticsJob'
            'Stop-AzVM'
            'Stop-AzWebApp'
            'Suspend-AzAutomationJob'
            'Suspend-AzDataFactoryPipeline'
            'Suspend-AzSqlDatabase'
            'Test-AzResource'
            'Test-AzResourceGroup'
            'Test-AzResourceGroupTemplate'
            'Test-AzStreamAnalyticsInput'
            'Test-AzStreamAnalyticsOutput'
            'Unregister-AzAutomationDscNode'
            'Unregister-AzAutomationScheduledRunbook'
            'Update-AzApiManagementDeployment'
            'Update-AzVM'
            'Use-AzHDInsightCluster'
            'Use-AzSqlServerAuditingPolicy'
            'Wait-AzHDInsightJob'
        );
        ParameterName = 'ResourceGroupName';
        #Description = 'Complete the -ResourceGroupName parameter value for Azure Resource Manager cmdlets: New-AzureVM -ResourceGroupName <TAB>';
        ScriptBlock = $ScriptBlock;
}

Microsoft.PowerShell.Core\Register-ArgumentCompleter @ArgumentCompleter;

$ArgumentCompleter = @{
        CommandName = @(
            'Find-AzResourceGroup'
            'Get-AzResourceGroup'
            'New-AzResourceGroup'
            'Remove-AzResourceGroup'
            'Set-AzResourceGroup'
        );
        ParameterName = 'Name';
        #Description = 'Complete the -Name parameter value for the core Azure Resource Manager (ARM) Resource Group cmdlets: Get-AzureRmResourceGroup -Name <TAB>';
        ScriptBlock = $ScriptBlock;
}

Microsoft.PowerShell.Core\Register-ArgumentCompleter @ArgumentCompleter;