diff --git a/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/__init__.py b/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/__init__.py
index 3c4da299c55e..810a6dba82b0 100644
--- a/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/__init__.py
+++ b/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/__init__.py
@@ -18,6 +18,7 @@
from ._models_py3 import AvailabilitySet
from ._models_py3 import AvailabilitySetListResult
from ._models_py3 import AvailabilitySetUpdate
+ from ._models_py3 import AvailablePatchSummary
from ._models_py3 import BillingProfile
from ._models_py3 import BootDiagnostics
from ._models_py3 import BootDiagnosticsInstanceView
@@ -57,6 +58,7 @@
from ._models_py3 import InstanceViewStatus
from ._models_py3 import KeyVaultKeyReference
from ._models_py3 import KeyVaultSecretReference
+ from ._models_py3 import LastPatchInstallationSummary
from ._models_py3 import LinuxConfiguration
from ._models_py3 import ListUsagesResult
from ._models_py3 import LogAnalyticsInputBase
@@ -137,6 +139,7 @@
from ._models_py3 import VirtualMachineImageResource
from ._models_py3 import VirtualMachineInstanceView
from ._models_py3 import VirtualMachineListResult
+ from ._models_py3 import VirtualMachinePatchStatus
from ._models_py3 import VirtualMachineReimageParameters
from ._models_py3 import VirtualMachineScaleSet
from ._models_py3 import VirtualMachineScaleSetDataDisk
@@ -204,6 +207,7 @@
from ._models import AvailabilitySet # type: ignore
from ._models import AvailabilitySetListResult # type: ignore
from ._models import AvailabilitySetUpdate # type: ignore
+ from ._models import AvailablePatchSummary # type: ignore
from ._models import BillingProfile # type: ignore
from ._models import BootDiagnostics # type: ignore
from ._models import BootDiagnosticsInstanceView # type: ignore
@@ -243,6 +247,7 @@
from ._models import InstanceViewStatus # type: ignore
from ._models import KeyVaultKeyReference # type: ignore
from ._models import KeyVaultSecretReference # type: ignore
+ from ._models import LastPatchInstallationSummary # type: ignore
from ._models import LinuxConfiguration # type: ignore
from ._models import ListUsagesResult # type: ignore
from ._models import LogAnalyticsInputBase # type: ignore
@@ -323,6 +328,7 @@
from ._models import VirtualMachineImageResource # type: ignore
from ._models import VirtualMachineInstanceView # type: ignore
from ._models import VirtualMachineListResult # type: ignore
+ from ._models import VirtualMachinePatchStatus # type: ignore
from ._models import VirtualMachineReimageParameters # type: ignore
from ._models import VirtualMachineScaleSet # type: ignore
from ._models import VirtualMachineScaleSetDataDisk # type: ignore
@@ -400,6 +406,7 @@
PatchOperationStatus,
ProtocolTypes,
ProximityPlacementGroupType,
+ RebootStatus,
ResourceIdentityType,
RollingUpgradeActionType,
RollingUpgradeStatusCode,
@@ -430,6 +437,7 @@
'AvailabilitySet',
'AvailabilitySetListResult',
'AvailabilitySetUpdate',
+ 'AvailablePatchSummary',
'BillingProfile',
'BootDiagnostics',
'BootDiagnosticsInstanceView',
@@ -469,6 +477,7 @@
'InstanceViewStatus',
'KeyVaultKeyReference',
'KeyVaultSecretReference',
+ 'LastPatchInstallationSummary',
'LinuxConfiguration',
'ListUsagesResult',
'LogAnalyticsInputBase',
@@ -549,6 +558,7 @@
'VirtualMachineImageResource',
'VirtualMachineInstanceView',
'VirtualMachineListResult',
+ 'VirtualMachinePatchStatus',
'VirtualMachineReimageParameters',
'VirtualMachineScaleSet',
'VirtualMachineScaleSetDataDisk',
@@ -624,6 +634,7 @@
'PatchOperationStatus',
'ProtocolTypes',
'ProximityPlacementGroupType',
+ 'RebootStatus',
'ResourceIdentityType',
'RollingUpgradeActionType',
'RollingUpgradeStatusCode',
diff --git a/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_compute_management_client_enums.py b/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_compute_management_client_enums.py
index 368e5d3a26fd..ae56eaa51cd9 100644
--- a/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_compute_management_client_enums.py
+++ b/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_compute_management_client_enums.py
@@ -86,7 +86,7 @@ class InGuestPatchMode(str, Enum):
must be false:code:`
`:code:`
` **AutomaticByOS** - The virtual machine will
automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates
must be true. :code:`
`:code:`
` ** AutomaticByPlatform** - the virtual machine will
- automatically updated by the OS. The properties provisionVMAgent and
+ automatically updated by the platform. The properties provisionVMAgent and
WindowsConfiguration.enableAutomaticUpdates must be true
"""
@@ -196,6 +196,20 @@ class ProximityPlacementGroupType(str, Enum):
standard = "Standard"
ultra = "Ultra"
+class RebootStatus(str, Enum):
+ """The reboot status of the machine after the patch operation. It will be in "NotNeeded" status if
+ reboot is not needed after the patch operation. "Required" will be the status once the patch is
+ applied and machine is required to reboot. "Started" will be the reboot status when the machine
+ has started to reboot. "Failed" will be the status if the machine is failed to reboot.
+ "Completed" will be the status once the machine is rebooted successfully
+ """
+
+ not_needed = "NotNeeded"
+ required = "Required"
+ started = "Started"
+ failed = "Failed"
+ completed = "Completed"
+
class ResourceIdentityType(str, Enum):
"""The type of identity used for the virtual machine. The type 'SystemAssigned, UserAssigned'
includes both an implicitly created identity and a set of user assigned identities. The type
diff --git a/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_models.py b/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_models.py
index feff6d727a33..6564b13dc981 100644
--- a/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_models.py
+++ b/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_models.py
@@ -457,6 +457,74 @@ def __init__(
self.statuses = None
+class AvailablePatchSummary(msrest.serialization.Model):
+ """Describes the properties of an virtual machine instance view for available patch summary.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar status: The overall success or failure status of the operation. It remains "InProgress"
+ until the operation completes. At that point it will become "Failed", "Succeeded", or
+ "CompletedWithWarnings.". Possible values include: "InProgress", "Failed", "Succeeded",
+ "CompletedWithWarnings".
+ :vartype status: str or ~azure.mgmt.compute.v2020_06_01.models.PatchOperationStatus
+ :ivar assessment_activity_id: The activity ID of the operation that produced this result. It is
+ used to correlate across CRP and extension logs.
+ :vartype assessment_activity_id: str
+ :ivar reboot_pending: The overall reboot status of the VM. It will be true when partially
+ installed patches require a reboot to complete installation but the reboot has not yet
+ occurred.
+ :vartype reboot_pending: bool
+ :ivar critical_and_security_patch_count: The number of critical or security patches that have
+ been detected as available and not yet installed.
+ :vartype critical_and_security_patch_count: int
+ :ivar other_patch_count: The number of all available patches excluding critical and security.
+ :vartype other_patch_count: int
+ :ivar start_time: The UTC timestamp when the operation began.
+ :vartype start_time: ~datetime.datetime
+ :ivar last_modified_time: The UTC timestamp when the operation began.
+ :vartype last_modified_time: ~datetime.datetime
+ :ivar error: The errors that were encountered during execution of the operation. The details
+ array contains the list of them.
+ :vartype error: ~azure.mgmt.compute.v2020_06_01.models.ApiError
+ """
+
+ _validation = {
+ 'status': {'readonly': True},
+ 'assessment_activity_id': {'readonly': True},
+ 'reboot_pending': {'readonly': True},
+ 'critical_and_security_patch_count': {'readonly': True},
+ 'other_patch_count': {'readonly': True},
+ 'start_time': {'readonly': True},
+ 'last_modified_time': {'readonly': True},
+ 'error': {'readonly': True},
+ }
+
+ _attribute_map = {
+ 'status': {'key': 'status', 'type': 'str'},
+ 'assessment_activity_id': {'key': 'assessmentActivityId', 'type': 'str'},
+ 'reboot_pending': {'key': 'rebootPending', 'type': 'bool'},
+ 'critical_and_security_patch_count': {'key': 'criticalAndSecurityPatchCount', 'type': 'int'},
+ 'other_patch_count': {'key': 'otherPatchCount', 'type': 'int'},
+ 'start_time': {'key': 'startTime', 'type': 'iso-8601'},
+ 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'},
+ 'error': {'key': 'error', 'type': 'ApiError'},
+ }
+
+ def __init__(
+ self,
+ **kwargs
+ ):
+ super(AvailablePatchSummary, self).__init__(**kwargs)
+ self.status = None
+ self.assessment_activity_id = None
+ self.reboot_pending = None
+ self.critical_and_security_patch_count = None
+ self.other_patch_count = None
+ self.start_time = None
+ self.last_modified_time = None
+ self.error = None
+
+
class BillingProfile(msrest.serialization.Model):
"""Specifies the billing related details of a Azure Spot VM or VMSS. :code:`
`:code:`
`Minimum api-version: 2019-03-01.
@@ -2026,6 +2094,106 @@ def __init__(
self.source_vault = kwargs['source_vault']
+class LastPatchInstallationSummary(msrest.serialization.Model):
+ """Describes the properties of the last installed patch summary.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar status: The overall success or failure status of the operation. It remains "InProgress"
+ until the operation completes. At that point it will become "Failed", "Succeeded", or
+ "CompletedWithWarnings.". Possible values include: "InProgress", "Failed", "Succeeded",
+ "CompletedWithWarnings".
+ :vartype status: str or ~azure.mgmt.compute.v2020_06_01.models.PatchOperationStatus
+ :ivar installation_activity_id: The activity ID of the operation that produced this result. It
+ is used to correlate across CRP and extension logs.
+ :vartype installation_activity_id: str
+ :ivar maintenance_window_exceeded: Describes whether the operation ran out of time before it
+ completed all its intended actions.
+ :vartype maintenance_window_exceeded: bool
+ :ivar reboot_status: The reboot status of the machine after the patch operation. It will be in
+ "NotNeeded" status if reboot is not needed after the patch operation. "Required" will be the
+ status once the patch is applied and machine is required to reboot. "Started" will be the
+ reboot status when the machine has started to reboot. "Failed" will be the status if the
+ machine is failed to reboot. "Completed" will be the status once the machine is rebooted
+ successfully. Possible values include: "NotNeeded", "Required", "Started", "Failed",
+ "Completed".
+ :vartype reboot_status: str or ~azure.mgmt.compute.v2020_06_01.models.RebootStatus
+ :ivar not_selected_patch_count: The number of all available patches but not going to be
+ installed because it didn't match a classification or inclusion list entry.
+ :vartype not_selected_patch_count: int
+ :ivar excluded_patch_count: The number of all available patches but excluded explicitly by a
+ customer-specified exclusion list match.
+ :vartype excluded_patch_count: int
+ :ivar pending_patch_count: The number of all available patches expected to be installed over
+ the course of the patch installation operation.
+ :vartype pending_patch_count: int
+ :ivar installed_patch_count: The count of patches that successfully installed.
+ :vartype installed_patch_count: int
+ :ivar failed_patch_count: The count of patches that failed installation.
+ :vartype failed_patch_count: int
+ :ivar start_time: The UTC timestamp when the operation began.
+ :vartype start_time: ~datetime.datetime
+ :ivar last_modified_time: The UTC timestamp when the operation began.
+ :vartype last_modified_time: ~datetime.datetime
+ :ivar started_by: The person or system account that started the operation.
+ :vartype started_by: str
+ :ivar error: The errors that were encountered during execution of the operation. The details
+ array contains the list of them.
+ :vartype error: ~azure.mgmt.compute.v2020_06_01.models.ApiError
+ """
+
+ _validation = {
+ 'status': {'readonly': True},
+ 'installation_activity_id': {'readonly': True},
+ 'maintenance_window_exceeded': {'readonly': True},
+ 'reboot_status': {'readonly': True},
+ 'not_selected_patch_count': {'readonly': True},
+ 'excluded_patch_count': {'readonly': True},
+ 'pending_patch_count': {'readonly': True},
+ 'installed_patch_count': {'readonly': True},
+ 'failed_patch_count': {'readonly': True},
+ 'start_time': {'readonly': True},
+ 'last_modified_time': {'readonly': True},
+ 'started_by': {'readonly': True},
+ 'error': {'readonly': True},
+ }
+
+ _attribute_map = {
+ 'status': {'key': 'status', 'type': 'str'},
+ 'installation_activity_id': {'key': 'installationActivityId', 'type': 'str'},
+ 'maintenance_window_exceeded': {'key': 'maintenanceWindowExceeded', 'type': 'bool'},
+ 'reboot_status': {'key': 'rebootStatus', 'type': 'str'},
+ 'not_selected_patch_count': {'key': 'notSelectedPatchCount', 'type': 'int'},
+ 'excluded_patch_count': {'key': 'excludedPatchCount', 'type': 'int'},
+ 'pending_patch_count': {'key': 'pendingPatchCount', 'type': 'int'},
+ 'installed_patch_count': {'key': 'installedPatchCount', 'type': 'int'},
+ 'failed_patch_count': {'key': 'failedPatchCount', 'type': 'int'},
+ 'start_time': {'key': 'startTime', 'type': 'iso-8601'},
+ 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'},
+ 'started_by': {'key': 'startedBy', 'type': 'str'},
+ 'error': {'key': 'error', 'type': 'ApiError'},
+ }
+
+ def __init__(
+ self,
+ **kwargs
+ ):
+ super(LastPatchInstallationSummary, self).__init__(**kwargs)
+ self.status = None
+ self.installation_activity_id = None
+ self.maintenance_window_exceeded = None
+ self.reboot_status = None
+ self.not_selected_patch_count = None
+ self.excluded_patch_count = None
+ self.pending_patch_count = None
+ self.installed_patch_count = None
+ self.failed_patch_count = None
+ self.start_time = None
+ self.last_modified_time = None
+ self.started_by = None
+ self.error = None
+
+
class LinuxConfiguration(msrest.serialization.Model):
"""Specifies the Linux operating system settings on the virtual machine. :code:`
`:code:`
`For a list of supported Linux distributions, see `Linux on Azure-Endorsed Distributions `_ :code:`
`:code:`
` For running non-endorsed distributions, see `Information for Non-Endorsed Distributions `_.
@@ -2599,7 +2767,7 @@ class PatchSettings(msrest.serialization.Model):
WindowsConfiguration.enableAutomaticUpdates must be false:code:`
`:code:`
`
**AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property
WindowsConfiguration.enableAutomaticUpdates must be true. :code:`
`:code:`
` **
- AutomaticByPlatform** - the virtual machine will automatically updated by the OS. The
+ AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The
properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true.
Possible values include: "Manual", "AutomaticByOS", "AutomaticByPlatform".
:type patch_mode: str or ~azure.mgmt.compute.v2020_06_01.models.InGuestPatchMode
@@ -5018,6 +5186,8 @@ class VirtualMachineInstanceView(msrest.serialization.Model):
:vartype assigned_host: str
:param statuses: The resource status information.
:type statuses: list[~azure.mgmt.compute.v2020_06_01.models.InstanceViewStatus]
+ :param patch_status: The status of virtual machine patch operations.
+ :type patch_status: ~azure.mgmt.compute.v2020_06_01.models.VirtualMachinePatchStatus
"""
_validation = {
@@ -5041,6 +5211,7 @@ class VirtualMachineInstanceView(msrest.serialization.Model):
'boot_diagnostics': {'key': 'bootDiagnostics', 'type': 'BootDiagnosticsInstanceView'},
'assigned_host': {'key': 'assignedHost', 'type': 'str'},
'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'},
+ 'patch_status': {'key': 'patchStatus', 'type': 'VirtualMachinePatchStatus'},
}
def __init__(
@@ -5063,6 +5234,7 @@ def __init__(
self.boot_diagnostics = kwargs.get('boot_diagnostics', None)
self.assigned_host = None
self.statuses = kwargs.get('statuses', None)
+ self.patch_status = kwargs.get('patch_status', None)
class VirtualMachineListResult(msrest.serialization.Model):
@@ -5095,6 +5267,32 @@ def __init__(
self.next_link = kwargs.get('next_link', None)
+class VirtualMachinePatchStatus(msrest.serialization.Model):
+ """The status of virtual machine patch operations.
+
+ :param available_patch_summary: The available patch summary of the latest assessment operation
+ for the virtual machine.
+ :type available_patch_summary: ~azure.mgmt.compute.v2020_06_01.models.AvailablePatchSummary
+ :param last_patch_installation_summary: The installation summary of the latest installation
+ operation for the virtual machine.
+ :type last_patch_installation_summary:
+ ~azure.mgmt.compute.v2020_06_01.models.LastPatchInstallationSummary
+ """
+
+ _attribute_map = {
+ 'available_patch_summary': {'key': 'availablePatchSummary', 'type': 'AvailablePatchSummary'},
+ 'last_patch_installation_summary': {'key': 'lastPatchInstallationSummary', 'type': 'LastPatchInstallationSummary'},
+ }
+
+ def __init__(
+ self,
+ **kwargs
+ ):
+ super(VirtualMachinePatchStatus, self).__init__(**kwargs)
+ self.available_patch_summary = kwargs.get('available_patch_summary', None)
+ self.last_patch_installation_summary = kwargs.get('last_patch_installation_summary', None)
+
+
class VirtualMachineReimageParameters(msrest.serialization.Model):
"""Parameters for Reimaging Virtual Machine. NOTE: Virtual Machine OS disk will always be reimaged.
diff --git a/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_models_py3.py b/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_models_py3.py
index 23afa575bcb6..928e077594ed 100644
--- a/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_models_py3.py
+++ b/sdk/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_01/models/_models_py3.py
@@ -510,6 +510,74 @@ def __init__(
self.statuses = None
+class AvailablePatchSummary(msrest.serialization.Model):
+ """Describes the properties of an virtual machine instance view for available patch summary.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar status: The overall success or failure status of the operation. It remains "InProgress"
+ until the operation completes. At that point it will become "Failed", "Succeeded", or
+ "CompletedWithWarnings.". Possible values include: "InProgress", "Failed", "Succeeded",
+ "CompletedWithWarnings".
+ :vartype status: str or ~azure.mgmt.compute.v2020_06_01.models.PatchOperationStatus
+ :ivar assessment_activity_id: The activity ID of the operation that produced this result. It is
+ used to correlate across CRP and extension logs.
+ :vartype assessment_activity_id: str
+ :ivar reboot_pending: The overall reboot status of the VM. It will be true when partially
+ installed patches require a reboot to complete installation but the reboot has not yet
+ occurred.
+ :vartype reboot_pending: bool
+ :ivar critical_and_security_patch_count: The number of critical or security patches that have
+ been detected as available and not yet installed.
+ :vartype critical_and_security_patch_count: int
+ :ivar other_patch_count: The number of all available patches excluding critical and security.
+ :vartype other_patch_count: int
+ :ivar start_time: The UTC timestamp when the operation began.
+ :vartype start_time: ~datetime.datetime
+ :ivar last_modified_time: The UTC timestamp when the operation began.
+ :vartype last_modified_time: ~datetime.datetime
+ :ivar error: The errors that were encountered during execution of the operation. The details
+ array contains the list of them.
+ :vartype error: ~azure.mgmt.compute.v2020_06_01.models.ApiError
+ """
+
+ _validation = {
+ 'status': {'readonly': True},
+ 'assessment_activity_id': {'readonly': True},
+ 'reboot_pending': {'readonly': True},
+ 'critical_and_security_patch_count': {'readonly': True},
+ 'other_patch_count': {'readonly': True},
+ 'start_time': {'readonly': True},
+ 'last_modified_time': {'readonly': True},
+ 'error': {'readonly': True},
+ }
+
+ _attribute_map = {
+ 'status': {'key': 'status', 'type': 'str'},
+ 'assessment_activity_id': {'key': 'assessmentActivityId', 'type': 'str'},
+ 'reboot_pending': {'key': 'rebootPending', 'type': 'bool'},
+ 'critical_and_security_patch_count': {'key': 'criticalAndSecurityPatchCount', 'type': 'int'},
+ 'other_patch_count': {'key': 'otherPatchCount', 'type': 'int'},
+ 'start_time': {'key': 'startTime', 'type': 'iso-8601'},
+ 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'},
+ 'error': {'key': 'error', 'type': 'ApiError'},
+ }
+
+ def __init__(
+ self,
+ **kwargs
+ ):
+ super(AvailablePatchSummary, self).__init__(**kwargs)
+ self.status = None
+ self.assessment_activity_id = None
+ self.reboot_pending = None
+ self.critical_and_security_patch_count = None
+ self.other_patch_count = None
+ self.start_time = None
+ self.last_modified_time = None
+ self.error = None
+
+
class BillingProfile(msrest.serialization.Model):
"""Specifies the billing related details of a Azure Spot VM or VMSS. :code:`
`:code:`
`Minimum api-version: 2019-03-01.
@@ -2223,6 +2291,106 @@ def __init__(
self.source_vault = source_vault
+class LastPatchInstallationSummary(msrest.serialization.Model):
+ """Describes the properties of the last installed patch summary.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar status: The overall success or failure status of the operation. It remains "InProgress"
+ until the operation completes. At that point it will become "Failed", "Succeeded", or
+ "CompletedWithWarnings.". Possible values include: "InProgress", "Failed", "Succeeded",
+ "CompletedWithWarnings".
+ :vartype status: str or ~azure.mgmt.compute.v2020_06_01.models.PatchOperationStatus
+ :ivar installation_activity_id: The activity ID of the operation that produced this result. It
+ is used to correlate across CRP and extension logs.
+ :vartype installation_activity_id: str
+ :ivar maintenance_window_exceeded: Describes whether the operation ran out of time before it
+ completed all its intended actions.
+ :vartype maintenance_window_exceeded: bool
+ :ivar reboot_status: The reboot status of the machine after the patch operation. It will be in
+ "NotNeeded" status if reboot is not needed after the patch operation. "Required" will be the
+ status once the patch is applied and machine is required to reboot. "Started" will be the
+ reboot status when the machine has started to reboot. "Failed" will be the status if the
+ machine is failed to reboot. "Completed" will be the status once the machine is rebooted
+ successfully. Possible values include: "NotNeeded", "Required", "Started", "Failed",
+ "Completed".
+ :vartype reboot_status: str or ~azure.mgmt.compute.v2020_06_01.models.RebootStatus
+ :ivar not_selected_patch_count: The number of all available patches but not going to be
+ installed because it didn't match a classification or inclusion list entry.
+ :vartype not_selected_patch_count: int
+ :ivar excluded_patch_count: The number of all available patches but excluded explicitly by a
+ customer-specified exclusion list match.
+ :vartype excluded_patch_count: int
+ :ivar pending_patch_count: The number of all available patches expected to be installed over
+ the course of the patch installation operation.
+ :vartype pending_patch_count: int
+ :ivar installed_patch_count: The count of patches that successfully installed.
+ :vartype installed_patch_count: int
+ :ivar failed_patch_count: The count of patches that failed installation.
+ :vartype failed_patch_count: int
+ :ivar start_time: The UTC timestamp when the operation began.
+ :vartype start_time: ~datetime.datetime
+ :ivar last_modified_time: The UTC timestamp when the operation began.
+ :vartype last_modified_time: ~datetime.datetime
+ :ivar started_by: The person or system account that started the operation.
+ :vartype started_by: str
+ :ivar error: The errors that were encountered during execution of the operation. The details
+ array contains the list of them.
+ :vartype error: ~azure.mgmt.compute.v2020_06_01.models.ApiError
+ """
+
+ _validation = {
+ 'status': {'readonly': True},
+ 'installation_activity_id': {'readonly': True},
+ 'maintenance_window_exceeded': {'readonly': True},
+ 'reboot_status': {'readonly': True},
+ 'not_selected_patch_count': {'readonly': True},
+ 'excluded_patch_count': {'readonly': True},
+ 'pending_patch_count': {'readonly': True},
+ 'installed_patch_count': {'readonly': True},
+ 'failed_patch_count': {'readonly': True},
+ 'start_time': {'readonly': True},
+ 'last_modified_time': {'readonly': True},
+ 'started_by': {'readonly': True},
+ 'error': {'readonly': True},
+ }
+
+ _attribute_map = {
+ 'status': {'key': 'status', 'type': 'str'},
+ 'installation_activity_id': {'key': 'installationActivityId', 'type': 'str'},
+ 'maintenance_window_exceeded': {'key': 'maintenanceWindowExceeded', 'type': 'bool'},
+ 'reboot_status': {'key': 'rebootStatus', 'type': 'str'},
+ 'not_selected_patch_count': {'key': 'notSelectedPatchCount', 'type': 'int'},
+ 'excluded_patch_count': {'key': 'excludedPatchCount', 'type': 'int'},
+ 'pending_patch_count': {'key': 'pendingPatchCount', 'type': 'int'},
+ 'installed_patch_count': {'key': 'installedPatchCount', 'type': 'int'},
+ 'failed_patch_count': {'key': 'failedPatchCount', 'type': 'int'},
+ 'start_time': {'key': 'startTime', 'type': 'iso-8601'},
+ 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'},
+ 'started_by': {'key': 'startedBy', 'type': 'str'},
+ 'error': {'key': 'error', 'type': 'ApiError'},
+ }
+
+ def __init__(
+ self,
+ **kwargs
+ ):
+ super(LastPatchInstallationSummary, self).__init__(**kwargs)
+ self.status = None
+ self.installation_activity_id = None
+ self.maintenance_window_exceeded = None
+ self.reboot_status = None
+ self.not_selected_patch_count = None
+ self.excluded_patch_count = None
+ self.pending_patch_count = None
+ self.installed_patch_count = None
+ self.failed_patch_count = None
+ self.start_time = None
+ self.last_modified_time = None
+ self.started_by = None
+ self.error = None
+
+
class LinuxConfiguration(msrest.serialization.Model):
"""Specifies the Linux operating system settings on the virtual machine. :code:`
`:code:`
`For a list of supported Linux distributions, see `Linux on Azure-Endorsed Distributions `_ :code:`
`:code:`
` For running non-endorsed distributions, see `Information for Non-Endorsed Distributions `_.
@@ -2854,7 +3022,7 @@ class PatchSettings(msrest.serialization.Model):
WindowsConfiguration.enableAutomaticUpdates must be false:code:`
`:code:`
`
**AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property
WindowsConfiguration.enableAutomaticUpdates must be true. :code:`
`:code:`
` **
- AutomaticByPlatform** - the virtual machine will automatically updated by the OS. The
+ AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The
properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true.
Possible values include: "Manual", "AutomaticByOS", "AutomaticByPlatform".
:type patch_mode: str or ~azure.mgmt.compute.v2020_06_01.models.InGuestPatchMode
@@ -5500,6 +5668,8 @@ class VirtualMachineInstanceView(msrest.serialization.Model):
:vartype assigned_host: str
:param statuses: The resource status information.
:type statuses: list[~azure.mgmt.compute.v2020_06_01.models.InstanceViewStatus]
+ :param patch_status: The status of virtual machine patch operations.
+ :type patch_status: ~azure.mgmt.compute.v2020_06_01.models.VirtualMachinePatchStatus
"""
_validation = {
@@ -5523,6 +5693,7 @@ class VirtualMachineInstanceView(msrest.serialization.Model):
'boot_diagnostics': {'key': 'bootDiagnostics', 'type': 'BootDiagnosticsInstanceView'},
'assigned_host': {'key': 'assignedHost', 'type': 'str'},
'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'},
+ 'patch_status': {'key': 'patchStatus', 'type': 'VirtualMachinePatchStatus'},
}
def __init__(
@@ -5541,6 +5712,7 @@ def __init__(
extensions: Optional[List["VirtualMachineExtensionInstanceView"]] = None,
boot_diagnostics: Optional["BootDiagnosticsInstanceView"] = None,
statuses: Optional[List["InstanceViewStatus"]] = None,
+ patch_status: Optional["VirtualMachinePatchStatus"] = None,
**kwargs
):
super(VirtualMachineInstanceView, self).__init__(**kwargs)
@@ -5559,6 +5731,7 @@ def __init__(
self.boot_diagnostics = boot_diagnostics
self.assigned_host = None
self.statuses = statuses
+ self.patch_status = patch_status
class VirtualMachineListResult(msrest.serialization.Model):
@@ -5594,6 +5767,35 @@ def __init__(
self.next_link = next_link
+class VirtualMachinePatchStatus(msrest.serialization.Model):
+ """The status of virtual machine patch operations.
+
+ :param available_patch_summary: The available patch summary of the latest assessment operation
+ for the virtual machine.
+ :type available_patch_summary: ~azure.mgmt.compute.v2020_06_01.models.AvailablePatchSummary
+ :param last_patch_installation_summary: The installation summary of the latest installation
+ operation for the virtual machine.
+ :type last_patch_installation_summary:
+ ~azure.mgmt.compute.v2020_06_01.models.LastPatchInstallationSummary
+ """
+
+ _attribute_map = {
+ 'available_patch_summary': {'key': 'availablePatchSummary', 'type': 'AvailablePatchSummary'},
+ 'last_patch_installation_summary': {'key': 'lastPatchInstallationSummary', 'type': 'LastPatchInstallationSummary'},
+ }
+
+ def __init__(
+ self,
+ *,
+ available_patch_summary: Optional["AvailablePatchSummary"] = None,
+ last_patch_installation_summary: Optional["LastPatchInstallationSummary"] = None,
+ **kwargs
+ ):
+ super(VirtualMachinePatchStatus, self).__init__(**kwargs)
+ self.available_patch_summary = available_patch_summary
+ self.last_patch_installation_summary = last_patch_installation_summary
+
+
class VirtualMachineReimageParameters(msrest.serialization.Model):
"""Parameters for Reimaging Virtual Machine. NOTE: Virtual Machine OS disk will always be reimaged.