From e132023feed2deeb89301dd9cffcb533dfa97886 Mon Sep 17 00:00:00 2001 From: Karel van Klink <karel.vanklink@geant.org> Date: Tue, 11 Mar 2025 14:08:47 +0100 Subject: [PATCH] Update deprecated import statements --- gso/cli/imports.py | 3 ++- gso/products/product_blocks/edge_port.py | 3 ++- gso/products/product_blocks/iptrunk.py | 3 ++- gso/products/product_blocks/router.py | 3 ++- gso/products/product_blocks/site.py | 3 ++- gso/services/lso_client.py | 3 +-- gso/services/netbox_client.py | 2 +- gso/services/processes.py | 2 +- gso/services/subscriptions.py | 3 ++- gso/settings.py | 3 +-- gso/utils/types/netbox_router.py | 2 +- gso/utils/workflow_steps.py | 3 +-- gso/workflows/edge_port/create_edge_port.py | 3 ++- gso/workflows/edge_port/create_imported_edge_port.py | 4 ++-- gso/workflows/edge_port/import_edge_port.py | 2 +- gso/workflows/edge_port/migrate_edge_port.py | 2 +- gso/workflows/edge_port/validate_edge_port.py | 2 +- gso/workflows/iptrunk/activate_iptrunk.py | 3 ++- gso/workflows/iptrunk/create_imported_iptrunk.py | 3 ++- gso/workflows/iptrunk/create_iptrunk.py | 3 ++- gso/workflows/iptrunk/deploy_twamp.py | 2 +- gso/workflows/iptrunk/import_iptrunk.py | 2 +- gso/workflows/iptrunk/migrate_iptrunk.py | 2 +- gso/workflows/iptrunk/modify_isis_metric.py | 2 +- gso/workflows/iptrunk/modify_trunk_interface.py | 2 +- gso/workflows/iptrunk/terminate_iptrunk.py | 3 ++- gso/workflows/l2_circuit/create_imported_layer_2_circuit.py | 4 ++-- gso/workflows/l2_circuit/import_layer_2_circuit.py | 2 +- gso/workflows/l2_circuit/modify_layer_2_circuit.py | 2 +- gso/workflows/l2_circuit/terminate_layer_2_circuit.py | 4 ++-- .../l3_core_service/create_imported_l3_core_service.py | 4 ++-- gso/workflows/l3_core_service/create_l3_core_service.py | 3 ++- gso/workflows/l3_core_service/import_l3_core_service.py | 2 +- gso/workflows/l3_core_service/modify_l3_core_service.py | 3 +-- gso/workflows/l3_core_service/terminate_l3_core_service.py | 4 ++-- .../create_imported_lan_switch_interconnect.py | 3 ++- .../lan_switch_interconnect/create_lan_switch_interconnect.py | 3 ++- .../lan_switch_interconnect/import_lan_switch_interconnect.py | 2 +- .../terminate_lan_switch_interconnect.py | 4 ++-- gso/workflows/office_router/create_imported_office_router.py | 3 ++- gso/workflows/office_router/import_office_router.py | 2 +- gso/workflows/opengear/create_imported_opengear.py | 3 ++- gso/workflows/opengear/import_opengear.py | 2 +- gso/workflows/router/activate_router.py | 3 ++- gso/workflows/router/create_imported_router.py | 3 ++- gso/workflows/router/create_router.py | 3 ++- gso/workflows/router/import_router.py | 2 +- gso/workflows/router/modify_connection_strategy.py | 2 +- gso/workflows/router/modify_kentik_license.py | 2 +- gso/workflows/router/promote_p_to_pe.py | 2 +- gso/workflows/router/redeploy_base_config.py | 2 +- gso/workflows/router/terminate_router.py | 3 ++- gso/workflows/router/update_ibgp_mesh.py | 3 ++- gso/workflows/router/validate_router.py | 2 +- gso/workflows/site/create_imported_site.py | 3 ++- gso/workflows/site/create_site.py | 3 ++- gso/workflows/site/import_site.py | 2 +- gso/workflows/site/modify_site.py | 3 ++- gso/workflows/site/terminate_site.py | 3 ++- .../super_pop_switch/create_imported_super_pop_switch.py | 3 ++- gso/workflows/super_pop_switch/import_super_pop_switch.py | 2 +- gso/workflows/switch/activate_switch.py | 3 ++- gso/workflows/switch/create_imported_switch.py | 3 ++- gso/workflows/switch/create_switch.py | 3 ++- gso/workflows/switch/import_switch.py | 2 +- gso/workflows/switch/terminate_switch.py | 4 ++-- gso/workflows/tasks/create_partners.py | 2 +- gso/workflows/tasks/delete_partners.py | 2 +- gso/workflows/tasks/modify_partners.py | 2 +- gso/workflows/tasks/send_email_notifications.py | 2 +- gso/workflows/vrf/create_vrf.py | 3 ++- gso/workflows/vrf/modify_vrf_router_list.py | 2 +- gso/workflows/vrf/terminate_vrf.py | 3 ++- test/conftest.py | 3 ++- test/fixtures.py | 3 +-- test/fixtures/lan_switch_interconnect_fixtures.py | 3 ++- test/workflows/__init__.py | 2 +- 77 files changed, 117 insertions(+), 89 deletions(-) diff --git a/gso/cli/imports.py b/gso/cli/imports.py index 6444aba89..85db5b756 100644 --- a/gso/cli/imports.py +++ b/gso/cli/imports.py @@ -12,8 +12,9 @@ import typer import yaml from orchestrator.db import db from orchestrator.services.processes import start_process -from orchestrator.types import SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from pydantic import BaseModel, NonNegativeInt, ValidationError, field_validator, model_validator +from pydantic_forms.types import UUIDstr from sqlalchemy.exc import SQLAlchemyError from gso.db.models import PartnerTable diff --git a/gso/products/product_blocks/edge_port.py b/gso/products/product_blocks/edge_port.py index 1603f5a39..7fa1b5c70 100644 --- a/gso/products/product_blocks/edge_port.py +++ b/gso/products/product_blocks/edge_port.py @@ -5,7 +5,8 @@ different technological domain, still managed by GÉANT. In other words, an Edge """ from orchestrator.domain.base import ProductBlockModel -from orchestrator.types import SubscriptionLifecycle, strEnum +from orchestrator.types import SubscriptionLifecycle +from pydantic_forms.types import strEnum from gso.products.product_blocks.router import RouterBlock, RouterBlockInactive, RouterBlockProvisioning from gso.utils.types.interfaces import LAGMemberList, PhysicalPortCapacity diff --git a/gso/products/product_blocks/iptrunk.py b/gso/products/product_blocks/iptrunk.py index 1f67f312a..698800d9c 100644 --- a/gso/products/product_blocks/iptrunk.py +++ b/gso/products/product_blocks/iptrunk.py @@ -5,8 +5,9 @@ from typing import Annotated from annotated_types import Len from orchestrator.domain.base import ProductBlockModel, T -from orchestrator.types import SubscriptionLifecycle, strEnum +from orchestrator.types import SubscriptionLifecycle from pydantic import AfterValidator +from pydantic_forms.types import strEnum from pydantic_forms.validators import validate_unique_list from typing_extensions import Doc diff --git a/gso/products/product_blocks/router.py b/gso/products/product_blocks/router.py index de428138a..b45082225 100644 --- a/gso/products/product_blocks/router.py +++ b/gso/products/product_blocks/router.py @@ -1,7 +1,8 @@ """Product block for `Router` products.""" from orchestrator.domain.base import ProductBlockModel -from orchestrator.types import SubscriptionLifecycle, strEnum +from orchestrator.types import SubscriptionLifecycle +from pydantic_forms.types import strEnum from gso.products.product_blocks.site import ( SiteBlock, diff --git a/gso/products/product_blocks/site.py b/gso/products/product_blocks/site.py index 22cc49400..52db8df31 100644 --- a/gso/products/product_blocks/site.py +++ b/gso/products/product_blocks/site.py @@ -1,7 +1,8 @@ """The product block that describes a site subscription.""" from orchestrator.domain.base import ProductBlockModel -from orchestrator.types import SubscriptionLifecycle, strEnum +from orchestrator.types import SubscriptionLifecycle +from pydantic_forms.types import strEnum from gso.utils.types.coordinates import LatitudeCoordinate, LongitudeCoordinate from gso.utils.types.ip_address import IPAddress diff --git a/gso/services/lso_client.py b/gso/services/lso_client.py index e6268e5c4..2318cffd7 100644 --- a/gso/services/lso_client.py +++ b/gso/services/lso_client.py @@ -11,11 +11,10 @@ import requests from orchestrator import step from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage -from orchestrator.types import State from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import Step, StepList, begin, callback_step, conditional, inputstep from pydantic import ConfigDict -from pydantic_forms.types import FormGenerator +from pydantic_forms.types import FormGenerator, State from pydantic_forms.validators import Label, LongText, ReadOnlyField from unidecode import unidecode diff --git a/gso/services/netbox_client.py b/gso/services/netbox_client.py index 2928263c9..7ff8e29c2 100644 --- a/gso/services/netbox_client.py +++ b/gso/services/netbox_client.py @@ -5,7 +5,7 @@ from uuid import UUID import pydantic import pynetbox -from orchestrator.types import UUIDstr +from pydantic_forms.types import UUIDstr from pynetbox.models.dcim import Devices, DeviceTypes, Interfaces from gso.products.product_types.router import Router diff --git a/gso/services/processes.py b/gso/services/processes.py index 3e1b47e29..5d6f5105d 100644 --- a/gso/services/processes.py +++ b/gso/services/processes.py @@ -5,8 +5,8 @@ or inconsistent when not careful. These methods are related to operations regard """ from orchestrator.db import ProcessTable, WorkflowTable, db -from orchestrator.types import UUIDstr from orchestrator.workflow import ProcessStatus +from pydantic_forms.types import UUIDstr from sqlalchemy import ScalarResult, or_, select from sqlalchemy.orm import Query diff --git a/gso/services/subscriptions.py b/gso/services/subscriptions.py index 543fae4a1..9f3623b72 100644 --- a/gso/services/subscriptions.py +++ b/gso/services/subscriptions.py @@ -18,7 +18,8 @@ from orchestrator.db import ( ) from orchestrator.domain import SubscriptionModel from orchestrator.services.subscriptions import query_in_use_by_subscriptions -from orchestrator.types import SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle +from pydantic_forms.types import UUIDstr from sqlalchemy import and_, text from sqlalchemy.exc import SQLAlchemyError diff --git a/gso/settings.py b/gso/settings.py index e7326dbbc..fbd428641 100644 --- a/gso/settings.py +++ b/gso/settings.py @@ -10,9 +10,8 @@ import logging import os from pathlib import Path -from orchestrator.types import UUIDstr from pydantic import EmailStr -from pydantic_forms.types import strEnum +from pydantic_forms.types import UUIDstr, strEnum from pydantic_settings import BaseSettings from gso.utils.types.ip_address import IPv4Netmask, IPv6Netmask, PortNumber diff --git a/gso/utils/types/netbox_router.py b/gso/utils/types/netbox_router.py index c184c09be..a0f50a698 100644 --- a/gso/utils/types/netbox_router.py +++ b/gso/utils/types/netbox_router.py @@ -2,8 +2,8 @@ from typing import Annotated, TypeVar -from orchestrator.types import UUIDstr from pydantic import AfterValidator +from pydantic_forms.types import UUIDstr from gso.products.product_types.router import Router from gso.services.netbox_client import NetboxClient diff --git a/gso/utils/workflow_steps.py b/gso/utils/workflow_steps.py index 754af0819..6c90f051c 100644 --- a/gso/utils/workflow_steps.py +++ b/gso/utils/workflow_steps.py @@ -6,12 +6,11 @@ from typing import Any from orchestrator import inputstep, step from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage -from orchestrator.types import State, UUIDstr from orchestrator.utils.errors import ProcessFailureError from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, conditional from pydantic import ConfigDict -from pydantic_forms.types import FormGenerator +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import Label from gso.products.product_blocks.router import RouterRole diff --git a/gso/workflows/edge_port/create_edge_port.py b/gso/workflows/edge_port/create_edge_port.py index 7526ad69d..6686e2669 100644 --- a/gso/workflows/edge_port/create_edge_port.py +++ b/gso/workflows/edge_port/create_edge_port.py @@ -7,12 +7,13 @@ from annotated_types import Len from orchestrator import step, workflow from orchestrator.forms import FormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, begin, done from orchestrator.workflows.steps import resync, set_status, store_process_subscription from orchestrator.workflows.utils import wrap_create_initial_input_form from pydantic import AfterValidator, ConfigDict, model_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import validate_unique_list from pynetbox.models.dcim import Interfaces diff --git a/gso/workflows/edge_port/create_imported_edge_port.py b/gso/workflows/edge_port/create_imported_edge_port.py index ef5d2d033..6a0067275 100644 --- a/gso/workflows/edge_port/create_imported_edge_port.py +++ b/gso/workflows/edge_port/create_imported_edge_port.py @@ -6,11 +6,11 @@ from uuid import uuid4 from orchestrator import workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import AfterValidator, ConfigDict -from pydantic_forms.types import UUIDstr +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import validate_unique_list from gso.products import ProductName diff --git a/gso/workflows/edge_port/import_edge_port.py b/gso/workflows/edge_port/import_edge_port.py index 3193489a6..0d5bd41bc 100644 --- a/gso/workflows/edge_port/import_edge_port.py +++ b/gso/workflows/edge_port/import_edge_port.py @@ -1,10 +1,10 @@ """A modification workflow for migrating an ImportedEdgePort to an EdgePort subscription.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.edge_port import EdgePort, ImportedEdgePort diff --git a/gso/workflows/edge_port/migrate_edge_port.py b/gso/workflows/edge_port/migrate_edge_port.py index 4602d72dd..afd2d6d0f 100644 --- a/gso/workflows/edge_port/migrate_edge_port.py +++ b/gso/workflows/edge_port/migrate_edge_port.py @@ -10,13 +10,13 @@ from orchestrator import step, workflow from orchestrator.config.assignee import Assignee from orchestrator.forms import FormPage, SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.utils.errors import ProcessFailureError from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, done, inputstep from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import AfterValidator, ConfigDict, Field +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import Divider, Label, ReadOnlyField, validate_unique_list from pynetbox.models.dcim import Interfaces diff --git a/gso/workflows/edge_port/validate_edge_port.py b/gso/workflows/edge_port/validate_edge_port.py index 6932b2be3..1bbf60e3d 100644 --- a/gso/workflows/edge_port/validate_edge_port.py +++ b/gso/workflows/edge_port/validate_edge_port.py @@ -3,11 +3,11 @@ from typing import Any from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products.product_types.edge_port import EdgePort from gso.services.lso_client import LSOState, anonymous_lso_interaction diff --git a/gso/workflows/iptrunk/activate_iptrunk.py b/gso/workflows/iptrunk/activate_iptrunk.py index af37f2f24..eaca69db1 100644 --- a/gso/workflows/iptrunk/activate_iptrunk.py +++ b/gso/workflows/iptrunk/activate_iptrunk.py @@ -8,10 +8,11 @@ from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, inputstep, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.iptrunk import Iptrunk diff --git a/gso/workflows/iptrunk/create_imported_iptrunk.py b/gso/workflows/iptrunk/create_imported_iptrunk.py index db1bdb6eb..5e00dd29c 100644 --- a/gso/workflows/iptrunk/create_imported_iptrunk.py +++ b/gso/workflows/iptrunk/create_imported_iptrunk.py @@ -7,10 +7,11 @@ from uuid import uuid4 from orchestrator import workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import AfterValidator, ConfigDict +from pydantic_forms.types import FormGenerator, State from pydantic_forms.validators import validate_unique_list from gso.products import ProductName diff --git a/gso/workflows/iptrunk/create_iptrunk.py b/gso/workflows/iptrunk/create_iptrunk.py index c42ec7024..b50b50cbb 100644 --- a/gso/workflows/iptrunk/create_iptrunk.py +++ b/gso/workflows/iptrunk/create_iptrunk.py @@ -34,7 +34,7 @@ from annotated_types import Len from orchestrator.forms import FormPage from orchestrator.forms.validators import Choice, Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.utils.errors import ProcessFailureError from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, conditional, done, step, step_group, workflow @@ -42,6 +42,7 @@ from orchestrator.workflows.steps import resync, set_status, store_process_subsc from orchestrator.workflows.utils import wrap_create_initial_input_form from ping3 import ping from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import ReadOnlyField from pynetbox.models.dcim import Interfaces diff --git a/gso/workflows/iptrunk/deploy_twamp.py b/gso/workflows/iptrunk/deploy_twamp.py index 93c476ec4..323963e7c 100644 --- a/gso/workflows/iptrunk/deploy_twamp.py +++ b/gso/workflows/iptrunk/deploy_twamp.py @@ -9,11 +9,11 @@ import json from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, UUIDstr from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.iptrunk import Iptrunk from gso.services.lso_client import LSOState, lso_interaction diff --git a/gso/workflows/iptrunk/import_iptrunk.py b/gso/workflows/iptrunk/import_iptrunk.py index 36dce40de..05fff8c2d 100644 --- a/gso/workflows/iptrunk/import_iptrunk.py +++ b/gso/workflows/iptrunk/import_iptrunk.py @@ -1,10 +1,10 @@ """A modification workflow for migrating an ImportedIptrunk to an Iptrunk subscription.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.iptrunk import ImportedIptrunk, Iptrunk diff --git a/gso/workflows/iptrunk/migrate_iptrunk.py b/gso/workflows/iptrunk/migrate_iptrunk.py index 60602b8e6..24b1fdb0a 100644 --- a/gso/workflows/iptrunk/migrate_iptrunk.py +++ b/gso/workflows/iptrunk/migrate_iptrunk.py @@ -17,12 +17,12 @@ from orchestrator.config.assignee import Assignee from orchestrator.forms import FormPage, SubmitFormPage from orchestrator.forms.validators import Choice, Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, conditional, done, inputstep from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import ReadOnlyField from pynetbox.models.dcim import Interfaces diff --git a/gso/workflows/iptrunk/modify_isis_metric.py b/gso/workflows/iptrunk/modify_isis_metric.py index e144a147a..03c73c15c 100644 --- a/gso/workflows/iptrunk/modify_isis_metric.py +++ b/gso/workflows/iptrunk/modify_isis_metric.py @@ -8,11 +8,11 @@ import json from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.products.product_types.iptrunk import Iptrunk from gso.services.lso_client import LSOState, lso_interaction diff --git a/gso/workflows/iptrunk/modify_trunk_interface.py b/gso/workflows/iptrunk/modify_trunk_interface.py index fd533613d..46de31d99 100644 --- a/gso/workflows/iptrunk/modify_trunk_interface.py +++ b/gso/workflows/iptrunk/modify_trunk_interface.py @@ -14,12 +14,12 @@ from uuid import UUID, uuid4 from annotated_types import Len from orchestrator.forms import FormPage, SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, conditional, done, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import AfterValidator, ConfigDict, Field +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import Label, ReadOnlyField from gso.products.product_blocks.iptrunk import ( diff --git a/gso/workflows/iptrunk/terminate_iptrunk.py b/gso/workflows/iptrunk/terminate_iptrunk.py index 2d0682a1c..47fceae06 100644 --- a/gso/workflows/iptrunk/terminate_iptrunk.py +++ b/gso/workflows/iptrunk/terminate_iptrunk.py @@ -17,7 +17,7 @@ import json from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, conditional, done, step, workflow from orchestrator.workflows.steps import ( @@ -27,6 +27,7 @@ from orchestrator.workflows.steps import ( unsync, ) from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.products.product_blocks.iptrunk import IptrunkSideBlock from gso.products.product_types.iptrunk import Iptrunk diff --git a/gso/workflows/l2_circuit/create_imported_layer_2_circuit.py b/gso/workflows/l2_circuit/create_imported_layer_2_circuit.py index 6dbd052eb..8b835edc1 100644 --- a/gso/workflows/l2_circuit/create_imported_layer_2_circuit.py +++ b/gso/workflows/l2_circuit/create_imported_layer_2_circuit.py @@ -6,11 +6,11 @@ from uuid import uuid4 from orchestrator import step, workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import BaseModel, ConfigDict, model_validator -from pydantic_forms.types import UUIDstr +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.products import ProductName from gso.products.product_blocks.layer_2_circuit import Layer2CircuitSideBlockInactive, Layer2CircuitType diff --git a/gso/workflows/l2_circuit/import_layer_2_circuit.py b/gso/workflows/l2_circuit/import_layer_2_circuit.py index 01224e86c..35ed7755b 100644 --- a/gso/workflows/l2_circuit/import_layer_2_circuit.py +++ b/gso/workflows/l2_circuit/import_layer_2_circuit.py @@ -1,11 +1,11 @@ """A modification workflow for migrating an ImportedLayer2Circuit to an Layer2Circuit subscription.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.layer_2_circuit import ImportedLayer2Circuit, Layer2Circuit, Layer2CircuitServiceType diff --git a/gso/workflows/l2_circuit/modify_layer_2_circuit.py b/gso/workflows/l2_circuit/modify_layer_2_circuit.py index 6d7b15ff3..bd75b14fc 100644 --- a/gso/workflows/l2_circuit/modify_layer_2_circuit.py +++ b/gso/workflows/l2_circuit/modify_layer_2_circuit.py @@ -3,11 +3,11 @@ from orchestrator import begin, done, workflow from orchestrator.forms import FormPage, SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, UUIDstr from orchestrator.workflow import StepList, step from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import ConfigDict, Field +from pydantic_forms.types import FormGenerator, UUIDstr from pydantic_forms.validators import Divider, Label, ReadOnlyField from gso.products.product_blocks.layer_2_circuit import Layer2CircuitType diff --git a/gso/workflows/l2_circuit/terminate_layer_2_circuit.py b/gso/workflows/l2_circuit/terminate_layer_2_circuit.py index f985c69cc..e8773a678 100644 --- a/gso/workflows/l2_circuit/terminate_layer_2_circuit.py +++ b/gso/workflows/l2_circuit/terminate_layer_2_circuit.py @@ -3,11 +3,11 @@ from orchestrator import begin, workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, done from orchestrator.workflows.steps import resync, set_status, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form -from pydantic_forms.types import FormGenerator +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.layer_2_circuit import Layer2Circuit from gso.utils.types.tt_number import TTNumber diff --git a/gso/workflows/l3_core_service/create_imported_l3_core_service.py b/gso/workflows/l3_core_service/create_imported_l3_core_service.py index ebb73fb95..70753dd08 100644 --- a/gso/workflows/l3_core_service/create_imported_l3_core_service.py +++ b/gso/workflows/l3_core_service/create_imported_l3_core_service.py @@ -5,12 +5,12 @@ from uuid import uuid4 from orchestrator import workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, begin, done, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import BaseModel, NonNegativeInt -from pydantic_forms.types import UUIDstr +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products import ProductName from gso.products.product_blocks.bgp_session import BGPSession, IPFamily, IPTypes diff --git a/gso/workflows/l3_core_service/create_l3_core_service.py b/gso/workflows/l3_core_service/create_l3_core_service.py index 3069bdace..947844e00 100644 --- a/gso/workflows/l3_core_service/create_l3_core_service.py +++ b/gso/workflows/l3_core_service/create_l3_core_service.py @@ -6,11 +6,12 @@ from uuid import uuid4 from orchestrator.forms import FormPage, SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription from orchestrator.workflows.utils import wrap_create_initial_input_form from pydantic import BaseModel, ConfigDict, Field, NonNegativeInt, computed_field, model_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import Divider from gso.products.product_blocks.bgp_session import BGPSession, IPFamily, IPTypes diff --git a/gso/workflows/l3_core_service/import_l3_core_service.py b/gso/workflows/l3_core_service/import_l3_core_service.py index d7f0d06ee..1c9d85def 100644 --- a/gso/workflows/l3_core_service/import_l3_core_service.py +++ b/gso/workflows/l3_core_service/import_l3_core_service.py @@ -1,11 +1,11 @@ """A modification workflow for migrating an `ImportedGeantIP` to a `GeantIP` subscription.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.l3_core_service import ( diff --git a/gso/workflows/l3_core_service/modify_l3_core_service.py b/gso/workflows/l3_core_service/modify_l3_core_service.py index ea2912e9b..db0cd54d1 100644 --- a/gso/workflows/l3_core_service/modify_l3_core_service.py +++ b/gso/workflows/l3_core_service/modify_l3_core_service.py @@ -6,12 +6,11 @@ from uuid import uuid4 from orchestrator import begin, conditional, done, step, workflow from orchestrator.forms import FormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, UUIDstr from orchestrator.workflow import StepList from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import AfterValidator, BaseModel, ConfigDict, Field, NonNegativeInt, computed_field -from pydantic_forms.types import State +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import Divider, Label from gso.products.product_blocks.bgp_session import BGPSession, IPFamily, IPTypes diff --git a/gso/workflows/l3_core_service/terminate_l3_core_service.py b/gso/workflows/l3_core_service/terminate_l3_core_service.py index 9cf401a5c..8cae6c430 100644 --- a/gso/workflows/l3_core_service/terminate_l3_core_service.py +++ b/gso/workflows/l3_core_service/terminate_l3_core_service.py @@ -3,11 +3,11 @@ from orchestrator import begin, workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, done from orchestrator.workflows.steps import resync, set_status, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form -from pydantic_forms.types import FormGenerator +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.l3_core_service import L3CoreService from gso.utils.types.tt_number import TTNumber diff --git a/gso/workflows/lan_switch_interconnect/create_imported_lan_switch_interconnect.py b/gso/workflows/lan_switch_interconnect/create_imported_lan_switch_interconnect.py index 03c6e8aa8..12bcff950 100644 --- a/gso/workflows/lan_switch_interconnect/create_imported_lan_switch_interconnect.py +++ b/gso/workflows/lan_switch_interconnect/create_imported_lan_switch_interconnect.py @@ -5,9 +5,10 @@ from uuid import uuid4 from orchestrator import step, workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done from orchestrator.workflows.steps import resync, set_status, store_process_subscription +from pydantic_forms.types import FormGenerator, State from gso.cli.imports import LanSwitchInterconnectRouterSideImportModel, LanSwitchInterconnectSwitchSideImportModel from gso.products import ProductName diff --git a/gso/workflows/lan_switch_interconnect/create_lan_switch_interconnect.py b/gso/workflows/lan_switch_interconnect/create_lan_switch_interconnect.py index 0c5f74850..4ebd46d9a 100644 --- a/gso/workflows/lan_switch_interconnect/create_lan_switch_interconnect.py +++ b/gso/workflows/lan_switch_interconnect/create_lan_switch_interconnect.py @@ -7,12 +7,13 @@ from uuid import uuid4 from annotated_types import Len from orchestrator.forms import FormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription from orchestrator.workflows.utils import wrap_create_initial_input_form from pydantic import AfterValidator, ConfigDict +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import ReadOnlyField from gso.products.product_blocks.lan_switch_interconnect import ( diff --git a/gso/workflows/lan_switch_interconnect/import_lan_switch_interconnect.py b/gso/workflows/lan_switch_interconnect/import_lan_switch_interconnect.py index 0de05997a..32d47addf 100644 --- a/gso/workflows/lan_switch_interconnect/import_lan_switch_interconnect.py +++ b/gso/workflows/lan_switch_interconnect/import_lan_switch_interconnect.py @@ -2,10 +2,10 @@ from orchestrator import step, workflow from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, begin, done from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.lan_switch_interconnect import ImportedLanSwitchInterconnect, LanSwitchInterconnect diff --git a/gso/workflows/lan_switch_interconnect/terminate_lan_switch_interconnect.py b/gso/workflows/lan_switch_interconnect/terminate_lan_switch_interconnect.py index 47e186547..b878b7d6a 100644 --- a/gso/workflows/lan_switch_interconnect/terminate_lan_switch_interconnect.py +++ b/gso/workflows/lan_switch_interconnect/terminate_lan_switch_interconnect.py @@ -3,11 +3,11 @@ from orchestrator import begin, workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, done, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form -from pydantic_forms.types import FormGenerator +from pydantic_forms.types import FormGenerator, UUIDstr from pydantic_forms.validators import Label from gso.products.product_types.lan_switch_interconnect import LanSwitchInterconnect diff --git a/gso/workflows/office_router/create_imported_office_router.py b/gso/workflows/office_router/create_imported_office_router.py index c1280c13d..9dbef9f32 100644 --- a/gso/workflows/office_router/create_imported_office_router.py +++ b/gso/workflows/office_router/create_imported_office_router.py @@ -3,10 +3,11 @@ from orchestrator import workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State from gso.products import ProductName from gso.products.product_types.office_router import ImportedOfficeRouterInactive diff --git a/gso/workflows/office_router/import_office_router.py b/gso/workflows/office_router/import_office_router.py index 0d1d67abd..6ae3240b5 100644 --- a/gso/workflows/office_router/import_office_router.py +++ b/gso/workflows/office_router/import_office_router.py @@ -1,10 +1,10 @@ """A modification workflow for migrating an ImportedOfficeRouter to an OfficeRouter subscription.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.office_router import ImportedOfficeRouter, OfficeRouter diff --git a/gso/workflows/opengear/create_imported_opengear.py b/gso/workflows/opengear/create_imported_opengear.py index a7433f2bf..47f157f0f 100644 --- a/gso/workflows/opengear/create_imported_opengear.py +++ b/gso/workflows/opengear/create_imported_opengear.py @@ -3,10 +3,11 @@ from orchestrator import workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, done, init, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State from gso.products import ProductName from gso.products.product_types.opengear import ImportedOpengearInactive diff --git a/gso/workflows/opengear/import_opengear.py b/gso/workflows/opengear/import_opengear.py index d9bb75306..1b34b55a7 100644 --- a/gso/workflows/opengear/import_opengear.py +++ b/gso/workflows/opengear/import_opengear.py @@ -1,10 +1,10 @@ """A modification workflow for migrating an ImportedOpengear to an Opengear subscription.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.opengear import ImportedOpengear, Opengear diff --git a/gso/workflows/router/activate_router.py b/gso/workflows/router/activate_router.py index 683292d76..e5b65ca5c 100644 --- a/gso/workflows/router/activate_router.py +++ b/gso/workflows/router/activate_router.py @@ -8,10 +8,11 @@ from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, inputstep, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.router import Router diff --git a/gso/workflows/router/create_imported_router.py b/gso/workflows/router/create_imported_router.py index 81acba1ae..56640256a 100644 --- a/gso/workflows/router/create_imported_router.py +++ b/gso/workflows/router/create_imported_router.py @@ -3,10 +3,11 @@ from orchestrator import workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State from gso.products import ProductName from gso.products.product_blocks.router import RouterRole diff --git a/gso/workflows/router/create_router.py b/gso/workflows/router/create_router.py index 6cd77a108..8c7a84344 100644 --- a/gso/workflows/router/create_router.py +++ b/gso/workflows/router/create_router.py @@ -46,12 +46,13 @@ from orchestrator.config.assignee import Assignee from orchestrator.forms import FormPage, SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, begin, conditional, done, inputstep, step, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription from orchestrator.workflows.utils import wrap_create_initial_input_form from pydantic import ConfigDict, model_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import ReadOnlyField from gso.products.product_blocks.router import RouterRole diff --git a/gso/workflows/router/import_router.py b/gso/workflows/router/import_router.py index 1421ff0fa..efe39a1ae 100644 --- a/gso/workflows/router/import_router.py +++ b/gso/workflows/router/import_router.py @@ -1,10 +1,10 @@ """A modification workflow for setting a new ISIS metric for an IP trunk.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.router import ImportedRouter, Router diff --git a/gso/workflows/router/modify_connection_strategy.py b/gso/workflows/router/modify_connection_strategy.py index e571cfc44..93cca08da 100644 --- a/gso/workflows/router/modify_connection_strategy.py +++ b/gso/workflows/router/modify_connection_strategy.py @@ -6,11 +6,11 @@ loopback interface. from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.products.product_types.router import Router from gso.utils.shared_enums import ConnectionStrategy diff --git a/gso/workflows/router/modify_kentik_license.py b/gso/workflows/router/modify_kentik_license.py index 3a809fc03..5b15f62fa 100644 --- a/gso/workflows/router/modify_kentik_license.py +++ b/gso/workflows/router/modify_kentik_license.py @@ -9,12 +9,12 @@ from typing import Any from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import store_process_subscription from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import model_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import Choice from gso.products.product_blocks.router import RouterRole diff --git a/gso/workflows/router/promote_p_to_pe.py b/gso/workflows/router/promote_p_to_pe.py index 63f59a24c..ce961ed10 100644 --- a/gso/workflows/router/promote_p_to_pe.py +++ b/gso/workflows/router/promote_p_to_pe.py @@ -7,12 +7,12 @@ from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, done, inputstep, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import ConfigDict, model_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.products.product_blocks.router import RouterRole from gso.products.product_types.router import Router diff --git a/gso/workflows/router/redeploy_base_config.py b/gso/workflows/router/redeploy_base_config.py index bd64fb7e2..11c4264dc 100644 --- a/gso/workflows/router/redeploy_base_config.py +++ b/gso/workflows/router/redeploy_base_config.py @@ -11,10 +11,10 @@ run. After confirmation by an operator, the configuration is committed to the ma from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, UUIDstr from orchestrator.workflow import StepList, begin, done, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.router import Router from gso.services.lso_client import lso_interaction diff --git a/gso/workflows/router/terminate_router.py b/gso/workflows/router/terminate_router.py index a908bc8e1..9c73b13e5 100644 --- a/gso/workflows/router/terminate_router.py +++ b/gso/workflows/router/terminate_router.py @@ -22,7 +22,7 @@ import logging from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.utils.errors import ProcessFailureError from orchestrator.utils.json import json_dumps from orchestrator.workflow import StepList, begin, conditional, done, step, workflow @@ -33,6 +33,7 @@ from orchestrator.workflows.steps import ( unsync, ) from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, State, UUIDstr from requests import HTTPError from gso.products.product_blocks.router import RouterRole diff --git a/gso/workflows/router/update_ibgp_mesh.py b/gso/workflows/router/update_ibgp_mesh.py index b0fa37c6d..2c8c9db00 100644 --- a/gso/workflows/router/update_ibgp_mesh.py +++ b/gso/workflows/router/update_ibgp_mesh.py @@ -24,11 +24,12 @@ from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, conditional, done, inputstep, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import ConfigDict, model_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.products.product_blocks.router import RouterRole from gso.products.product_types.router import Router diff --git a/gso/workflows/router/validate_router.py b/gso/workflows/router/validate_router.py index a469237e5..25bd3176c 100644 --- a/gso/workflows/router/validate_router.py +++ b/gso/workflows/router/validate_router.py @@ -3,11 +3,11 @@ from typing import Any from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.utils.errors import ProcessFailureError from orchestrator.workflow import StepList, begin, conditional, done, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products.product_blocks.router import RouterRole from gso.products.product_types.router import Router diff --git a/gso/workflows/site/create_imported_site.py b/gso/workflows/site/create_imported_site.py index 16f2471f7..05d73eff2 100644 --- a/gso/workflows/site/create_imported_site.py +++ b/gso/workflows/site/create_imported_site.py @@ -4,10 +4,11 @@ from uuid import UUID from orchestrator.forms import FormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State from gso.products import ProductName from gso.products.product_blocks.site import SiteTier diff --git a/gso/workflows/site/create_site.py b/gso/workflows/site/create_site.py index 149178e34..40f5ae0a1 100644 --- a/gso/workflows/site/create_site.py +++ b/gso/workflows/site/create_site.py @@ -6,11 +6,12 @@ The `create_site` workflow creates a new site object in the service database, an from orchestrator.forms import FormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription from orchestrator.workflows.utils import wrap_create_initial_input_form from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import ReadOnlyField from gso.products.product_blocks import site as site_pb diff --git a/gso/workflows/site/import_site.py b/gso/workflows/site/import_site.py index f2130354c..20f19ff26 100644 --- a/gso/workflows/site/import_site.py +++ b/gso/workflows/site/import_site.py @@ -1,10 +1,10 @@ """A modification workflow for migrating an ImportedSite to a Site subscription.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.site import ImportedSite, Site diff --git a/gso/workflows/site/modify_site.py b/gso/workflows/site/modify_site.py index 2a1913f6b..8776bc3e4 100644 --- a/gso/workflows/site/modify_site.py +++ b/gso/workflows/site/modify_site.py @@ -17,7 +17,7 @@ from typing import Annotated from orchestrator.forms import FormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import ( resync, @@ -27,6 +27,7 @@ from orchestrator.workflows.steps import ( ) from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import AfterValidator, ConfigDict +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import ReadOnlyField from gso.products.product_blocks.site import SiteTier diff --git a/gso/workflows/site/terminate_site.py b/gso/workflows/site/terminate_site.py index 0e34f209c..5e21a4cbf 100644 --- a/gso/workflows/site/terminate_site.py +++ b/gso/workflows/site/terminate_site.py @@ -8,7 +8,7 @@ unavailable for an operator to run, accompanied by an error message explaining t from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, workflow from orchestrator.workflows.steps import ( resync, @@ -17,6 +17,7 @@ from orchestrator.workflows.steps import ( unsync, ) from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.site import Site diff --git a/gso/workflows/super_pop_switch/create_imported_super_pop_switch.py b/gso/workflows/super_pop_switch/create_imported_super_pop_switch.py index 6b3425317..e0e1eb752 100644 --- a/gso/workflows/super_pop_switch/create_imported_super_pop_switch.py +++ b/gso/workflows/super_pop_switch/create_imported_super_pop_switch.py @@ -3,10 +3,11 @@ from orchestrator import workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State from gso.products import ProductName from gso.products.product_types.super_pop_switch import ImportedSuperPopSwitchInactive diff --git a/gso/workflows/super_pop_switch/import_super_pop_switch.py b/gso/workflows/super_pop_switch/import_super_pop_switch.py index 63c7148f9..e29e9d9fc 100644 --- a/gso/workflows/super_pop_switch/import_super_pop_switch.py +++ b/gso/workflows/super_pop_switch/import_super_pop_switch.py @@ -1,10 +1,10 @@ """A modification workflow for migrating an ImportedSuperPoPSwitch to a SuperPopSwitch subscription.""" from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, done, init, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.super_pop_switch import ImportedSuperPopSwitch, SuperPopSwitch diff --git a/gso/workflows/switch/activate_switch.py b/gso/workflows/switch/activate_switch.py index dc71cfa7d..2957faa58 100644 --- a/gso/workflows/switch/activate_switch.py +++ b/gso/workflows/switch/activate_switch.py @@ -4,10 +4,11 @@ from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, inputstep, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.switch import Switch diff --git a/gso/workflows/switch/create_imported_switch.py b/gso/workflows/switch/create_imported_switch.py index 30d7ea463..76133b5f8 100644 --- a/gso/workflows/switch/create_imported_switch.py +++ b/gso/workflows/switch/create_imported_switch.py @@ -3,9 +3,10 @@ from orchestrator import step, workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done from orchestrator.workflows.steps import resync, set_status, store_process_subscription +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.products import ProductName from gso.products.product_blocks.switch import SwitchModel diff --git a/gso/workflows/switch/create_switch.py b/gso/workflows/switch/create_switch.py index 09b0a03ea..d2b7ec337 100644 --- a/gso/workflows/switch/create_switch.py +++ b/gso/workflows/switch/create_switch.py @@ -5,11 +5,12 @@ from typing import Self from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, inputstep, step, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription from orchestrator.workflows.utils import wrap_create_initial_input_form from pydantic import ConfigDict, model_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import Choice, Label, ReadOnlyField from gso.products.product_blocks.switch import SwitchModel diff --git a/gso/workflows/switch/import_switch.py b/gso/workflows/switch/import_switch.py index 8ecf2d439..f0caa5eb6 100644 --- a/gso/workflows/switch/import_switch.py +++ b/gso/workflows/switch/import_switch.py @@ -2,10 +2,10 @@ from orchestrator import step, workflow from orchestrator.targets import Target -from orchestrator.types import State, UUIDstr from orchestrator.workflow import StepList, begin, done from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form +from pydantic_forms.types import State, UUIDstr from gso.products import ProductName from gso.products.product_types.switch import ImportedSwitch, Switch diff --git a/gso/workflows/switch/terminate_switch.py b/gso/workflows/switch/terminate_switch.py index 84bea41dc..01f149b1d 100644 --- a/gso/workflows/switch/terminate_switch.py +++ b/gso/workflows/switch/terminate_switch.py @@ -3,11 +3,11 @@ from orchestrator import begin, done, workflow from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, step from orchestrator.workflows.steps import resync, set_status, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form -from pydantic_forms.types import FormGenerator +from pydantic_forms.types import FormGenerator, UUIDstr from pydantic_forms.validators import Label from gso.products.product_types.switch import Switch diff --git a/gso/workflows/tasks/create_partners.py b/gso/workflows/tasks/create_partners.py index e6e4e4b04..3b82e41fb 100644 --- a/gso/workflows/tasks/create_partners.py +++ b/gso/workflows/tasks/create_partners.py @@ -2,9 +2,9 @@ from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State from orchestrator.workflow import StepList, begin, done, step, workflow from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State from gso.services.partners import PartnerEmail, PartnerName, PartnerSchema, create_partner diff --git a/gso/workflows/tasks/delete_partners.py b/gso/workflows/tasks/delete_partners.py index 15cbe2ac2..eaa97d7e9 100644 --- a/gso/workflows/tasks/delete_partners.py +++ b/gso/workflows/tasks/delete_partners.py @@ -4,9 +4,9 @@ from enum import Enum from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.workflow import StepList, begin, done, step, workflow from pydantic import ConfigDict, EmailStr, field_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.services.partners import delete_partner, get_partner_by_name from gso.services.subscriptions import get_subscriptions diff --git a/gso/workflows/tasks/modify_partners.py b/gso/workflows/tasks/modify_partners.py index 0445ceeeb..5910a7bd8 100644 --- a/gso/workflows/tasks/modify_partners.py +++ b/gso/workflows/tasks/modify_partners.py @@ -2,9 +2,9 @@ from orchestrator.forms import FormPage, SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.workflow import StepList, begin, done, step, workflow from pydantic import ConfigDict, EmailStr, field_validator +from pydantic_forms.types import FormGenerator, State, UUIDstr from gso.services.partners import ( ModifiedPartnerSchema, diff --git a/gso/workflows/tasks/send_email_notifications.py b/gso/workflows/tasks/send_email_notifications.py index 63947d078..527ea7f98 100644 --- a/gso/workflows/tasks/send_email_notifications.py +++ b/gso/workflows/tasks/send_email_notifications.py @@ -8,8 +8,8 @@ failed. from typing import Any from orchestrator.targets import Target -from orchestrator.types import State from orchestrator.workflow import StepList, conditional, done, init, step, workflow +from pydantic_forms.types import State from gso.services.mailer import send_mail from gso.services.processes import get_failed_tasks, get_failed_tasks_by_workflow_name diff --git a/gso/workflows/vrf/create_vrf.py b/gso/workflows/vrf/create_vrf.py index 8844ea0c0..29b46a561 100644 --- a/gso/workflows/vrf/create_vrf.py +++ b/gso/workflows/vrf/create_vrf.py @@ -2,11 +2,12 @@ from orchestrator.forms import FormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, set_status, store_process_subscription from orchestrator.workflows.utils import wrap_create_initial_input_form from pydantic import ConfigDict +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import ReadOnlyField from gso.products.product_types.vrf import VRFInactive diff --git a/gso/workflows/vrf/modify_vrf_router_list.py b/gso/workflows/vrf/modify_vrf_router_list.py index 200912317..1dde31b7c 100644 --- a/gso/workflows/vrf/modify_vrf_router_list.py +++ b/gso/workflows/vrf/modify_vrf_router_list.py @@ -4,11 +4,11 @@ from typing import Annotated, Any from orchestrator.forms import SubmitFormPage from orchestrator.targets import Target -from orchestrator.types import FormGenerator, State, UUIDstr from orchestrator.workflow import StepList, begin, done, step, workflow from orchestrator.workflows.steps import resync, store_process_subscription, unsync from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import AfterValidator, BaseModel, ConfigDict, Field +from pydantic_forms.types import FormGenerator, State, UUIDstr from pydantic_forms.validators import validate_unique_list from gso.products.product_types.router import Router diff --git a/gso/workflows/vrf/terminate_vrf.py b/gso/workflows/vrf/terminate_vrf.py index 1b985206b..1b1a6ea7f 100644 --- a/gso/workflows/vrf/terminate_vrf.py +++ b/gso/workflows/vrf/terminate_vrf.py @@ -5,7 +5,7 @@ from typing import Any from orchestrator.forms import SubmitFormPage from orchestrator.forms.validators import Label from orchestrator.targets import Target -from orchestrator.types import FormGenerator, SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle from orchestrator.workflow import StepList, begin, done, workflow from orchestrator.workflows.steps import ( resync, @@ -15,6 +15,7 @@ from orchestrator.workflows.steps import ( ) from orchestrator.workflows.utils import wrap_modify_initial_input_form from pydantic import model_validator +from pydantic_forms.types import FormGenerator, UUIDstr from gso.products.product_types.vrf import VRF from gso.utils.types.tt_number import TTNumber diff --git a/test/conftest.py b/test/conftest.py index 731e0a3c1..0c1dff0cf 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -25,7 +25,8 @@ from orchestrator.db import ( from orchestrator.db.database import ENGINE_ARGUMENTS, SESSION_ARGUMENTS, BaseModel from orchestrator.domain import SUBSCRIPTION_MODEL_REGISTRY, SubscriptionModel from orchestrator.domain.base import ProductBlockModel -from orchestrator.types import SubscriptionLifecycle, strEnum +from orchestrator.types import SubscriptionLifecycle +from pydantic_forms.types import strEnum from sqlalchemy import create_engine, select, text from sqlalchemy.engine import make_url from sqlalchemy.orm import scoped_session, sessionmaker diff --git a/test/fixtures.py b/test/fixtures.py index 4d503bf11..6687d05e1 100644 --- a/test/fixtures.py +++ b/test/fixtures.py @@ -6,9 +6,8 @@ import pytest from orchestrator import step, workflow from orchestrator.config.assignee import Assignee from orchestrator.forms import SubmitFormPage -from orchestrator.types import UUIDstr from orchestrator.workflow import done, init, inputstep -from pydantic_forms.types import FormGenerator +from pydantic_forms.types import FormGenerator, UUIDstr from pydantic_forms.validators import Choice from test.workflows import WorkflowInstanceForTests diff --git a/test/fixtures/lan_switch_interconnect_fixtures.py b/test/fixtures/lan_switch_interconnect_fixtures.py index 40f95374d..3879441ee 100644 --- a/test/fixtures/lan_switch_interconnect_fixtures.py +++ b/test/fixtures/lan_switch_interconnect_fixtures.py @@ -3,7 +3,8 @@ from uuid import uuid4 import pytest from orchestrator.db import db from orchestrator.domain import SubscriptionModel -from orchestrator.types import SubscriptionLifecycle, UUIDstr +from orchestrator.types import SubscriptionLifecycle +from pydantic_forms.types import UUIDstr from gso.products import ProductName from gso.products.product_blocks.lan_switch_interconnect import ( diff --git a/test/workflows/__init__.py b/test/workflows/__init__.py index 4edb84704..33a0e3f1a 100644 --- a/test/workflows/__init__.py +++ b/test/workflows/__init__.py @@ -8,12 +8,12 @@ from uuid import uuid4 import structlog from orchestrator.db import ProcessTable, WorkflowTable, db from orchestrator.services.processes import StateMerger, _db_create_process -from orchestrator.types import State from orchestrator.utils.json import json_dumps, json_loads from orchestrator.workflow import Process, ProcessStat, Step, Success, Workflow, runwf from orchestrator.workflow import Process as WFProcess from orchestrator.workflows import ALL_WORKFLOWS, LazyWorkflowInstance, get_workflow from pydantic_forms.core import post_form +from pydantic_forms.types import State from test import LSO_RESULT_FAILURE, LSO_RESULT_SUCCESS, USER_CONFIRM_EMPTY_FORM -- GitLab