diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..c18dd8d83ceed1806b50b0aaa46beb7e335fff13 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +__pycache__/ diff --git a/main.py b/main.py index 1ab60689cf1af7f8ca59e674d3c5af1b7ab11d11..26a26e556d82240eb71b33ef60ccec0b101921dd 100644 --- a/main.py +++ b/main.py @@ -2,6 +2,8 @@ from orchestrator import OrchestratorCore from orchestrator.cli.main import app as core_cli from orchestrator.settings import AppSettings +import products + app = OrchestratorCore(base_settings=AppSettings()) if __name__ == "__main__": diff --git a/products/__init__.py b/products/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..92c8828d399f26b8d54a264d07a642c4565df187 100644 --- a/products/__init__.py +++ b/products/__init__.py @@ -0,0 +1,15 @@ +from orchestrator.domain import SUBSCRIPTION_MODEL_REGISTRY + +from products.product_types.trunk import Trunk +from products.product_types.trunk_config import TrunkConfig +from products.product_types.trunk_config_common import TrunkConfigCommon +from products.product_types.trunk_config_side import TrunkConfigSide + +SUBSCRIPTION_MODEL_REGISTRY.update( + { + "Trunk": Trunk, + "Trunk Config": TrunkConfig, + "Trunk Config Common": TrunkConfigCommon, + "Trunk Config Side": TrunkConfigSide, + } +) diff --git a/products/product_blocks/trunk.py b/products/product_blocks/trunk.py index dcd27f16876049ec9b2fe03b83adc8d938adf95e..76237c83a0d8e70003e6a301ce566de5c0dfb4f5 100644 --- a/products/product_blocks/trunk.py +++ b/products/product_blocks/trunk.py @@ -7,16 +7,16 @@ from orchestrator.types import SubscriptionLifecycle class TrunkBlockInactive(ProductBlockModel, lifecycle=[SubscriptionLifecycle.INITIAL], product_block_name="TrunkBlock"): trunk_id: Optional[int] = None geant_s_sid: Optional[str] = None - name: Optional[str] = None + trunk_name: Optional[str] = None class TrunkBlockProvisioning(TrunkBlockInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]): trunk_id: Optional[int] = None geant_s_sid: Optional[str] = None - name: str + trunk_name: str class TrunkBlock(TrunkBlockProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]): trunk_id: int geant_s_sid: str - name: str + trunk_name: str diff --git a/products/product_blocks/trunk_config_side.py b/products/product_blocks/trunk_config_side.py index de792d4922ed7be7e62d4dcb9ff059863e008640..8bf1b039a315a6ef254ef33367e6965526c8dbb3 100644 --- a/products/product_blocks/trunk_config_side.py +++ b/products/product_blocks/trunk_config_side.py @@ -9,7 +9,7 @@ from products.product_blocks.trunk_config import TrunkConfigBlock, TrunkConfigBl class TrunkConfigSideBlockInactive(ProductBlockModel, lifecycle=[SubscriptionLifecycle.INITIAL], product_block_name="TrunkConfigSideBlock"): trunk_config: TrunkConfigBlockInactive trunk_config_side_id: Optional[int] = None - name: Optional[str] = None + fqdn: Optional[str] = None ae_name: Optional[str] = None geant_a_sid: Optional[str] = None ipv4_address: Optional[str] = None @@ -20,7 +20,7 @@ class TrunkConfigSideBlockInactive(ProductBlockModel, lifecycle=[SubscriptionLif class TrunkConfigSideBlockProvisioning(TrunkConfigSideBlockInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]): trunk_config: TrunkConfigBlockProvisioning trunk_config_side_id: Optional[int] = None - name: str + fqdn: str ae_name: Optional[str] = None geant_a_sid: Optional[str] = None ipv4_address: Optional[str] = None @@ -31,7 +31,7 @@ class TrunkConfigSideBlockProvisioning(TrunkConfigSideBlockInactive, lifecycle=[ class TrunkConfigSideBlock(TrunkConfigSideBlockProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]): trunk_config: TrunkConfigBlock trunk_config_side_id: int - name: str + fqdn: str ae_name: str geant_a_sid: str ipv4_address: str diff --git a/products/product_types/trunk_config.py b/products/product_types/trunk_config.py index bdd5ca7ad2a3ea943c2ece2dab11c54dc7df4c14..94e48c32a97196db93e05b4e9e4ee82661a3fb43 100644 --- a/products/product_types/trunk_config.py +++ b/products/product_types/trunk_config.py @@ -4,13 +4,13 @@ from orchestrator.types import SubscriptionLifecycle from products.product_blocks.trunk_config import TrunkConfigBlock, TrunkConfigBlockInactive, TrunkConfigBlockProvisioning -class TrunkInactive(SubscriptionModel, is_base=True, lifecycle=[SubscriptionLifecycle.INITIAL]): +class TrunkConfigInactive(SubscriptionModel, is_base=True, lifecycle=[SubscriptionLifecycle.INITIAL]): trunk_config: TrunkConfigBlockInactive -class TrunkProvisioning(TrunkInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]): +class TrunkConfigProvisioning(TrunkConfigInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]): trunk_config: TrunkConfigBlockProvisioning -class Trunk(TrunkProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]): +class TrunkConfig(TrunkConfigProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]): trunk_config: TrunkConfigBlock diff --git a/products/product_types/trunk_config_common.py b/products/product_types/trunk_config_common.py index b098f499123565feab493e0e61bcfc6ed1d77470..06999907ebd9a776869a751bdd6d67785da69e61 100644 --- a/products/product_types/trunk_config_common.py +++ b/products/product_types/trunk_config_common.py @@ -4,13 +4,13 @@ from orchestrator.types import SubscriptionLifecycle from products.product_blocks.trunk_config_common import TrunkConfigCommonBlock, TrunkConfigCommonBlockInactive, TrunkConfigCommonBlockProvisioning -class TrunkInactive(SubscriptionModel, is_base=True, lifecycle=[SubscriptionLifecycle.INITIAL]): +class TrunkConfigCommonInactive(SubscriptionModel, is_base=True, lifecycle=[SubscriptionLifecycle.INITIAL]): trunk_config_common: TrunkConfigCommonBlockInactive -class TrunkProvisioning(TrunkInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]): +class TrunkConfigCommonProvisioning(TrunkConfigCommonInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]): trunk_config_common: TrunkConfigCommonBlockProvisioning -class Trunk(TrunkProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]): +class TrunkConfigCommon(TrunkConfigCommonProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]): trunk_config_common: TrunkConfigCommonBlock diff --git a/products/product_types/trunk_config_side.py b/products/product_types/trunk_config_side.py index 55b057170df441a772e6a12fe9899928158084e7..c0600fab107f37dc42e57263a7db20e7cdfbd34b 100644 --- a/products/product_types/trunk_config_side.py +++ b/products/product_types/trunk_config_side.py @@ -4,13 +4,13 @@ from orchestrator.types import SubscriptionLifecycle from products.product_blocks.trunk_config_side import TrunkConfigSideBlock, TrunkConfigSideBlockInactive, TrunkConfigSideBlockProvisioning -class TrunkInactive(SubscriptionModel, is_base=True, lifecycle=[SubscriptionLifecycle.INITIAL]): +class TrunkConfigSideInactive(SubscriptionModel, is_base=True, lifecycle=[SubscriptionLifecycle.INITIAL]): trunk_config_side: TrunkConfigSideBlockInactive -class TrunkProvisioning(TrunkInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]): +class TrunkConfigSideProvisioning(TrunkConfigSideInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]): trunk_config_side: TrunkConfigSideBlockProvisioning -class Trunk(TrunkProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]): +class TrunkConfigSide(TrunkConfigSideProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]): trunk_config_side: TrunkConfigSideBlock