-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Expand file tree
/
Copy pathNew-AzDevCenterAdminDevBoxDefinition.ps1
More file actions
246 lines (217 loc) · 10.7 KB
/
New-AzDevCenterAdminDevBoxDefinition.ps1
File metadata and controls
246 lines (217 loc) · 10.7 KB
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
# ----------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
# is regenerated.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Creates or updates a Dev Box definition.
.Description
Creates or updates a Dev Box definition.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
.Inputs
Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Models.IDevCenterIdentity
.Outputs
Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Models.IDevBoxDefinition
.Notes
COMPLEX PARAMETER PROPERTIES
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
INPUTOBJECT <IDevCenterIdentity>: Identity Parameter
[AttachedNetworkConnectionName <String>]: The name of the attached NetworkConnection.
[BuildName <String>]: The ID of the Image Definition Build.
[CatalogName <String>]: The name of the Catalog.
[DevBoxDefinitionName <String>]: The name of the Dev Box definition.
[DevCenterName <String>]: The name of the devcenter.
[EncryptionSetName <String>]: The name of the devcenter encryption set.
[EnvironmentDefinitionName <String>]: The name of the Environment Definition.
[EnvironmentTypeName <String>]: The name of the environment type.
[GalleryName <String>]: The name of the gallery.
[Id <String>]: Resource identity path
[ImageDefinitionName <String>]: The name of the Image Definition.
[ImageName <String>]: The name of the image.
[Location <String>]: The Azure region
[NetworkConnectionName <String>]: Name of the Network Connection that can be applied to a Pool.
[OperationId <String>]: The ID of an ongoing async operation
[PoolName <String>]: Name of the pool.
[ProjectName <String>]: The name of the project.
[ProjectPolicyName <String>]: The name of the project policy.
[ResourceGroupName <String>]: The name of the resource group. The name is case insensitive.
[ScheduleName <String>]: The name of the schedule that uniquely identifies it.
[SubscriptionId <String>]: The ID of the target subscription.
[TaskName <String>]: The name of the Task.
[VersionName <String>]: The version of the image.
.Link
https://learn.microsoft.com/powershell/module/az.devcenter/new-azdevcenteradmindevboxdefinition
#>
function New-AzDevCenterAdminDevBoxDefinition {
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Models.IDevBoxDefinition])]
[CmdletBinding(DefaultParameterSetName = 'CreateExpanded', PositionalBinding = $false, SupportsShouldProcess, ConfirmImpact = 'Medium')]
param(
[Parameter(ParameterSetName = 'CreateExpanded', Mandatory)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Path')]
[System.String]
# The name of the devcenter.
${DevCenterName},
[Parameter(ParameterSetName = 'CreateExpanded', Mandatory)]
[Alias('DevBoxDefinitionName')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Path')]
[System.String]
# The name of the Dev Box definition.
${Name},
[Parameter(ParameterSetName = 'CreateExpanded', Mandatory)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Path')]
[System.String]
# The name of the resource group.
# The name is case insensitive.
${ResourceGroupName},
[Parameter(ParameterSetName = 'CreateExpanded')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Path')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Runtime.DefaultInfo(Script = '(Get-AzContext).Subscription.Id')]
[System.String]
# The ID of the target subscription.
${SubscriptionId},
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Path')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Models.IDevCenterIdentity]
# Identity Parameter
# To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
${InputObject},
[Parameter(ParameterSetName = 'CreateExpanded', Mandatory)]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded', Mandatory)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[System.String]
# The geo-location where the resource lives
${Location},
[Parameter(ParameterSetName = 'CreateExpanded')]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.PSArgumentCompleterAttribute("Disabled", "Enabled")]
[System.String]
# Indicates whether Dev Boxes created with this definition are capable of hibernation.
# Not all images are capable of supporting hibernation.
# To find out more see https://aka.ms/devbox/hibernate
${HibernateSupport},
[Parameter(ParameterSetName = 'CreateExpanded', Mandatory)]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded', Mandatory)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[System.String]
# Image ID, or Image version ID.
# When Image ID is provided, its latest version will be used.
${ImageReferenceId},
[Parameter(ParameterSetName = 'CreateExpanded', Mandatory)]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded', Mandatory)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[System.String]
# The storage type used for the Operating System disk of Dev Boxes created using this definition.
${OSStorageType},
[Parameter(ParameterSetName = 'CreateExpanded')]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[System.Int32]
# If the SKU supports scale out/in then the capacity integer should be included.
# If scale out/in is not possible for the resource this may be omitted.
${SkuCapacity},
[Parameter(ParameterSetName = 'CreateExpanded')]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[System.String]
# If the service has different generations of hardware, for the same SKU, then that can be captured here.
${SkuFamily},
[Parameter(ParameterSetName = 'CreateExpanded', Mandatory)]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded', Mandatory)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[System.String]
# The name of the SKU.
# E.g.
# P3.
# It is typically a letter+number code
${SkuName},
[Parameter(ParameterSetName = 'CreateExpanded')]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[System.String]
# The SKU size.
# When the name field is the combination of tier and some other value, this would be the standalone code.
${SkuSize},
[Parameter(ParameterSetName = 'CreateExpanded')]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.PSArgumentCompleterAttribute("Free", "Basic", "Standard", "Premium")]
[System.String]
# This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
${SkuTier},
[Parameter(ParameterSetName = 'CreateExpanded')]
[Parameter(ParameterSetName = 'CreateViaIdentityExpanded')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Body')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Runtime.Info(PossibleTypes = ([Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Models.ITrackedResourceTags]))]
[System.Collections.Hashtable]
# Resource tags.
${Tag},
[Parameter()]
[Alias('AzureRMContext', 'AzureCredential')]
[ValidateNotNull()]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Azure')]
[System.Management.Automation.PSObject]
# The DefaultProfile parameter is not functional.
# Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
${DefaultProfile},
[Parameter()]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Runtime')]
[System.Management.Automation.SwitchParameter]
# Run the command as a job
${AsJob},
[Parameter(DontShow)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Runtime')]
[System.Management.Automation.SwitchParameter]
# Wait for .NET debugger to attach
${Break},
[Parameter(DontShow)]
[ValidateNotNull()]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Runtime')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Runtime.SendAsyncStep[]]
# SendAsync Pipeline Steps to be appended to the front of the pipeline
${HttpPipelineAppend},
[Parameter(DontShow)]
[ValidateNotNull()]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Runtime')]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Runtime.SendAsyncStep[]]
# SendAsync Pipeline Steps to be prepended to the front of the pipeline
${HttpPipelinePrepend},
[Parameter()]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Runtime')]
[System.Management.Automation.SwitchParameter]
# Run the command asynchronously
${NoWait},
[Parameter(DontShow)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Runtime')]
[System.Uri]
# The URI for the proxy server to use
${Proxy},
[Parameter(DontShow)]
[ValidateNotNull()]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Runtime')]
[System.Management.Automation.PSCredential]
# Credentials for a proxy server to use for the remote call
${ProxyCredential},
[Parameter(DontShow)]
[Microsoft.Azure.PowerShell.Cmdlets.DevCenter.Category('Runtime')]
[System.Management.Automation.SwitchParameter]
# Use the default credentials for the proxy
${ProxyUseDefaultCredentials}
)
process {
Az.DevCenter.internal\New-AzDevCenterAdminDevBoxDefinition @PSBoundParameters
}
}