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

added mocked customer_id

parent 88e02495
No related branches found
No related tags found
1 merge request!57added mocked customer_id
Pipeline #83823 passed
......@@ -14,3 +14,5 @@ oss-params.json
docs/build
docs/vale/styles/*
!docs/vale/styles/Vocab/
.idea
def all_customers() -> list[dict]:
return [
{
"id": "8f0df561-ce9d-4d9c-89a8-7953d3ffc961",
"name": "Geant",
},
]
import ipaddress
import re
from uuid import uuid4
from orchestrator.db.models import ProductTable, SubscriptionTable
......@@ -19,6 +18,7 @@ from gso.products.product_types.device import DeviceInactive, DeviceProvisioning
from gso.products.product_types.site import Site
from gso.services import ipam, provisioning_proxy
from gso.services.provisioning_proxy import pp_interaction
from gso.workflows.utils import customer_selector
def site_selector() -> Choice:
......@@ -43,6 +43,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
class Config:
title = product_name
customer: customer_selector() # type: ignore
device_site: site_selector() # type: ignore
hostname: str
ts_port: int
......@@ -56,8 +57,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
@step("Create subscription")
def create_subscription(product: UUIDstr) -> State:
subscription = DeviceInactive.from_product_id(product, uuid4())
def create_subscription(product: UUIDstr, customer: UUIDstr) -> State:
subscription = DeviceInactive.from_product_id(product, customer)
return {
"subscription": subscription,
......
from uuid import uuid4
from orchestrator.db.models import ProductTable, SubscriptionTable
from orchestrator.forms import FormPage
from orchestrator.forms.validators import Choice, UniqueConstrainedList
......@@ -15,6 +13,7 @@ from gso.products.product_types.device import Device
from gso.products.product_types.iptrunk import IptrunkInactive, IptrunkProvisioning
from gso.services import ipam, provisioning_proxy
from gso.services.provisioning_proxy import pp_interaction
from gso.workflows.utils import customer_selector
def initial_input_form_generator(product_name: str) -> FormGenerator:
......@@ -37,6 +36,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
class Config:
title = product_name
customer: customer_selector() # type: ignore
geant_s_sid: str
iptrunk_description: str
iptrunk_type: IptrunkType
......@@ -86,8 +86,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
@step("Create subscription")
def create_subscription(product: UUIDstr) -> State:
subscription = IptrunkInactive.from_product_id(product, uuid4())
def create_subscription(product: UUIDstr, customer: UUIDstr) -> State:
subscription = IptrunkInactive.from_product_id(product, customer)
return {
"subscription": subscription,
......
from uuid import uuid4
from orchestrator.forms import FormPage
from orchestrator.targets import Target
from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr
......@@ -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_types import site
from gso.workflows.utils import customer_selector
def initial_input_form_generator(product_name: str) -> FormGenerator:
......@@ -16,6 +15,7 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
class Config:
title = product_name
customer: customer_selector() # type: ignore
site_name: str
site_city: str
site_country: str
......@@ -33,8 +33,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator:
@step("Create subscription")
def create_subscription(product: UUIDstr) -> State:
subscription = site.SiteInactive.from_product_id(product, uuid4())
def create_subscription(product: UUIDstr, customer: UUIDstr) -> State:
subscription = site.SiteInactive.from_product_id(product, customer)
return {
"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 =
-r requirements.txt
commands =
isort -c .
ruff .
black --check .
mypy .
flake8
coverage erase
coverage run --source gso -m pytest {posargs}
coverage xml
coverage html
# coverage report --fail-under 80
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.
Finish editing this message first!
Please register or to comment