From 117f1649d4cabae08db59975440879463c4266c4 Mon Sep 17 00:00:00 2001 From: SDK Automation Date: Tue, 17 Mar 2020 05:38:03 +0000 Subject: [PATCH] Generated from 93b740901ffff1df0fe936b9c6a2d9d83961df1d Fix typo --- .../mgmt/policyinsights/models/_models.py | 22 +++ .../mgmt/policyinsights/models/_models_py3.py | 22 +++ .../operations/_policy_states_operations.py | 154 ++++++++++++++++++ 3 files changed, 198 insertions(+) diff --git a/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/models/_models.py b/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/models/_models.py index a177f6398da9..5d416b1f7be2 100644 --- a/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/models/_models.py +++ b/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/models/_models.py @@ -660,6 +660,9 @@ def __init__(self, **kwargs): class PolicyState(Model): """Policy state record. + Variables are only populated by the server, and will be ignored when + sending a request. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -738,8 +741,21 @@ class PolicyState(Model): ~azure.mgmt.policyinsights.models.PolicyEvaluationDetails :param policy_definition_group_names: Policy definition group names. :type policy_definition_group_names: list[str] + :ivar policy_definition_version: Evaluated policy definition version. + :vartype policy_definition_version: str + :ivar policy_set_definition_version: Evaluated policy set definition + version. + :vartype policy_set_definition_version: str + :ivar policy_assignment_version: Evaluated policy assignment version. + :vartype policy_assignment_version: str """ + _validation = { + 'policy_definition_version': {'readonly': True}, + 'policy_set_definition_version': {'readonly': True}, + 'policy_assignment_version': {'readonly': True}, + } + _attribute_map = { 'additional_properties': {'key': '', 'type': '{object}'}, 'odataid': {'key': '@odata\\.id', 'type': 'str'}, @@ -772,6 +788,9 @@ class PolicyState(Model): 'compliance_state': {'key': 'complianceState', 'type': 'str'}, 'policy_evaluation_details': {'key': 'policyEvaluationDetails', 'type': 'PolicyEvaluationDetails'}, 'policy_definition_group_names': {'key': 'policyDefinitionGroupNames', 'type': '[str]'}, + 'policy_definition_version': {'key': 'policyDefinitionVersion', 'type': 'str'}, + 'policy_set_definition_version': {'key': 'policySetDefinitionVersion', 'type': 'str'}, + 'policy_assignment_version': {'key': 'policyAssignmentVersion', 'type': 'str'}, } def __init__(self, **kwargs): @@ -807,6 +826,9 @@ def __init__(self, **kwargs): self.compliance_state = kwargs.get('compliance_state', None) self.policy_evaluation_details = kwargs.get('policy_evaluation_details', None) self.policy_definition_group_names = kwargs.get('policy_definition_group_names', None) + self.policy_definition_version = None + self.policy_set_definition_version = None + self.policy_assignment_version = None class PolicyStatesQueryResults(Model): diff --git a/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/models/_models_py3.py b/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/models/_models_py3.py index 97836f50412b..dccb0f38b622 100644 --- a/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/models/_models_py3.py +++ b/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/models/_models_py3.py @@ -660,6 +660,9 @@ def __init__(self, **kwargs) -> None: class PolicyState(Model): """Policy state record. + Variables are only populated by the server, and will be ignored when + sending a request. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -738,8 +741,21 @@ class PolicyState(Model): ~azure.mgmt.policyinsights.models.PolicyEvaluationDetails :param policy_definition_group_names: Policy definition group names. :type policy_definition_group_names: list[str] + :ivar policy_definition_version: Evaluated policy definition version. + :vartype policy_definition_version: str + :ivar policy_set_definition_version: Evaluated policy set definition + version. + :vartype policy_set_definition_version: str + :ivar policy_assignment_version: Evaluated policy assignment version. + :vartype policy_assignment_version: str """ + _validation = { + 'policy_definition_version': {'readonly': True}, + 'policy_set_definition_version': {'readonly': True}, + 'policy_assignment_version': {'readonly': True}, + } + _attribute_map = { 'additional_properties': {'key': '', 'type': '{object}'}, 'odataid': {'key': '@odata\\.id', 'type': 'str'}, @@ -772,6 +788,9 @@ class PolicyState(Model): 'compliance_state': {'key': 'complianceState', 'type': 'str'}, 'policy_evaluation_details': {'key': 'policyEvaluationDetails', 'type': 'PolicyEvaluationDetails'}, 'policy_definition_group_names': {'key': 'policyDefinitionGroupNames', 'type': '[str]'}, + 'policy_definition_version': {'key': 'policyDefinitionVersion', 'type': 'str'}, + 'policy_set_definition_version': {'key': 'policySetDefinitionVersion', 'type': 'str'}, + 'policy_assignment_version': {'key': 'policyAssignmentVersion', 'type': 'str'}, } def __init__(self, *, additional_properties=None, odataid: str=None, odatacontext: str=None, timestamp=None, resource_id: str=None, policy_assignment_id: str=None, policy_definition_id: str=None, effective_parameters: str=None, is_compliant: bool=None, subscription_id: str=None, resource_type: str=None, resource_location: str=None, resource_group: str=None, resource_tags: str=None, policy_assignment_name: str=None, policy_assignment_owner: str=None, policy_assignment_parameters: str=None, policy_assignment_scope: str=None, policy_definition_name: str=None, policy_definition_action: str=None, policy_definition_category: str=None, policy_set_definition_id: str=None, policy_set_definition_name: str=None, policy_set_definition_owner: str=None, policy_set_definition_category: str=None, policy_set_definition_parameters: str=None, management_group_ids: str=None, policy_definition_reference_id: str=None, compliance_state: str=None, policy_evaluation_details=None, policy_definition_group_names=None, **kwargs) -> None: @@ -807,6 +826,9 @@ def __init__(self, *, additional_properties=None, odataid: str=None, odatacontex self.compliance_state = compliance_state self.policy_evaluation_details = policy_evaluation_details self.policy_definition_group_names = policy_definition_group_names + self.policy_definition_version = None + self.policy_set_definition_version = None + self.policy_assignment_version = None class PolicyStatesQueryResults(Model): diff --git a/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/operations/_policy_states_operations.py b/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/operations/_policy_states_operations.py index b0b671d622bc..e39c40bae51a 100644 --- a/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/operations/_policy_states_operations.py +++ b/sdk/policyinsights/azure-mgmt-policyinsights/azure/mgmt/policyinsights/operations/_policy_states_operations.py @@ -11,6 +11,8 @@ import uuid from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -781,6 +783,158 @@ def summarize_for_resource( return deserialized summarize_for_resource.metadata = {'url': '/{resourceId}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesSummaryResource}/summarize'} + + def _trigger_subscription_evaluation_initial( + self, subscription_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.trigger_subscription_evaluation.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("subscription_id", subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.QueryFailureException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def trigger_subscription_evaluation( + self, subscription_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Triggers a policy evaluation scan for all the resources under the + subscription. + + :param subscription_id: Microsoft Azure subscription ID. + :type subscription_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`QueryFailureException` + """ + raw_result = self._trigger_subscription_evaluation_initial( + subscription_id=subscription_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + trigger_subscription_evaluation.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/latest/triggerEvaluation'} + + + def _trigger_resource_group_evaluation_initial( + self, subscription_id, resource_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.trigger_resource_group_evaluation.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("subscription_id", subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.QueryFailureException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def trigger_resource_group_evaluation( + self, subscription_id, resource_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Triggers a policy evaluation scan for all the resources under the + resource group. + + :param subscription_id: Microsoft Azure subscription ID. + :type subscription_id: str + :param resource_group_name: Resource group name. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`QueryFailureException` + """ + raw_result = self._trigger_resource_group_evaluation_initial( + subscription_id=subscription_id, + resource_group_name=resource_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + trigger_resource_group_evaluation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/latest/triggerEvaluation'} + def list_query_results_for_policy_set_definition( self, policy_states_resource, subscription_id, policy_set_definition_name, query_options=None, custom_headers=None, raw=False, **operation_config): """Queries policy states for the subscription level policy set definition.