From d0cd532bf23e8dbce8268a2a30e08f64f9093069 Mon Sep 17 00:00:00 2001 From: Simone Spinelli <simone.spinelli@geant.org> Date: Thu, 11 May 2023 13:51:18 +0000 Subject: [PATCH] Some tox related stuff --- gso/products/product_blocks/iptrunk.py | 6 ++++-- gso/workflows/device/create_device.py | 9 +++++---- gso/workflows/iptrunk/create_iptrunk.py | 19 ++++++++++--------- 3 files changed, 19 insertions(+), 15 deletions(-) diff --git a/gso/products/product_blocks/iptrunk.py b/gso/products/product_blocks/iptrunk.py index 40c0016d..3ac520de 100644 --- a/gso/products/product_blocks/iptrunk.py +++ b/gso/products/product_blocks/iptrunk.py @@ -28,13 +28,15 @@ class IptrunkBlockInactive(ProductBlockModel, iptrunk_sideA_ae_iface: Optional[str] = None iptrunk_sideA_ae_geant_a_sid: Optional[str] = None iptrunk_sideA_ae_members: list[str] = Field(default_factory=list) - iptrunk_sideA_ae_members_description: list[str] = Field(default_factory=list) + iptrunk_sideA_ae_members_description: list[str] \ + = Field(default_factory=list) # iptrunk_sideB_node: DeviceBlockInactive iptrunk_sideB_ae_iface: Optional[str] = None iptrunk_sideB_ae_geant_a_sid: Optional[str] = None iptrunk_sideB_ae_members: list[str] = Field(default_factory=list) - iptrunk_sideB_ae_members_description: list[str] = Field(default_factory=list) + iptrunk_sideB_ae_members_description: list[str] \ + = Field(default_factory=list) class IptrunkBlockProvisioning(IptrunkBlockInactive, diff --git a/gso/workflows/device/create_device.py b/gso/workflows/device/create_device.py index 86a17d45..40a03c90 100644 --- a/gso/workflows/device/create_device.py +++ b/gso/workflows/device/create_device.py @@ -26,13 +26,13 @@ def site_selector() -> list: site_subscriptions = {} for site_id, site_description in ( SubscriptionTable.query.join(ProductTable) - .filter( + .filter( ProductTable.product_type == "Site", SubscriptionTable.status == "active", ) - .with_entities(SubscriptionTable.subscription_id, - SubscriptionTable.description) - .all() + .with_entities(SubscriptionTable.subscription_id, + SubscriptionTable.description) + .all() ): site_subscriptions[str(site_id)] = site_description @@ -142,6 +142,7 @@ def provision_device_real(subscription: DeviceProvisioning, return {'subscription': subscription} + @workflow( 'Create device', initial_input_form=wrap_create_initial_input_form( diff --git a/gso/workflows/iptrunk/create_iptrunk.py b/gso/workflows/iptrunk/create_iptrunk.py index 2b485a9b..4cfe1c39 100644 --- a/gso/workflows/iptrunk/create_iptrunk.py +++ b/gso/workflows/iptrunk/create_iptrunk.py @@ -22,7 +22,6 @@ from orchestrator.forms.validators import Choice, choice_list from orchestrator.utils.json import json_dumps - def device_selector(choice_value: str) -> list: device_subscriptions = {} for device_id, device_description in ( @@ -93,8 +92,10 @@ def create_subscription(product: UUIDstr) -> State: @step("Get information from IPAM ") def get_info_from_ipam(subscription: iptrunk.IptrunkInactive) -> State: # TODO: get info about how these should be generated - subscription.iptrunk.iptrunk_ipv4_network = ipaddress.ip_network('192.168.255.0/31') - subscription.iptrunk.iptrunk_ipv6_network = ipaddress.ip_network('fc00:798:255::150/126') + subscription.iptrunk.iptrunk_ipv4_network \ + = ipaddress.ip_network('192.168.255.0/31') + subscription.iptrunk.iptrunk_ipv6_network \ + = ipaddress.ip_network('fc00:798:255::150/126') return {"subscription": subscription} @@ -156,14 +157,14 @@ def provision_iptrunk_dry( subscription: iptrunk.IptrunkProvisioning, ) -> State: import ansible_runner - + r = ansible_runner.run( private_data_dir="/opt/geant-gap-ansible", - playbook="iptrunks.yaml", - inventory= str(subscription.iptrunk.iptrunk_sideA_node.device_fqdn +"\n"+ - subscription.iptrunk.iptrunk_sideB_node.device_fqdn+"\n"), - extravars={ - "verb": "compile", + playbook = "iptrunks.yaml", + inventory = str(subscription.iptrunk.iptrunk_sideA_node.device_fqdn +"\n"+ + subscription.iptrunk.iptrunk_sideB_node.device_fqdn+"\n"), + extravars = { + "verb": "deploy", "wfo_trunk_json":json_dumps(subscription), "config_object":"trunk_interface", }, -- GitLab