Skip to content
Snippets Groups Projects
Commit 96a041ef authored by Mohammad Torkashvand's avatar Mohammad Torkashvand
Browse files

added fake customer_id

parent 88e02495
No related branches found
No related tags found
1 merge request!58added fake customer_id
Pipeline #83826 passed
...@@ -14,3 +14,5 @@ oss-params.json ...@@ -14,3 +14,5 @@ oss-params.json
docs/build docs/build
docs/vale/styles/* docs/vale/styles/*
!docs/vale/styles/Vocab/ !docs/vale/styles/Vocab/
.idea
from typing import Optional
def all_customers() -> list[dict]:
return [
{
"id": "8f0df561-ce9d-4d9c-89a8-7953d3ffc961",
"name": "Geant",
},
]
def get_customer_by_name(name: str) -> Optional[dict]:
for customer in all_customers():
if customer["name"] == name:
return customer
return None
import ipaddress import ipaddress
import re import re
from uuid import uuid4
from orchestrator.db.models import ProductTable, SubscriptionTable from orchestrator.db.models import ProductTable, SubscriptionTable
...@@ -19,6 +18,7 @@ from gso.products.product_types.device import DeviceInactive, DeviceProvisioning ...@@ -19,6 +18,7 @@ from gso.products.product_types.device import DeviceInactive, DeviceProvisioning
from gso.products.product_types.site import Site from gso.products.product_types.site import Site
from gso.services import ipam, provisioning_proxy from gso.services import ipam, provisioning_proxy
from gso.services.provisioning_proxy import pp_interaction from gso.services.provisioning_proxy import pp_interaction
from gso.workflows.utils import customer_selector
def site_selector() -> Choice: def site_selector() -> Choice:
...@@ -43,6 +43,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: ...@@ -43,6 +43,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
class Config: class Config:
title = product_name title = product_name
customer: customer_selector() # type: ignore
device_site: site_selector() # type: ignore device_site: site_selector() # type: ignore
hostname: str hostname: str
ts_port: int ts_port: int
...@@ -56,8 +57,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: ...@@ -56,8 +57,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
@step("Create subscription") @step("Create subscription")
def create_subscription(product: UUIDstr) -> State: def create_subscription(product: UUIDstr, customer: UUIDstr) -> State:
subscription = DeviceInactive.from_product_id(product, uuid4()) subscription = DeviceInactive.from_product_id(product, customer)
return { return {
"subscription": subscription, "subscription": subscription,
......
from uuid import uuid4
from orchestrator.db.models import ProductTable, SubscriptionTable from orchestrator.db.models import ProductTable, SubscriptionTable
from orchestrator.forms import FormPage from orchestrator.forms import FormPage
from orchestrator.forms.validators import Choice, UniqueConstrainedList from orchestrator.forms.validators import Choice, UniqueConstrainedList
...@@ -15,6 +13,7 @@ from gso.products.product_types.device import Device ...@@ -15,6 +13,7 @@ from gso.products.product_types.device import Device
from gso.products.product_types.iptrunk import IptrunkInactive, IptrunkProvisioning from gso.products.product_types.iptrunk import IptrunkInactive, IptrunkProvisioning
from gso.services import ipam, provisioning_proxy from gso.services import ipam, provisioning_proxy
from gso.services.provisioning_proxy import pp_interaction from gso.services.provisioning_proxy import pp_interaction
from gso.workflows.utils import customer_selector
def initial_input_form_generator(product_name: str) -> FormGenerator: def initial_input_form_generator(product_name: str) -> FormGenerator:
...@@ -37,6 +36,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: ...@@ -37,6 +36,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
class Config: class Config:
title = product_name title = product_name
customer: customer_selector() # type: ignore
geant_s_sid: str geant_s_sid: str
iptrunk_description: str iptrunk_description: str
iptrunk_type: IptrunkType iptrunk_type: IptrunkType
...@@ -86,8 +86,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: ...@@ -86,8 +86,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
@step("Create subscription") @step("Create subscription")
def create_subscription(product: UUIDstr) -> State: def create_subscription(product: UUIDstr, customer: UUIDstr) -> State:
subscription = IptrunkInactive.from_product_id(product, uuid4()) subscription = IptrunkInactive.from_product_id(product, customer)
return { return {
"subscription": subscription, "subscription": subscription,
......
from uuid import uuid4
from orchestrator.forms import FormPage from orchestrator.forms import FormPage
from orchestrator.targets import Target from orchestrator.targets import Target
from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr
...@@ -9,6 +7,7 @@ from orchestrator.workflows.utils import wrap_create_initial_input_form ...@@ -9,6 +7,7 @@ from orchestrator.workflows.utils import wrap_create_initial_input_form
from gso.products.product_blocks import site as site_pb from gso.products.product_blocks import site as site_pb
from gso.products.product_types import site from gso.products.product_types import site
from gso.workflows.utils import customer_selector
def initial_input_form_generator(product_name: str) -> FormGenerator: def initial_input_form_generator(product_name: str) -> FormGenerator:
...@@ -16,6 +15,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: ...@@ -16,6 +15,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
class Config: class Config:
title = product_name title = product_name
customer: customer_selector() # type: ignore
site_name: str site_name: str
site_city: str site_city: str
site_country: str site_country: str
...@@ -33,8 +33,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: ...@@ -33,8 +33,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
@step("Create subscription") @step("Create subscription")
def create_subscription(product: UUIDstr) -> State: def create_subscription(product: UUIDstr, customer: UUIDstr) -> State:
subscription = site.SiteInactive.from_product_id(product, uuid4()) subscription = site.SiteInactive.from_product_id(product, customer)
return { return {
"subscription": subscription, "subscription": subscription,
......
from orchestrator.forms.validators import Choice
from gso.services.crm import all_customers
def customer_selector() -> Choice:
customers = {}
for customer in all_customers():
customers[customer["id"]] = customer["name"]
return Choice("Select a customer", zip(customers.keys(), customers.items())) # type: ignore
...@@ -19,14 +19,14 @@ deps = ...@@ -19,14 +19,14 @@ deps =
-r requirements.txt -r requirements.txt
commands = commands =
isort -c .
ruff .
black --check .
mypy .
flake8
coverage erase coverage erase
coverage run --source gso -m pytest {posargs} coverage run --source gso -m pytest {posargs}
coverage xml coverage xml
coverage html coverage html
# coverage report --fail-under 80 # coverage report --fail-under 80
coverage report coverage report
isort -c .
ruff .
black --check .
mypy .
flake8
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment