Skip to content

Commit 3a53a1c

Browse files
msyycSDKAuto
andauthored
[Resourcehealth] first release (Azure#19484)
* CodeGen from PR 14984 in Azure/azure-rest-api-specs Merge 82508fcc1205e9a9565088ea962ef051ffbf1a90 into 92b3333 * ci * myservice * Update _version.py Co-authored-by: SDKAuto <sdkautomation@microsoft.com>
1 parent 9502e66 commit 3a53a1c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+3754
-0
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Release History
2+
3+
## 1.0.0b1 (2021-06-25)
4+
5+
* Initial Release
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
include _meta.json
2+
recursive-include tests *.py *.yaml
3+
include *.md
4+
include azure/__init__.py
5+
include azure/mgmt/__init__.py
6+
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Microsoft Azure SDK for Python
2+
3+
This is the Microsoft Azure ResourceHealth Management Client Library.
4+
This package has been tested with Python 2.7, 3.5, 3.6, 3.7 and 3.8.
5+
For a more complete view of Azure libraries, see the [azure sdk python release](https://aka.ms/azsdk/python/all).
6+
7+
8+
# Usage
9+
10+
11+
To learn how to use this package, see the [quickstart guide](https://aka.ms/azsdk/python/mgmt)
12+
13+
14+
15+
For docs and references, see [Python SDK References](https://docs.microsoft.com/python/api/overview/azure/)
16+
Code samples for this package can be found at [ResourceHealth Management](https://docs.microsoft.com/samples/browse/?languages=python&term=Getting%20started%20-%20Managing&terms=Getting%20started%20-%20Managing) on docs.microsoft.com.
17+
Additional code samples for different Azure services are available at [Samples Repo](https://aka.ms/azsdk/python/mgmt/samples)
18+
19+
20+
# Provide Feedback
21+
22+
If you encounter any bugs or have suggestions, please file an issue in the
23+
[Issues](https://github.com/Azure/azure-sdk-for-python/issues)
24+
section of the project.
25+
26+
27+
![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python%2Fazure-mgmt-resourcehealth%2FREADME.png)
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"autorest": "3.4.2",
3+
"use": [
4+
"@autorest/python@5.8.1",
5+
"@autorest/modelerfour@4.19.2"
6+
],
7+
"commit": "8816b8568ee46dae94967bfadb97e19301604667",
8+
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
9+
"autorest_command": "autorest specification/resourcehealth/resource-manager/readme.md --multiapi --python --python-mode=update --python-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-python/sdk --track2 --use=@autorest/python@5.8.1 --use=@autorest/modelerfour@4.19.2 --version=3.4.2",
10+
"readme": "specification/resourcehealth/resource-manager/readme.md"
11+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
__path__ = __import__("pkgutil").extend_path(__path__, __name__)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
__path__ = __import__("pkgutil").extend_path(__path__, __name__)
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# coding=utf-8
2+
# --------------------------------------------------------------------------
3+
# Copyright (c) Microsoft Corporation. All rights reserved.
4+
# Licensed under the MIT License. See License.txt in the project root for license information.
5+
# Code generated by Microsoft (R) AutoRest Code Generator.
6+
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
7+
# --------------------------------------------------------------------------
8+
9+
from ._microsoft_resource_health import MicrosoftResourceHealth
10+
__all__ = ['MicrosoftResourceHealth']
11+
12+
try:
13+
from ._patch import patch_sdk # type: ignore
14+
patch_sdk()
15+
except ImportError:
16+
pass
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# coding=utf-8
2+
# --------------------------------------------------------------------------
3+
# Copyright (c) Microsoft Corporation. All rights reserved.
4+
# Licensed under the MIT License. See License.txt in the project root for
5+
# license information.
6+
#
7+
# Code generated by Microsoft (R) AutoRest Code Generator.
8+
# Changes may cause incorrect behavior and will be lost if the code is
9+
# regenerated.
10+
# --------------------------------------------------------------------------
11+
from typing import TYPE_CHECKING
12+
13+
from azure.core.configuration import Configuration
14+
from azure.core.pipeline import policies
15+
from azure.mgmt.core.policies import ARMHttpLoggingPolicy
16+
17+
from ._version import VERSION
18+
19+
if TYPE_CHECKING:
20+
# pylint: disable=unused-import,ungrouped-imports
21+
from typing import Any
22+
23+
from azure.core.credentials import TokenCredential
24+
25+
class MicrosoftResourceHealthConfiguration(Configuration):
26+
"""Configuration for MicrosoftResourceHealth.
27+
28+
Note that all parameters used to create this instance are saved as instance
29+
attributes.
30+
31+
:param credential: Credential needed for the client to connect to Azure.
32+
:type credential: ~azure.core.credentials.TokenCredential
33+
:param subscription_id: Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
34+
:type subscription_id: str
35+
"""
36+
37+
def __init__(
38+
self,
39+
credential, # type: "TokenCredential"
40+
subscription_id, # type: str
41+
**kwargs # type: Any
42+
):
43+
# type: (...) -> None
44+
if credential is None:
45+
raise ValueError("Parameter 'credential' must not be None.")
46+
if subscription_id is None:
47+
raise ValueError("Parameter 'subscription_id' must not be None.")
48+
super(MicrosoftResourceHealthConfiguration, self).__init__(**kwargs)
49+
50+
self.credential = credential
51+
self.subscription_id = subscription_id
52+
self.credential_scopes = kwargs.pop('credential_scopes', ['https://management.azure.com/.default'])
53+
kwargs.setdefault('sdk_moniker', 'azure-mgmt-resourcehealth/{}'.format(VERSION))
54+
self._configure(**kwargs)
55+
56+
def _configure(
57+
self,
58+
**kwargs # type: Any
59+
):
60+
# type: (...) -> None
61+
self.user_agent_policy = kwargs.get('user_agent_policy') or policies.UserAgentPolicy(**kwargs)
62+
self.headers_policy = kwargs.get('headers_policy') or policies.HeadersPolicy(**kwargs)
63+
self.proxy_policy = kwargs.get('proxy_policy') or policies.ProxyPolicy(**kwargs)
64+
self.logging_policy = kwargs.get('logging_policy') or policies.NetworkTraceLoggingPolicy(**kwargs)
65+
self.http_logging_policy = kwargs.get('http_logging_policy') or ARMHttpLoggingPolicy(**kwargs)
66+
self.retry_policy = kwargs.get('retry_policy') or policies.RetryPolicy(**kwargs)
67+
self.custom_hook_policy = kwargs.get('custom_hook_policy') or policies.CustomHookPolicy(**kwargs)
68+
self.redirect_policy = kwargs.get('redirect_policy') or policies.RedirectPolicy(**kwargs)
69+
self.authentication_policy = kwargs.get('authentication_policy')
70+
if self.credential and not self.authentication_policy:
71+
self.authentication_policy = policies.BearerTokenCredentialPolicy(self.credential, *self.credential_scopes, **kwargs)
Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
# coding=utf-8
2+
# --------------------------------------------------------------------------
3+
# Copyright (c) Microsoft Corporation. All rights reserved.
4+
# Licensed under the MIT License. See License.txt in the project root for
5+
# license information.
6+
#
7+
# Code generated by Microsoft (R) AutoRest Code Generator.
8+
# Changes may cause incorrect behavior and will be lost if the code is
9+
# regenerated.
10+
# --------------------------------------------------------------------------
11+
12+
from typing import TYPE_CHECKING
13+
14+
from azure.mgmt.core import ARMPipelineClient
15+
from azure.profiles import KnownProfiles, ProfileDefinition
16+
from azure.profiles.multiapiclient import MultiApiClientMixin
17+
from msrest import Deserializer, Serializer
18+
19+
from ._configuration import MicrosoftResourceHealthConfiguration
20+
21+
if TYPE_CHECKING:
22+
# pylint: disable=unused-import,ungrouped-imports
23+
from typing import Any, Optional
24+
25+
from azure.core.credentials import TokenCredential
26+
from azure.core.pipeline.transport import HttpRequest, HttpResponse
27+
28+
class _SDKClient(object):
29+
def __init__(self, *args, **kwargs):
30+
"""This is a fake class to support current implemetation of MultiApiClientMixin."
31+
Will be removed in final version of multiapi azure-core based client
32+
"""
33+
pass
34+
35+
class MicrosoftResourceHealth(MultiApiClientMixin, _SDKClient):
36+
"""The Resource Health Client.
37+
38+
This ready contains multiple API versions, to help you deal with all of the Azure clouds
39+
(Azure Stack, Azure Government, Azure China, etc.).
40+
By default, it uses the latest API version available on public Azure.
41+
For production, you should stick to a particular api-version and/or profile.
42+
The profile sets a mapping between an operation group and its API version.
43+
The api-version parameter sets the default API version if the operation
44+
group is not described in the profile.
45+
46+
:param credential: Credential needed for the client to connect to Azure.
47+
:type credential: ~azure.core.credentials.TokenCredential
48+
:param subscription_id: Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
49+
:type subscription_id: str
50+
:param api_version: API version to use if no profile is provided, or if missing in profile.
51+
:type api_version: str
52+
:param base_url: Service URL
53+
:type base_url: str
54+
:param profile: A profile definition, from KnownProfiles to dict.
55+
:type profile: azure.profiles.KnownProfiles
56+
"""
57+
58+
DEFAULT_API_VERSION = '2015-01-01'
59+
_PROFILE_TAG = "azure.mgmt.resourcehealth.MicrosoftResourceHealth"
60+
LATEST_PROFILE = ProfileDefinition({
61+
_PROFILE_TAG: {
62+
None: DEFAULT_API_VERSION,
63+
}},
64+
_PROFILE_TAG + " latest"
65+
)
66+
67+
def __init__(
68+
self,
69+
credential, # type: "TokenCredential"
70+
subscription_id, # type: str
71+
api_version=None, # type: Optional[str]
72+
base_url=None, # type: Optional[str]
73+
profile=KnownProfiles.default, # type: KnownProfiles
74+
**kwargs # type: Any
75+
):
76+
if not base_url:
77+
base_url = 'https://management.azure.com'
78+
self._config = MicrosoftResourceHealthConfiguration(credential, subscription_id, **kwargs)
79+
self._client = ARMPipelineClient(base_url=base_url, config=self._config, **kwargs)
80+
super(MicrosoftResourceHealth, self).__init__(
81+
api_version=api_version,
82+
profile=profile
83+
)
84+
85+
@classmethod
86+
def _models_dict(cls, api_version):
87+
return {k: v for k, v in cls.models(api_version).__dict__.items() if isinstance(v, type)}
88+
89+
@classmethod
90+
def models(cls, api_version=DEFAULT_API_VERSION):
91+
"""Module depends on the API version:
92+
93+
* 2015-01-01: :mod:`v2015_01_01.models<azure.mgmt.resourcehealth.v2015_01_01.models>`
94+
"""
95+
if api_version == '2015-01-01':
96+
from .v2015_01_01 import models
97+
return models
98+
raise ValueError("API version {} is not available".format(api_version))
99+
100+
@property
101+
def availability_statuses(self):
102+
"""Instance depends on the API version:
103+
104+
* 2015-01-01: :class:`AvailabilityStatusesOperations<azure.mgmt.resourcehealth.v2015_01_01.operations.AvailabilityStatusesOperations>`
105+
"""
106+
api_version = self._get_api_version('availability_statuses')
107+
if api_version == '2015-01-01':
108+
from .v2015_01_01.operations import AvailabilityStatusesOperations as OperationClass
109+
else:
110+
raise ValueError("API version {} does not have operation group 'availability_statuses'".format(api_version))
111+
return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)))
112+
113+
@property
114+
def child_availability_statuses(self):
115+
"""Instance depends on the API version:
116+
117+
* 2015-01-01: :class:`ChildAvailabilityStatusesOperations<azure.mgmt.resourcehealth.v2015_01_01.operations.ChildAvailabilityStatusesOperations>`
118+
"""
119+
api_version = self._get_api_version('child_availability_statuses')
120+
if api_version == '2015-01-01':
121+
from .v2015_01_01.operations import ChildAvailabilityStatusesOperations as OperationClass
122+
else:
123+
raise ValueError("API version {} does not have operation group 'child_availability_statuses'".format(api_version))
124+
return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)))
125+
126+
@property
127+
def child_resources(self):
128+
"""Instance depends on the API version:
129+
130+
* 2015-01-01: :class:`ChildResourcesOperations<azure.mgmt.resourcehealth.v2015_01_01.operations.ChildResourcesOperations>`
131+
"""
132+
api_version = self._get_api_version('child_resources')
133+
if api_version == '2015-01-01':
134+
from .v2015_01_01.operations import ChildResourcesOperations as OperationClass
135+
else:
136+
raise ValueError("API version {} does not have operation group 'child_resources'".format(api_version))
137+
return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)))
138+
139+
@property
140+
def operations(self):
141+
"""Instance depends on the API version:
142+
143+
* 2015-01-01: :class:`Operations<azure.mgmt.resourcehealth.v2015_01_01.operations.Operations>`
144+
"""
145+
api_version = self._get_api_version('operations')
146+
if api_version == '2015-01-01':
147+
from .v2015_01_01.operations import Operations as OperationClass
148+
else:
149+
raise ValueError("API version {} does not have operation group 'operations'".format(api_version))
150+
return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)))
151+
152+
def close(self):
153+
self._client.close()
154+
def __enter__(self):
155+
self._client.__enter__()
156+
return self
157+
def __exit__(self, *exc_details):
158+
self._client.__exit__(*exc_details)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# coding=utf-8
2+
# --------------------------------------------------------------------------
3+
# Copyright (c) Microsoft Corporation. All rights reserved.
4+
# Licensed under the MIT License. See License.txt in the project root for
5+
# license information.
6+
# --------------------------------------------------------------------------
7+
8+
VERSION = "1.0.0b1"

0 commit comments

Comments
 (0)