Skip to content
Snippets Groups Projects
Commit c8fb5efe authored by Simone Spinelli's avatar Simone Spinelli
Browse files

First set of attributes

parent bef64b8e
No related branches found
No related tags found
1 merge request!8Feature/iptrunks prototype
from typing import Optional
from orchestrator.domain.base import ProductBlockModel
from orchestrator.types import SubscriptionLifecycle
import ipaddress
# - id: GS-00012
# name: AMS2-LON-IPTRUNK-100G
# config:
# common:
# speed: '100'
# is_leased_line: false
# isis_metric: '9000'
# minimum_links: 1
# nodeA:
# name: rt2.ams.nl.geant.net
# ae_name: ae2
# ipv4_address: 62.40.98.164/31
# ipv6_address: 2001:798:cc::5/126
# members:
# - et-0/0/0
# port_id: GA-02036
# nodeB:
# name: mx1.lon.uk.geant.net
# ae_name: ae8
# ipv4_address: 62.40.98.165/31
# ipv6_address: 2001:798:cc::6/126
# members:
# - et-4/0/2
# port_id: GA-01834
class DeviceBlockInactive(ProductBlockModel,
lifecycle=[SubscriptionLifecycle.INITIAL],
product_block_name="DeviceBlock"):
geant_s_sid: Optional[str] = None
iptrunk_speed: Optional[str] = None
iptrunk_minimum_links: Optional[int] = None
iptrunk_ipv4_network: Optional[ipaddress.IPv4Network] = None
iptrunk_ipv6_network: Optional[ipaddress.IPv6Network] = None
#
iptrunk_sideA_fqdn: Optional[str] = None
iptrunk_sideA_ae_iface: Optional[str] = None
iptrunk_sideA_ae_geant_a_sid: Optional[str] = None
iptrunk_sideA_ae_members: Optional[list] = None
#
iptrunk_sideB_fqdn: Optional[str] = None
iptrunk_sideB_ae_iface: Optional[str] = None
iptrunk_sideB_ae_geant_a_sid: Optional[str] = None
iptrunk_sideB_ae_members: Optional[list] = None
class DeviceBlockProvisioning(DeviceBlockInactive,
lifecycle=[SubscriptionLifecycle.PROVISIONING]):
fqdn: str
ts_address: str
ts_port: str
lo_ipv4_address: Optional[ipaddress.IPv4Address] = None
lo_ipv6_address: Optional[ipaddress.IPv6Address] = None
lo_iso_address: Optional[str] = None
si_ipv4_network: Optional[ipaddress.IPv4Network] = None
ias_lt_ipv4_network: Optional[ipaddress.IPv4Network] = None
ias_lt_ipv6_network: Optional[ipaddress.IPv6Network] = None
site_city: Optional[str] = None
site_country: Optional[str] = None
site_country_code: Optional[str] = None
site_latitude: Optional[str] = None
site_longitude: Optional[str] = None
snmp_location: Optional[str] = None
class DeviceBlock(DeviceBlockProvisioning,
lifecycle=[SubscriptionLifecycle.ACTIVE]):
fqdn: str
ts_address: str
ts_port: str
lo_ipv4_address: ipaddress.IPv4Address
lo_ipv6_address: ipaddress.IPv6Address
lo_iso_address: str
si_ipv4_network: ipaddress.IPv4Network
ias_lt_ipv4_network: ipaddress.IPv4Network
ias_lt_ipv6_network: ipaddress.IPv6Network
site_city: str
site_country: str
site_country_code: str
site_latitude: str
site_longitude: str
snmp_location: str
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment