Skip to content

Commit

Permalink
[Cusotm Provider] Migrate to track2 (#3304)
Browse files Browse the repository at this point in the history
  • Loading branch information
00Kai0 authored May 13, 2021
1 parent 8eb2659 commit 1f29b7c
Show file tree
Hide file tree
Showing 28 changed files with 2,731 additions and 1,065 deletions.
4 changes: 4 additions & 0 deletions src/custom-providers/HISTORY.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
Release History
===============

0.2.0
++++++
* Migrate to track2 SDK

0.1.0
++++++
* Initial release.
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

def cf_custom_providers(cli_ctx, *_):
from azure.cli.core.commands.client_factory import get_mgmt_service_client
from .vendored_sdks.customproviders import CustomProvidersClient
from .vendored_sdks.customproviders import Customproviders as CustomProvidersClient
return get_mgmt_service_client(cli_ctx, CustomProvidersClient)


Expand Down
7 changes: 4 additions & 3 deletions src/custom-providers/azext_custom_providers/custom.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,21 +22,22 @@ def create_custom_providers_custom_resource_provider(client,
body = {'location': location, 'tags': tags,
'actions': actions, 'resource_types': resource_types,
'validations': validations}
return sdk_no_wait(no_wait, client.create_or_update, resource_group_name=resource_group_name, resource_provider_name=resource_provider_name, resource_provider=body)
return sdk_no_wait(no_wait, client.begin_create_or_update, resource_group_name=resource_group_name, resource_provider_name=resource_provider_name, resource_provider=body)


def update_custom_providers_custom_resource_provider(client,
resource_group_name,
resource_provider_name,
tags=None):
return client.update(resource_group_name=resource_group_name, resource_provider_name=resource_provider_name, tags=tags)
tags = {'tags': tags}
return client.update(resource_group_name=resource_group_name, resource_provider_name=resource_provider_name, patchable_resource=tags)


def delete_custom_providers_custom_resource_provider(client,
resource_group_name,
resource_provider_name,
no_wait=False):
return sdk_no_wait(no_wait, client.delete, resource_group_name=resource_group_name, resource_provider_name=resource_provider_name)
return sdk_no_wait(no_wait, client.begin_delete, resource_group_name=resource_group_name, resource_provider_name=resource_provider_name)


def get_custom_providers_custom_resource_provider(client,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------

from ._configuration import CustomProvidersClientConfiguration
from ._custom_providers_client import CustomProvidersClient
__all__ = ['CustomProvidersClient', 'CustomProvidersClientConfiguration']

from .version import VERSION
from ._customproviders import Customproviders
from ._version import VERSION

__version__ = VERSION
__all__ = ['Customproviders']

try:
from ._patch import patch_sdk # type: ignore
patch_sdk()
except ImportError:
pass
Original file line number Diff line number Diff line change
@@ -1,49 +1,71 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from msrestazure import AzureConfiguration

from .version import VERSION
from typing import TYPE_CHECKING

from azure.core.configuration import Configuration
from azure.core.pipeline import policies
from azure.mgmt.core.policies import ARMHttpLoggingPolicy

from ._version import VERSION

if TYPE_CHECKING:
# pylint: disable=unused-import,ungrouped-imports
from typing import Any

from azure.core.credentials import TokenCredential


class CustomprovidersConfiguration(Configuration):
"""Configuration for Customproviders.
class CustomProvidersClientConfiguration(AzureConfiguration):
"""Configuration for CustomProvidersClient
Note that all parameters used to create this instance are saved as instance
attributes.
:param credentials: Credentials needed for the client to connect to Azure.
:type credentials: :mod:`A msrestazure Credentials
object<msrestazure.azure_active_directory>`
:param subscription_id: The Azure subscription ID. This is a
GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)
:param credential: Credential needed for the client to connect to Azure.
:type credential: ~azure.core.credentials.TokenCredential
:param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).
:type subscription_id: str
:param str base_url: Service URL
"""

def __init__(
self, credentials, subscription_id, base_url=None):

if credentials is None:
raise ValueError("Parameter 'credentials' must not be None.")
self,
credential, # type: "TokenCredential"
subscription_id, # type: str
**kwargs # type: Any
):
# type: (...) -> None
if credential is None:
raise ValueError("Parameter 'credential' must not be None.")
if subscription_id is None:
raise ValueError("Parameter 'subscription_id' must not be None.")
if not base_url:
base_url = 'https://management.azure.com'

super(CustomProvidersClientConfiguration, self).__init__(base_url)

# Starting Autorest.Python 4.0.64, make connection pool activated by default
self.keep_alive = True
super(CustomprovidersConfiguration, self).__init__(**kwargs)

self.add_user_agent('azure-mgmt-customproviders/{}'.format(VERSION))
self.add_user_agent('Azure-SDK-For-Python')

self.credentials = credentials
self.credential = credential
self.subscription_id = subscription_id
self.api_version = "2018-09-01-preview"
self.credential_scopes = kwargs.pop('credential_scopes', ['https://management.azure.com/.default'])
kwargs.setdefault('sdk_moniker', 'mgmt-customproviders/{}'.format(VERSION))
self._configure(**kwargs)

def _configure(
self,
**kwargs # type: Any
):
# type: (...) -> None
self.user_agent_policy = kwargs.get('user_agent_policy') or policies.UserAgentPolicy(**kwargs)
self.headers_policy = kwargs.get('headers_policy') or policies.HeadersPolicy(**kwargs)
self.proxy_policy = kwargs.get('proxy_policy') or policies.ProxyPolicy(**kwargs)
self.logging_policy = kwargs.get('logging_policy') or policies.NetworkTraceLoggingPolicy(**kwargs)
self.http_logging_policy = kwargs.get('http_logging_policy') or ARMHttpLoggingPolicy(**kwargs)
self.retry_policy = kwargs.get('retry_policy') or policies.RetryPolicy(**kwargs)
self.custom_hook_policy = kwargs.get('custom_hook_policy') or policies.CustomHookPolicy(**kwargs)
self.redirect_policy = kwargs.get('redirect_policy') or policies.RedirectPolicy(**kwargs)
self.authentication_policy = kwargs.get('authentication_policy')
if self.credential and not self.authentication_policy:
self.authentication_policy = policies.BearerTokenCredentialPolicy(self.credential, *self.credential_scopes, **kwargs)

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------

from typing import TYPE_CHECKING

from azure.mgmt.core import ARMPipelineClient
from msrest import Deserializer, Serializer

if TYPE_CHECKING:
# pylint: disable=unused-import,ungrouped-imports
from typing import Any, Optional

from azure.core.credentials import TokenCredential

from ._configuration import CustomprovidersConfiguration
from .operations import Operations
from .operations import CustomResourceProviderOperations
from .operations import AssociationsOperations
from . import models


class Customproviders(object):
"""Allows extension of ARM control plane with custom resource providers.
:ivar operations: Operations operations
:vartype operations: azure.mgmt.customproviders.operations.Operations
:ivar custom_resource_provider: CustomResourceProviderOperations operations
:vartype custom_resource_provider: azure.mgmt.customproviders.operations.CustomResourceProviderOperations
:ivar associations: AssociationsOperations operations
:vartype associations: azure.mgmt.customproviders.operations.AssociationsOperations
:param credential: Credential needed for the client to connect to Azure.
:type credential: ~azure.core.credentials.TokenCredential
:param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).
:type subscription_id: str
:param str base_url: Service URL
:keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present.
"""

def __init__(
self,
credential, # type: "TokenCredential"
subscription_id, # type: str
base_url=None, # type: Optional[str]
**kwargs # type: Any
):
# type: (...) -> None
if not base_url:
base_url = 'https://management.azure.com'
self._config = CustomprovidersConfiguration(credential, subscription_id, **kwargs)
self._client = ARMPipelineClient(base_url=base_url, config=self._config, **kwargs)

client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)}
self._serialize = Serializer(client_models)
self._serialize.client_side_validation = False
self._deserialize = Deserializer(client_models)

self.operations = Operations(
self._client, self._config, self._serialize, self._deserialize)
self.custom_resource_provider = CustomResourceProviderOperations(
self._client, self._config, self._serialize, self._deserialize)
self.associations = AssociationsOperations(
self._client, self._config, self._serialize, self._deserialize)

def close(self):
# type: () -> None
self._client.close()

def __enter__(self):
# type: () -> Customproviders
self._client.__enter__()
return self

def __exit__(self, *exc_details):
# type: (Any) -> None
self._client.__exit__(*exc_details)
Loading

0 comments on commit 1f29b7c

Please sign in to comment.