Skip to content
Closed
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
13 changes: 13 additions & 0 deletions azure-mgmt-network/azure/mgmt/network/network_management_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -1516,6 +1516,19 @@ def public_ip_addresses(self):
raise NotImplementedError("APIVersion {} is not available".format(api_version))
return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)))

@property
def public_ip_prefixes(self):
"""Instance depends on the API version:

* 2018-07-01: :class:`PublicIPPrefixesOperations<azure.mgmt.network.v2018_07_01.operations.PublicIPPrefixesOperations>`
"""
api_version = self._get_api_version('public_ip_prefixes')
if api_version == '2018-07-01':
from .v2018_07_01.operations import PublicIPPrefixesOperations as OperationClass
else:
raise NotImplementedError("APIVersion {} is not available".format(api_version))
return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)))

@property
def route_filter_rules(self):
"""Instance depends on the API version:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@
from .public_ip_address_sku_py3 import PublicIPAddressSku
from .public_ip_address_dns_settings_py3 import PublicIPAddressDnsSettings
from .ip_tag_py3 import IpTag
from .public_ip_prefix_sku_py3 import PublicIPPrefixSku
from .referenced_public_ip_address_py3 import ReferencedPublicIpAddress
from .public_ip_prefix_py3 import PublicIPPrefix
from .public_ip_address_py3 import PublicIPAddress
from .ip_configuration_py3 import IPConfiguration
from .resource_navigation_link_py3 import ResourceNavigationLink
Expand Down Expand Up @@ -248,6 +251,9 @@
from .public_ip_address_sku import PublicIPAddressSku
from .public_ip_address_dns_settings import PublicIPAddressDnsSettings
from .ip_tag import IpTag
from .public_ip_prefix_sku import PublicIPPrefixSku
from .referenced_public_ip_address import ReferencedPublicIpAddress
from .public_ip_prefix import PublicIPPrefix
from .public_ip_address import PublicIPAddress
from .ip_configuration import IPConfiguration
from .resource_navigation_link import ResourceNavigationLink
Expand Down Expand Up @@ -466,6 +472,7 @@
from .connection_monitor_result_paged import ConnectionMonitorResultPaged
from .operation_paged import OperationPaged
from .public_ip_address_paged import PublicIPAddressPaged
from .public_ip_prefix_paged import PublicIPPrefixPaged
from .route_filter_paged import RouteFilterPaged
from .route_filter_rule_paged import RouteFilterRulePaged
from .route_table_paged import RouteTablePaged
Expand Down Expand Up @@ -499,6 +506,7 @@
SecurityRuleDirection,
RouteNextHopType,
PublicIPAddressSkuName,
PublicIPPrefixSkuName,
ApplicationGatewayProtocol,
ApplicationGatewayCookieBasedAffinity,
ApplicationGatewayBackendHealthServerHealth,
Expand Down Expand Up @@ -591,6 +599,9 @@
'PublicIPAddressSku',
'PublicIPAddressDnsSettings',
'IpTag',
'PublicIPPrefixSku',
'ReferencedPublicIpAddress',
'PublicIPPrefix',
'PublicIPAddress',
'IPConfiguration',
'ResourceNavigationLink',
Expand Down Expand Up @@ -809,6 +820,7 @@
'ConnectionMonitorResultPaged',
'OperationPaged',
'PublicIPAddressPaged',
'PublicIPPrefixPaged',
'RouteFilterPaged',
'RouteFilterRulePaged',
'RouteTablePaged',
Expand Down Expand Up @@ -841,6 +853,7 @@
'SecurityRuleDirection',
'RouteNextHopType',
'PublicIPAddressSkuName',
'PublicIPPrefixSkuName',
'ApplicationGatewayProtocol',
'ApplicationGatewayCookieBasedAffinity',
'ApplicationGatewayBackendHealthServerHealth',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@


class IpTag(Model):
"""Contains the IpTag associated with the public IP address.
"""Contains the IpTag associated with the object.

:param ip_tag_type: Gets or sets the ipTag type: Example FirstPartyUsage.
:type ip_tag_type: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@


class IpTag(Model):
"""Contains the IpTag associated with the public IP address.
"""Contains the IpTag associated with the object.

:param ip_tag_type: Gets or sets the ipTag type: Example FirstPartyUsage.
:type ip_tag_type: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,11 @@ class PublicIPAddressSkuName(str, Enum):
standard = "Standard"


class PublicIPPrefixSkuName(str, Enum):

standard = "Standard"


class ApplicationGatewayProtocol(str, Enum):

http = "Http"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,10 @@ class PublicIPAddress(Resource):
:param ip_address: The IP address associated with the public IP address
resource.
:type ip_address: str
:param public_ip_prefix: The Public IP Prefix this Public IP Address
should be allocated from.
:type public_ip_prefix:
~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix
:param idle_timeout_in_minutes: The idle timeout of the public IP address.
:type idle_timeout_in_minutes: int
:param resource_guid: The resource GUID property of the public IP
Expand Down Expand Up @@ -87,6 +91,7 @@ class PublicIPAddress(Resource):
'dns_settings': {'key': 'properties.dnsSettings', 'type': 'PublicIPAddressDnsSettings'},
'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'},
'ip_address': {'key': 'properties.ipAddress', 'type': 'str'},
'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'PublicIPPrefix'},
'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'},
'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'},
'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'},
Expand All @@ -103,6 +108,7 @@ def __init__(self, **kwargs):
self.dns_settings = kwargs.get('dns_settings', None)
self.ip_tags = kwargs.get('ip_tags', None)
self.ip_address = kwargs.get('ip_address', None)
self.public_ip_prefix = kwargs.get('public_ip_prefix', None)
self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None)
self.resource_guid = kwargs.get('resource_guid', None)
self.provisioning_state = kwargs.get('provisioning_state', None)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,10 @@ class PublicIPAddress(Resource):
:param ip_address: The IP address associated with the public IP address
resource.
:type ip_address: str
:param public_ip_prefix: The Public IP Prefix this Public IP Address
should be allocated from.
:type public_ip_prefix:
~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix
:param idle_timeout_in_minutes: The idle timeout of the public IP address.
:type idle_timeout_in_minutes: int
:param resource_guid: The resource GUID property of the public IP
Expand Down Expand Up @@ -87,14 +91,15 @@ class PublicIPAddress(Resource):
'dns_settings': {'key': 'properties.dnsSettings', 'type': 'PublicIPAddressDnsSettings'},
'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'},
'ip_address': {'key': 'properties.ipAddress', 'type': 'str'},
'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'PublicIPPrefix'},
'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'},
'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'},
'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'},
'etag': {'key': 'etag', 'type': 'str'},
'zones': {'key': 'zones', 'type': '[str]'},
}

def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, public_ip_allocation_method=None, public_ip_address_version=None, dns_settings=None, ip_tags=None, ip_address: str=None, idle_timeout_in_minutes: int=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, zones=None, **kwargs) -> None:
def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, public_ip_allocation_method=None, public_ip_address_version=None, dns_settings=None, ip_tags=None, ip_address: str=None, public_ip_prefix=None, idle_timeout_in_minutes: int=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, zones=None, **kwargs) -> None:
super(PublicIPAddress, self).__init__(id=id, location=location, tags=tags, **kwargs)
self.sku = sku
self.public_ip_allocation_method = public_ip_allocation_method
Expand All @@ -103,6 +108,7 @@ def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, pub
self.dns_settings = dns_settings
self.ip_tags = ip_tags
self.ip_address = ip_address
self.public_ip_prefix = public_ip_prefix
self.idle_timeout_in_minutes = idle_timeout_in_minutes
self.resource_guid = resource_guid
self.provisioning_state = provisioning_state
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# 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 .resource import Resource


class PublicIPPrefix(Resource):
"""Public IP prefix resource.

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

:param id: Resource ID.
:type id: str
:ivar name: Resource name.
:vartype name: str
:ivar type: Resource type.
:vartype type: str
:param location: Resource location.
:type location: str
:param tags: Resource tags.
:type tags: dict[str, str]
:param sku: The public IP prefix SKU.
:type sku: ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefixSku
:param public_ip_address_version: The public IP address version. Possible
values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6'
:type public_ip_address_version: str or
~azure.mgmt.network.v2018_07_01.models.IPVersion
:param ip_tags: The list of tags associated with the public IP prefix.
:type ip_tags: list[~azure.mgmt.network.v2018_07_01.models.IpTag]
:param prefix_length: The Length of the Public IP Prefix.
:type prefix_length: int
:param ip_prefix: The allocated Prefix
:type ip_prefix: str
:param public_ip_addresses: The list of all referenced PublicIPAddresses
:type public_ip_addresses:
list[~azure.mgmt.network.v2018_07_01.models.ReferencedPublicIpAddress]
:param idle_timeout_in_minutes: The idle timeout of the public IP prefix.
:type idle_timeout_in_minutes: int
:param resource_guid: The resource GUID property of the public IP prefix
resource.
:type resource_guid: str
:param provisioning_state: The provisioning state of the Public IP prefix
resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.
:type provisioning_state: str
:param etag: A unique read-only string that changes whenever the resource
is updated.
:type etag: str
:param zones: A list of availability zones denoting the IP allocated for
the resource needs to come from.
:type zones: list[str]
"""

_validation = {
'name': {'readonly': True},
'type': {'readonly': True},
}

_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
'tags': {'key': 'tags', 'type': '{str}'},
'sku': {'key': 'sku', 'type': 'PublicIPPrefixSku'},
'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'},
'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'},
'prefix_length': {'key': 'properties.prefixLength', 'type': 'int'},
'ip_prefix': {'key': 'properties.ipPrefix', 'type': 'str'},
'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[ReferencedPublicIpAddress]'},
'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'},
'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'},
'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'},
'etag': {'key': 'etag', 'type': 'str'},
'zones': {'key': 'zones', 'type': '[str]'},
}

def __init__(self, **kwargs):
super(PublicIPPrefix, self).__init__(**kwargs)
self.sku = kwargs.get('sku', None)
self.public_ip_address_version = kwargs.get('public_ip_address_version', None)
self.ip_tags = kwargs.get('ip_tags', None)
self.prefix_length = kwargs.get('prefix_length', None)
self.ip_prefix = kwargs.get('ip_prefix', None)
self.public_ip_addresses = kwargs.get('public_ip_addresses', None)
self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None)
self.resource_guid = kwargs.get('resource_guid', None)
self.provisioning_state = kwargs.get('provisioning_state', None)
self.etag = kwargs.get('etag', None)
self.zones = kwargs.get('zones', None)
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# 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.paging import Paged


class PublicIPPrefixPaged(Paged):
"""
A paging container for iterating over a list of :class:`PublicIPPrefix <azure.mgmt.network.v2018_07_01.models.PublicIPPrefix>` object
"""

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

def __init__(self, *args, **kwargs):

super(PublicIPPrefixPaged, self).__init__(*args, **kwargs)
Loading