Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@
from msrest import Serializer, Deserializer
from msrestazure import AzureConfiguration
from .version import VERSION
from msrest.pipeline import ClientRawResponse
from msrestazure.azure_exceptions import CloudError
from msrest.polling import LROPoller, NoPolling
from msrestazure.polling.arm_polling import ARMPolling
import uuid
from .operations.container_groups_operations import ContainerGroupsOperations
from .operations.operations import Operations
from .operations.container_group_usage_operations import ContainerGroupUsageOperations
Expand Down Expand Up @@ -103,3 +108,126 @@ def __init__(
self._client, self.config, self._serialize, self._deserialize)
self.service_association_link = ServiceAssociationLinkOperations(
self._client, self.config, self._serialize, self._deserialize)

def list_cached_images(
self, location, custom_headers=None, raw=False, **operation_config):
"""Get the list of cached images.

Get the list of cached images on specific OS type for a subscription in
a region.

:param location: The identifier for the physical azure location.
:type location: str
:param dict custom_headers: headers that will be added to the request
:param bool raw: returns the direct response alongside the
deserialized response
:param operation_config: :ref:`Operation configuration
overrides<msrest:optionsforoperations>`.
:return: CachedImagesListResult or ClientRawResponse if raw=true
:rtype: ~azure.mgmt.containerinstance.models.CachedImagesListResult or
~msrest.pipeline.ClientRawResponse
:raises: :class:`CloudError<msrestazure.azure_exceptions.CloudError>`
"""
# Construct URL
url = self.list_cached_images.metadata['url']
path_format_arguments = {
'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'),
'location': self._serialize.url("location", location, '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 = {}
header_parameters['Accept'] = 'application/json'
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.get(url, query_parameters, header_parameters)
response = self._client.send(request, stream=False, **operation_config)

if response.status_code not in [200]:
exp = CloudError(response)
exp.request_id = response.headers.get('x-ms-request-id')
raise exp

deserialized = None

if response.status_code == 200:
deserialized = self._deserialize('CachedImagesListResult', response)

if raw:
client_raw_response = ClientRawResponse(deserialized, response)
return client_raw_response

return deserialized
list_cached_images.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/cachedImages'}

def list_capabilities(
self, location, custom_headers=None, raw=False, **operation_config):
"""Get the list of capabilities of the location.

Get the list of CPU/memory/GPU capabilities of a region.

:param location: The identifier for the physical azure location.
:type location: str
:param dict custom_headers: headers that will be added to the request
:param bool raw: returns the direct response alongside the
deserialized response
:param operation_config: :ref:`Operation configuration
overrides<msrest:optionsforoperations>`.
:return: CapabilitiesListResult or ClientRawResponse if raw=true
:rtype: ~azure.mgmt.containerinstance.models.CapabilitiesListResult or
~msrest.pipeline.ClientRawResponse
:raises: :class:`CloudError<msrestazure.azure_exceptions.CloudError>`
"""
# Construct URL
url = self.list_capabilities.metadata['url']
path_format_arguments = {
'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'),
'location': self._serialize.url("location", location, '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 = {}
header_parameters['Accept'] = 'application/json'
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.get(url, query_parameters, header_parameters)
response = self._client.send(request, stream=False, **operation_config)

if response.status_code not in [200]:
exp = CloudError(response)
exp.request_id = response.headers.get('x-ms-request-id')
raise exp

deserialized = None

if response.status_code == 200:
deserialized = self._deserialize('CapabilitiesListResult', response)

if raw:
client_raw_response = ClientRawResponse(deserialized, response)
return client_raw_response

return deserialized
list_capabilities.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/capabilities'}
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,11 @@
from .container_exec_request_py3 import ContainerExecRequest
from .container_exec_response_py3 import ContainerExecResponse
from .resource_py3 import Resource
from .cached_images_py3 import CachedImages
from .cached_images_list_result_py3 import CachedImagesListResult
from .capabilities_capabilities_py3 import CapabilitiesCapabilities
from .capabilities_py3 import Capabilities
from .capabilities_list_result_py3 import CapabilitiesListResult
except (SyntaxError, ImportError):
from .container_port import ContainerPort
from .environment_variable import EnvironmentVariable
Expand Down Expand Up @@ -89,6 +94,11 @@
from .container_exec_request import ContainerExecRequest
from .container_exec_response import ContainerExecResponse
from .resource import Resource
from .cached_images import CachedImages
from .cached_images_list_result import CachedImagesListResult
from .capabilities_capabilities import CapabilitiesCapabilities
from .capabilities import Capabilities
from .capabilities_list_result import CapabilitiesListResult
from .container_group_paged import ContainerGroupPaged
from .container_instance_management_client_enums import (
ContainerNetworkProtocol,
Expand Down Expand Up @@ -142,6 +152,11 @@
'ContainerExecRequest',
'ContainerExecResponse',
'Resource',
'CachedImages',
'CachedImagesListResult',
'CapabilitiesCapabilities',
'Capabilities',
'CapabilitiesListResult',
'ContainerGroupPaged',
'ContainerNetworkProtocol',
'GpuSku',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# 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 msrest.serialization import Model


class CachedImages(Model):
"""The cached image and OS type.

All required parameters must be populated in order to send to Azure.

:param id: The resource Id of the cached image.
:type id: str
:param os_type: Required. The OS type of the cached image.
:type os_type: str
:param image: Required. The cached image name.
:type image: str
"""

_validation = {
'os_type': {'required': True},
'image': {'required': True},
}

_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'os_type': {'key': 'osType', 'type': 'str'},
'image': {'key': 'image', 'type': 'str'},
}

def __init__(self, **kwargs):
super(CachedImages, self).__init__(**kwargs)
self.id = kwargs.get('id', None)
self.os_type = kwargs.get('os_type', None)
self.image = kwargs.get('image', None)
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# 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 msrest.serialization import Model


class CachedImagesListResult(Model):
"""The response containing cached images.

:param value: The list of cached images.
:type value: list[~azure.mgmt.containerinstance.models.CachedImages]
:param next_link: The URI to fetch the next page of cached images.
:type next_link: str
"""

_attribute_map = {
'value': {'key': 'value', 'type': '[CachedImages]'},
'next_link': {'key': 'nextLink', 'type': 'str'},
}

def __init__(self, **kwargs):
super(CachedImagesListResult, self).__init__(**kwargs)
self.value = kwargs.get('value', None)
self.next_link = kwargs.get('next_link', None)
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# 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 msrest.serialization import Model


class CachedImagesListResult(Model):
"""The response containing cached images.

:param value: The list of cached images.
:type value: list[~azure.mgmt.containerinstance.models.CachedImages]
:param next_link: The URI to fetch the next page of cached images.
:type next_link: str
"""

_attribute_map = {
'value': {'key': 'value', 'type': '[CachedImages]'},
'next_link': {'key': 'nextLink', 'type': 'str'},
}

def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None:
super(CachedImagesListResult, self).__init__(**kwargs)
self.value = value
self.next_link = next_link
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# 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 msrest.serialization import Model


class CachedImages(Model):
"""The cached image and OS type.

All required parameters must be populated in order to send to Azure.

:param id: The resource Id of the cached image.
:type id: str
:param os_type: Required. The OS type of the cached image.
:type os_type: str
:param image: Required. The cached image name.
:type image: str
"""

_validation = {
'os_type': {'required': True},
'image': {'required': True},
}

_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'os_type': {'key': 'osType', 'type': 'str'},
'image': {'key': 'image', 'type': 'str'},
}

def __init__(self, *, os_type: str, image: str, id: str=None, **kwargs) -> None:
super(CachedImages, self).__init__(**kwargs)
self.id = id
self.os_type = os_type
self.image = image
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# 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 msrest.serialization import Model


class Capabilities(Model):
"""The regional capabilities.

Variables are only populated by the server, and will be ignored when
sending a request.

:ivar resource_type: The resource type that this capability describes.
:vartype resource_type: str
:ivar os_type: The OS type that this capability describes.
:vartype os_type: str
:ivar location: The resource location.
:vartype location: str
:ivar ip_address_type: The ip address type that this capability describes.
:vartype ip_address_type: str
:ivar gpu: The GPU sku that this capability describes.
:vartype gpu: str
:ivar capabilities: The supported capabilities.
:vartype capabilities:
~azure.mgmt.containerinstance.models.CapabilitiesCapabilities
"""

_validation = {
'resource_type': {'readonly': True},
'os_type': {'readonly': True},
'location': {'readonly': True},
'ip_address_type': {'readonly': True},
'gpu': {'readonly': True},
'capabilities': {'readonly': True},
}

_attribute_map = {
'resource_type': {'key': 'resourceType', 'type': 'str'},
'os_type': {'key': 'osType', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
'ip_address_type': {'key': 'ipAddressType', 'type': 'str'},
'gpu': {'key': 'gpu', 'type': 'str'},
'capabilities': {'key': 'capabilities', 'type': 'CapabilitiesCapabilities'},
}

def __init__(self, **kwargs):
super(Capabilities, self).__init__(**kwargs)
self.resource_type = None
self.os_type = None
self.location = None
self.ip_address_type = None
self.gpu = None
self.capabilities = None
Loading