Skip to content

Commit b9f6f87

Browse files
add AdditionalProperties in VirtualMachineScaleSetVmProperties (#50933)
* add additionalproperties in vmssvmproperties * update changelog and version number * fix changelog
1 parent d7b6f7d commit b9f6f87

14 files changed

+1288
-724
lines changed

sdk/compute/Azure.ResourceManager.Compute/CHANGELOG.md

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
# Release History
22

3-
## 1.10.0-beta.1 (Unreleased)
3+
## 1.10.0 (2026-06-30)
44

55
### Features Added
66

7-
### Breaking Changes
8-
9-
### Bugs Fixed
10-
11-
### Other Changes
7+
- Added `Properties` property in `VirtualMachineScaleSetVmData` class.
8+
- This property contains the properties of the VirtualMachineScaleSetVm. It supports `AdditionalProperties` to send and receive private/internal properties supported by the service.
9+
- Please use the properties in `VirtualMachineScaleSetVmData.Properties` to set the properties of the VirtualMachineScaleSetVm, instead of using those properties at the root level of `VirtualMachineScaleSetVmData` class.
1210

1311
## 1.9.0 (2025-03-31)
1412

@@ -46,7 +44,7 @@
4644

4745
- Upgraded api-version tag from 'package-2024-07-01' to 'package-2024-11-03'. Tag detail available at https://github.com/Azure/azure-rest-api-specs/blob/b09c9ec927456021dc549e111fa2cac3b4b00659/specification/compute/resource-manager/readme.md.
4846
- Added new classes named `GalleryInVmAccessControlProfileCollection`, `ComputeGalleryValidationProfile`, `GalleryImageExecutedValidation`, `AdditionalReplicaSet`, `GallerySoftDeleted`, `GallerySoftDeletedResourceList`, `ComputeGalleryEndpointAccess`, `ComputeGalleryEndpointTypes`, and `ComputeGalleryPlatformAttribute`.
49-
- Added a new property named `IsBlockedDeletionBeforeEndOfLife` to `GalleryImageVersionSafertyProfile` class.
47+
- Added a new property named `IsBlockedDeletionBeforeEndOfLife` to `GalleryImageVersionSafetyProfile` class.
5048
- Added a new property named `StartsAtVersion` to `GalleryImageFeature` class.
5149
- Added a new property named `AllowUpdateImage` to `GalleryImageData` class.
5250
- Added new properties named `ValidationsProfile` and `EnableRestore` to `GalleryImageVersionData` class.

sdk/compute/Azure.ResourceManager.Compute/api/Azure.ResourceManager.Compute.net8.0.cs

Lines changed: 54 additions & 1 deletion
Large diffs are not rendered by default.

sdk/compute/Azure.ResourceManager.Compute/api/Azure.ResourceManager.Compute.netstandard2.0.cs

Lines changed: 54 additions & 1 deletion
Large diffs are not rendered by default.

sdk/compute/Azure.ResourceManager.Compute/src/Azure.ResourceManager.Compute.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<Version>1.10.0-beta.1</Version>
3+
<Version>1.10.0</Version>
44
<!--The ApiCompatVersion is managed automatically and should not generally be modified manually.-->
55
<ApiCompatVersion>1.9.0</ApiCompatVersion>
66
<PackageId>Azure.ResourceManager.Compute</PackageId>

sdk/compute/Azure.ResourceManager.Compute/src/Customize/ArmComputeModelFactory.cs

Lines changed: 119 additions & 1 deletion
Large diffs are not rendered by default.
Lines changed: 186 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,186 @@
1+
// Copyright (c) Microsoft Corporation. All rights reserved.
2+
// Licensed under the MIT License.
3+
4+
#nullable disable
5+
6+
using System;
7+
using System.Collections.Generic;
8+
using System.ComponentModel;
9+
using Azure.Core;
10+
using Azure.ResourceManager.Compute.Models;
11+
using Azure.ResourceManager.Models;
12+
13+
namespace Azure.ResourceManager.Compute
14+
{
15+
public partial class VirtualMachineScaleSetVmData : TrackedResourceData
16+
{
17+
/// <summary> Specifies whether the latest model has been applied to the virtual machine. </summary>
18+
[EditorBrowsable(EditorBrowsableState.Never)]
19+
public bool? LatestModelApplied => Properties?.LatestModelApplied;
20+
/// <summary> Azure VM unique ID. </summary>
21+
[EditorBrowsable(EditorBrowsableState.Never)]
22+
public string VmId => Properties?.VmId;
23+
/// <summary> The virtual machine instance view. </summary>
24+
[EditorBrowsable(EditorBrowsableState.Never)]
25+
public VirtualMachineScaleSetVmInstanceView InstanceView => Properties?.InstanceView;
26+
/// <summary> Specifies the hardware settings for the virtual machine. </summary>
27+
[EditorBrowsable(EditorBrowsableState.Never)]
28+
public VirtualMachineHardwareProfile HardwareProfile
29+
{
30+
get => Properties?.HardwareProfile;
31+
set
32+
{
33+
if (Properties == null)
34+
Properties = new VirtualMachineScaleSetVmProperties();
35+
Properties.HardwareProfile = value;
36+
}
37+
}
38+
/// <summary> Specifies the resilient VM deletion status for the virtual machine. </summary>
39+
[EditorBrowsable(EditorBrowsableState.Never)]
40+
public ResilientVmDeletionStatus? ResilientVmDeletionStatus
41+
{
42+
get => Properties?.ResilientVmDeletionStatus;
43+
set
44+
{
45+
if (Properties == null)
46+
Properties = new VirtualMachineScaleSetVmProperties();
47+
Properties.ResilientVmDeletionStatus = value;
48+
}
49+
}
50+
/// <summary> Specifies the storage settings for the virtual machine disks. </summary>
51+
[EditorBrowsable(EditorBrowsableState.Never)]
52+
public VirtualMachineStorageProfile StorageProfile
53+
{
54+
get => Properties?.StorageProfile;
55+
set
56+
{
57+
if (Properties == null)
58+
Properties = new VirtualMachineScaleSetVmProperties();
59+
Properties.StorageProfile = value;
60+
}
61+
}
62+
/// <summary> Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type. </summary>
63+
[EditorBrowsable(EditorBrowsableState.Never)]
64+
public AdditionalCapabilities AdditionalCapabilities
65+
{
66+
get => Properties?.AdditionalCapabilities;
67+
set
68+
{
69+
if (Properties == null)
70+
Properties = new VirtualMachineScaleSetVmProperties();
71+
Properties.AdditionalCapabilities = value;
72+
}
73+
}
74+
/// <summary> Specifies the operating system settings for the virtual machine. </summary>
75+
[EditorBrowsable(EditorBrowsableState.Never)]
76+
public VirtualMachineOSProfile OSProfile
77+
{
78+
get => Properties?.OSProfile;
79+
set
80+
{
81+
if (Properties == null)
82+
Properties = new VirtualMachineScaleSetVmProperties();
83+
Properties.OSProfile = value;
84+
}
85+
}
86+
/// <summary> Specifies the Security related profile settings for the virtual machine. </summary>
87+
[EditorBrowsable(EditorBrowsableState.Never)]
88+
public SecurityProfile SecurityProfile
89+
{
90+
get => Properties?.SecurityProfile;
91+
set
92+
{
93+
if (Properties == null)
94+
Properties = new VirtualMachineScaleSetVmProperties();
95+
Properties.SecurityProfile = value;
96+
}
97+
}
98+
/// <summary> Specifies the network interfaces of the virtual machine. </summary>
99+
[EditorBrowsable(EditorBrowsableState.Never)]
100+
public VirtualMachineNetworkProfile NetworkProfile
101+
{
102+
get => Properties?.NetworkProfile;
103+
set
104+
{
105+
if (Properties == null)
106+
Properties = new VirtualMachineScaleSetVmProperties();
107+
Properties.NetworkProfile = value;
108+
}
109+
}
110+
/// <summary> The list of network configurations. </summary>
111+
[EditorBrowsable(EditorBrowsableState.Never)]
112+
public IList<VirtualMachineScaleSetNetworkConfiguration> NetworkInterfaceConfigurations => Properties?.NetworkInterfaceConfigurations;
113+
114+
/// <summary> Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. **NOTE**: If storageUri is being specified then ensure that the storage account is in the same region and subscription as the VM. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor. </summary>
115+
[EditorBrowsable(EditorBrowsableState.Never)]
116+
public BootDiagnostics BootDiagnostics
117+
{
118+
get => Properties?.BootDiagnostics;
119+
set
120+
{
121+
if (Properties == null)
122+
Properties = new VirtualMachineScaleSetVmProperties();
123+
Properties.BootDiagnostics = value;
124+
}
125+
}
126+
127+
/// <summary> Gets or sets Id. </summary>
128+
[EditorBrowsable(EditorBrowsableState.Never)]
129+
public ResourceIdentifier AvailabilitySetId
130+
{
131+
get => Properties?.AvailabilitySetId;
132+
set
133+
{
134+
if (Properties == null)
135+
Properties = new VirtualMachineScaleSetVmProperties();
136+
Properties.AvailabilitySetId = value;
137+
}
138+
}
139+
140+
/// <summary> The provisioning state, which only appears in the response. </summary>
141+
[EditorBrowsable(EditorBrowsableState.Never)]
142+
public string ProvisioningState => Properties?.ProvisioningState;
143+
/// <summary> Specifies that the image or disk that is being used was licensed on-premises. &lt;br&gt;&lt;br&gt; Possible values for Windows Server operating system are: &lt;br&gt;&lt;br&gt; Windows_Client &lt;br&gt;&lt;br&gt; Windows_Server &lt;br&gt;&lt;br&gt; Possible values for Linux Server operating system are: &lt;br&gt;&lt;br&gt; RHEL_BYOS (for RHEL) &lt;br&gt;&lt;br&gt; SLES_BYOS (for SUSE) &lt;br&gt;&lt;br&gt; For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) &lt;br&gt;&lt;br&gt; [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) &lt;br&gt;&lt;br&gt; Minimum api-version: 2015-06-15. </summary>
144+
[EditorBrowsable(EditorBrowsableState.Never)]
145+
public string LicenseType
146+
{
147+
get => Properties?.LicenseType;
148+
set
149+
{
150+
if (Properties == null)
151+
Properties = new VirtualMachineScaleSetVmProperties();
152+
Properties.LicenseType = value;
153+
}
154+
}
155+
/// <summary> Specifies whether the model applied to the virtual machine is the model of the virtual machine scale set or the customized model for the virtual machine. </summary>
156+
[EditorBrowsable(EditorBrowsableState.Never)]
157+
public string ModelDefinitionApplied => Properties?.ModelDefinitionApplied;
158+
/// <summary> Specifies the protection policy of the virtual machine. </summary>
159+
[EditorBrowsable(EditorBrowsableState.Never)]
160+
public VirtualMachineScaleSetVmProtectionPolicy ProtectionPolicy
161+
{
162+
get => Properties?.ProtectionPolicy;
163+
set
164+
{
165+
if (Properties == null)
166+
Properties = new VirtualMachineScaleSetVmProperties();
167+
Properties.ProtectionPolicy = value;
168+
}
169+
}
170+
/// <summary> UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here. Minimum api-version: 2021-03-01. </summary>
171+
[EditorBrowsable(EditorBrowsableState.Never)]
172+
public string UserData
173+
{
174+
get => Properties?.UserData;
175+
set
176+
{
177+
if (Properties == null)
178+
Properties = new VirtualMachineScaleSetVmProperties();
179+
Properties.UserData = value;
180+
}
181+
}
182+
/// <summary> Specifies the time at which the Virtual Machine resource was created. Minimum api-version: 2021-11-01. </summary>
183+
[EditorBrowsable(EditorBrowsableState.Never)]
184+
public DateTimeOffset? TimeCreated => Properties?.TimeCreated;
185+
}
186+
}

0 commit comments

Comments
 (0)