Skip to content

Commit de826cb

Browse files
committed
Merge pull request #34 from hyonholee/vmss
Adding format file generator for PS auto generator
2 parents 5d233d9 + 92fa1c1 commit de826cb

File tree

6 files changed

+523
-1
lines changed

6 files changed

+523
-1
lines changed

src/ResourceManager/Compute/AzureRM.Compute.psd1

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,8 @@ TypesToProcess = @(
6161
# Format files (.ps1xml) to be loaded when importing this module
6262
FormatsToProcess = @(
6363
'.\Microsoft.Azure.Commands.Compute.format.ps1xml',
64-
'.\Microsoft.Azure.Commands.Compute.format.generated.ps1xml'
64+
'.\Microsoft.Azure.Commands.Compute.format.generated.ps1xml',
65+
'.\Microsoft.Azure.Commands.Compute.Automation.format.generated.ps1xml',
6566
)
6667

6768
# Modules to import as nested modules of the module specified in ModuleToProcess

src/ResourceManager/Compute/Commands.Compute.Test/ScenarioTests/VirtualMachineScaleSetTests.ps1

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,34 +120,66 @@ function Test-VirtualMachineScaleSet
120120
$vmss.VirtualMachineProfile.StorageProfile.OSDisk.VirtualHardDiskContainers.Add($vhdContainer);
121121

122122
$st = New-AzureVirtualMachineScaleSet -ResourceGroupName $rgname -VirtualMachineScaleSetCreateOrUpdateParameters $vmss;
123+
124+
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSet');
123125
$vmssResult = Get-AzureVirtualMachineScaleSet -ResourceGroupName $rgname -VMScaleSetName $vmss.Name;
124126
Assert-True { $vmss.Name -eq $vmssResult.VirtualMachineScaleSet.Name };
127+
$output = $vmssResult | Out-String;
128+
Assert-True { $output.Contains("VirtualMachineScaleSet") };
129+
Write-Verbose ($output);
125130

126131
# List All
132+
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSetAllList');
127133
$vmssList = Get-AzureVirtualMachineScaleSetAllList -VirtualMachineScaleSetListAllParameters $null;
128134
Assert-True { ($vmssList.VirtualMachineScaleSets | select -ExpandProperty Name) -contains $vmss.Name };
135+
$output = $vmssList | Out-String;
136+
Assert-True { $output.Contains("VirtualMachineScaleSets") };
137+
Write-Verbose ($output);
129138

130139
# List from RG
140+
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSetList');
131141
$vmssList = Get-AzureVirtualMachineScaleSetList -ResourceGroupName $rgname;
132142
Assert-True { ($vmssList.VirtualMachineScaleSets | select -ExpandProperty Name) -contains $vmss.Name };
143+
$output = $vmssList | Out-String;
144+
Assert-True { $output.Contains("VirtualMachineScaleSets") };
145+
Write-Verbose ($output);
133146

134147
# List Skus
148+
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSetSkusList');
135149
$skuList = Get-AzureVirtualMachineScaleSetSkusList -ResourceGroupName $rgname -VMScaleSetName $vmss.Name;
150+
$output = $skuList | Out-String;
151+
Assert-True { $output.Contains("VirtualMachineScaleSetSku") };
152+
Write-Verbose ($output);
136153

137154
# List All VMs
138155
$vmListParams = New-AzureComputeParameterObject -FriendlyName VirtualMachineScaleSetVMListParameters;
139156
$vmListParams.ResourceGroupName = $rgname;
140157
$vmListParams.VirtualMachineScaleSetName = $vmss.Name;
158+
159+
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSetVMList');
141160
$vmListResult = Get-AzureVirtualMachineScaleSetVMList -VirtualMachineScaleSetVMListParameters $vmListParams;
161+
$output = $vmListResult | Out-String;
162+
Assert-True { $output.Contains("VirtualMachineScaleSetVM") };
163+
Write-Verbose ($output);
164+
142165
$vmList = $vmListResult.VirtualMachineScaleSetVMs;
143166

144167
# List each VM
145168
for ($i = 0; $i -lt $vmList.Count; $i++)
146169
{
170+
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSetVM');
147171
$vm = Get-AzureVirtualMachineScaleSetVM -ResourceGroupName $rgname -VMScaleSetName $vmss.Name -InstanceId $i;
148172
Assert-NotNull $vm.VirtualMachineScaleSetVM;
173+
$output = $vm | Out-String;
174+
Assert-True { $output.Contains("VirtualMachineScaleSetVM") };
175+
Write-Verbose ($output);
176+
177+
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSetVMInstanceView');
149178
$vmInstance = Get-AzureVirtualMachineScaleSetVMInstanceView -ResourceGroupName $rgname -VMScaleSetName $vmss.Name -InstanceId $i;
150179
Assert-NotNull $vmInstance.VirtualMachineScaleSetVMInstanceView;
180+
$output = $vmInstance | Out-String;
181+
Assert-True { $output.Contains("VirtualMachineScaleSetVMInstanceView") };
182+
Write-Verbose($output);
151183
}
152184

153185
# List Next (negative test)

src/ResourceManager/Compute/Commands.Compute/Commands.Compute.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -379,6 +379,9 @@
379379
<Link>AzureRM.Compute.psd1</Link>
380380
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
381381
</None>
382+
<None Include="Microsoft.Azure.Commands.Compute.Automation.format.generated.ps1xml">
383+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
384+
</None>
382385
<None Include="Microsoft.Azure.Commands.Compute.dll-Help.psd1">
383386
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
384387
</None>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,299 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
//
4+
// Copyright (c) Microsoft and contributors. All rights reserved.
5+
//
6+
// Licensed under the Apache License, Version 2.0 (the "License");
7+
// you may not use this file except in compliance with the License.
8+
// You may obtain a copy of the License at
9+
// http://www.apache.org/licenses/LICENSE-2.0
10+
//
11+
// Unless required by applicable law or agreed to in writing, software
12+
// distributed under the License is distributed on an "AS IS" BASIS,
13+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
//
15+
// See the License for the specific language governing permissions and
16+
// limitations under the License.
17+
//
18+
19+
// Warning: This code was generated by a tool.
20+
//
21+
// Changes to this file may cause incorrect behavior and will be lost if the
22+
// code is regenerated.
23+
-->
24+
<Configuration>
25+
<ViewDefinitions>
26+
<View>
27+
<Name>Microsoft.Azure.Management.Compute.Models.DeleteOperationResponse</Name>
28+
<ViewSelectedBy>
29+
<TypeName>Microsoft.Azure.Management.Compute.Models.DeleteOperationResponse</TypeName>
30+
</ViewSelectedBy>
31+
<ListControl>
32+
<ListEntries>
33+
<ListEntry>
34+
<ListItems>
35+
<ListItem>
36+
<Label>EndTime</Label>
37+
<PropertyName>EndTime</PropertyName>
38+
</ListItem>
39+
<ListItem>
40+
<Label>Error</Label>
41+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_.Error, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
42+
</ListItem>
43+
<ListItem>
44+
<Label>StartTime</Label>
45+
<PropertyName>StartTime</PropertyName>
46+
</ListItem>
47+
<ListItem>
48+
<Label>Status</Label>
49+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_.Status, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
50+
</ListItem>
51+
<ListItem>
52+
<Label>TrackingOperationId</Label>
53+
<PropertyName>TrackingOperationId</PropertyName>
54+
</ListItem>
55+
<ListItem>
56+
<Label>AzureAsyncOperation</Label>
57+
<PropertyName>AzureAsyncOperation</PropertyName>
58+
</ListItem>
59+
<ListItem>
60+
<Label>RequestId</Label>
61+
<PropertyName>RequestId</PropertyName>
62+
</ListItem>
63+
<ListItem>
64+
<Label>StatusCode</Label>
65+
<PropertyName>StatusCode</PropertyName>
66+
</ListItem>
67+
</ListItems>
68+
</ListEntry>
69+
</ListEntries>
70+
</ListControl>
71+
</View>
72+
<View>
73+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetGetResponse</Name>
74+
<ViewSelectedBy>
75+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetGetResponse</TypeName>
76+
</ViewSelectedBy>
77+
<ListControl>
78+
<ListEntries>
79+
<ListEntry>
80+
<ListItems>
81+
<ListItem>
82+
<Label>VirtualMachineScaleSet</Label>
83+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_.VirtualMachineScaleSet, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
84+
</ListItem>
85+
<ListItem>
86+
<Label>RequestId</Label>
87+
<PropertyName>RequestId</PropertyName>
88+
</ListItem>
89+
<ListItem>
90+
<Label>StatusCode</Label>
91+
<PropertyName>StatusCode</PropertyName>
92+
</ListItem>
93+
</ListItems>
94+
</ListEntry>
95+
</ListEntries>
96+
</ListControl>
97+
</View>
98+
<View>
99+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetListResponse</Name>
100+
<ViewSelectedBy>
101+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetListResponse</TypeName>
102+
</ViewSelectedBy>
103+
<ListControl>
104+
<ListEntries>
105+
<ListEntry>
106+
<ListItems>
107+
<ListItem>
108+
<Label>NextLink</Label>
109+
<PropertyName>NextLink</PropertyName>
110+
</ListItem>
111+
<ListItem>
112+
<Label>VirtualMachineScaleSets.Count</Label>
113+
<ScriptBlock> if ($_.VirtualMachineScaleSets -eq $null) { 0 } else { $_.VirtualMachineScaleSets.Count }</ScriptBlock>
114+
</ListItem>
115+
<ListItem>
116+
<Label>VirtualMachineScaleSets</Label>
117+
<ScriptBlock> foreach ($item in $_.VirtualMachineScaleSets) { [Newtonsoft.Json.JsonConvert]::SerializeObject($item, [Newtonsoft.Json.Formatting]::Indented) } </ScriptBlock>
118+
</ListItem>
119+
<ListItem>
120+
<Label>RequestId</Label>
121+
<PropertyName>RequestId</PropertyName>
122+
</ListItem>
123+
<ListItem>
124+
<Label>StatusCode</Label>
125+
<PropertyName>StatusCode</PropertyName>
126+
</ListItem>
127+
</ListItems>
128+
</ListEntry>
129+
</ListEntries>
130+
</ListControl>
131+
</View>
132+
<View>
133+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSet</Name>
134+
<ViewSelectedBy>
135+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSet</TypeName>
136+
</ViewSelectedBy>
137+
<ListControl>
138+
<ListEntries>
139+
<ListEntry>
140+
<ListItems>
141+
<ListItem>
142+
<Label>VirtualMachineScaleSet</Label>
143+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
144+
</ListItem>
145+
</ListItems>
146+
</ListEntry>
147+
</ListEntries>
148+
</ListControl>
149+
</View>
150+
<View>
151+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetListSkusResponse</Name>
152+
<ViewSelectedBy>
153+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetListSkusResponse</TypeName>
154+
</ViewSelectedBy>
155+
<ListControl>
156+
<ListEntries>
157+
<ListEntry>
158+
<ListItems>
159+
<ListItem>
160+
<Label>VirtualMachineScaleSetAvailableSkus.Count</Label>
161+
<ScriptBlock> if ($_.VirtualMachineScaleSetAvailableSkus -eq $null) { 0 } else { $_.VirtualMachineScaleSetAvailableSkus.Count }</ScriptBlock>
162+
</ListItem>
163+
<ListItem>
164+
<Label>VirtualMachineScaleSetAvailableSkus</Label>
165+
<ScriptBlock> foreach ($item in $_.VirtualMachineScaleSetAvailableSkus) { [Newtonsoft.Json.JsonConvert]::SerializeObject($item, [Newtonsoft.Json.Formatting]::Indented) } </ScriptBlock>
166+
</ListItem>
167+
<ListItem>
168+
<Label>RequestId</Label>
169+
<PropertyName>RequestId</PropertyName>
170+
</ListItem>
171+
<ListItem>
172+
<Label>StatusCode</Label>
173+
<PropertyName>StatusCode</PropertyName>
174+
</ListItem>
175+
</ListItems>
176+
</ListEntry>
177+
</ListEntries>
178+
</ListControl>
179+
</View>
180+
<View>
181+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetSku</Name>
182+
<ViewSelectedBy>
183+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetSku</TypeName>
184+
</ViewSelectedBy>
185+
<ListControl>
186+
<ListEntries>
187+
<ListEntry>
188+
<ListItems>
189+
<ListItem>
190+
<Label>VirtualMachineScaleSetSku</Label>
191+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
192+
</ListItem>
193+
</ListItems>
194+
</ListEntry>
195+
</ListEntries>
196+
</ListControl>
197+
</View>
198+
<View>
199+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMGetResponse</Name>
200+
<ViewSelectedBy>
201+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMGetResponse</TypeName>
202+
</ViewSelectedBy>
203+
<ListControl>
204+
<ListEntries>
205+
<ListEntry>
206+
<ListItems>
207+
<ListItem>
208+
<Label>VirtualMachineScaleSetVM</Label>
209+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_.VirtualMachineScaleSetVM, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
210+
</ListItem>
211+
<ListItem>
212+
<Label>RequestId</Label>
213+
<PropertyName>RequestId</PropertyName>
214+
</ListItem>
215+
<ListItem>
216+
<Label>StatusCode</Label>
217+
<PropertyName>StatusCode</PropertyName>
218+
</ListItem>
219+
</ListItems>
220+
</ListEntry>
221+
</ListEntries>
222+
</ListControl>
223+
</View>
224+
<View>
225+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMGetInstanceViewResponse</Name>
226+
<ViewSelectedBy>
227+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMGetInstanceViewResponse</TypeName>
228+
</ViewSelectedBy>
229+
<ListControl>
230+
<ListEntries>
231+
<ListEntry>
232+
<ListItems>
233+
<ListItem>
234+
<Label>VirtualMachineScaleSetVMInstanceView</Label>
235+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_.VirtualMachineScaleSetVMInstanceView, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
236+
</ListItem>
237+
<ListItem>
238+
<Label>RequestId</Label>
239+
<PropertyName>RequestId</PropertyName>
240+
</ListItem>
241+
<ListItem>
242+
<Label>StatusCode</Label>
243+
<PropertyName>StatusCode</PropertyName>
244+
</ListItem>
245+
</ListItems>
246+
</ListEntry>
247+
</ListEntries>
248+
</ListControl>
249+
</View>
250+
<View>
251+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMListResponse</Name>
252+
<ViewSelectedBy>
253+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMListResponse</TypeName>
254+
</ViewSelectedBy>
255+
<ListControl>
256+
<ListEntries>
257+
<ListEntry>
258+
<ListItems>
259+
<ListItem>
260+
<Label>VirtualMachineScaleSetVMs.Count</Label>
261+
<ScriptBlock> if ($_.VirtualMachineScaleSetVMs -eq $null) { 0 } else { $_.VirtualMachineScaleSetVMs.Count }</ScriptBlock>
262+
</ListItem>
263+
<ListItem>
264+
<Label>VirtualMachineScaleSetVMs</Label>
265+
<ScriptBlock> foreach ($item in $_.VirtualMachineScaleSetVMs) { [Newtonsoft.Json.JsonConvert]::SerializeObject($item, [Newtonsoft.Json.Formatting]::Indented) } </ScriptBlock>
266+
</ListItem>
267+
<ListItem>
268+
<Label>RequestId</Label>
269+
<PropertyName>RequestId</PropertyName>
270+
</ListItem>
271+
<ListItem>
272+
<Label>StatusCode</Label>
273+
<PropertyName>StatusCode</PropertyName>
274+
</ListItem>
275+
</ListItems>
276+
</ListEntry>
277+
</ListEntries>
278+
</ListControl>
279+
</View>
280+
<View>
281+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVM</Name>
282+
<ViewSelectedBy>
283+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVM</TypeName>
284+
</ViewSelectedBy>
285+
<ListControl>
286+
<ListEntries>
287+
<ListEntry>
288+
<ListItems>
289+
<ListItem>
290+
<Label>VirtualMachineScaleSetVM</Label>
291+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
292+
</ListItem>
293+
</ListItems>
294+
</ListEntry>
295+
</ListEntries>
296+
</ListControl>
297+
</View>
298+
</ViewDefinitions>
299+
</Configuration>

src/ResourceManager/Resources/Commands.Resources/AzureResourceManager.psd1

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ FormatsToProcess = @(
7272
'.\AzureRM.StreamAnalytics\Microsoft.Azure.Commands.StreamAnalytics.format.ps1xml',
7373
'.\AzureRM.Compute\Microsoft.Azure.Commands.Compute.format.ps1xml',
7474
'.\AzureRM.Compute\Microsoft.Azure.Commands.Compute.format.generated.ps1xml',
75+
'.\AzureRM.Compute\Microsoft.Azure.Commands.Compute.Automation.format.generated.ps1xml',
7576
'.\AzureRM.Network\Microsoft.Azure.Commands.Network.format.ps1xml',
7677
'.\Azure.Storage\Microsoft.WindowsAzure.Commands.Storage.format.ps1xml',
7778
'.\AzureRM.Storage\Microsoft.Azure.Commands.Management.Storage.format.ps1xml',

0 commit comments

Comments
 (0)