A creation workflow for adding an existing Imported Transit Provider Port to the service database.
create_subscription(partner)
Create a new subscription object in the database.
Source code in gso/workflows/placement_port/transit_provider_port/create_imported_transit_provider_port.py
| @step("Create subscription")
def create_subscription(partner: str) -> dict:
"""Create a new subscription object in the database."""
partner_id = get_partner_by_name(partner).partner_id
product_id = get_product_id_by_name(ProductName.IMPORTED_TRANSIT_PROVIDER_PORT)
subscription = ImportedTransitProviderPortInactive.from_product_id(product_id, partner_id)
return {"subscription": subscription, "subscription_id": subscription.subscription_id}
|
create_imported_transit_provider_port()
Create an Imported Transit Provider Port without provisioning it.
Source code in gso/workflows/placement_port/transit_provider_port/create_imported_transit_provider_port.py
| @workflow(
"Create Imported Transit Provider Port",
initial_input_form=initial_input_generator,
target=Target.CREATE,
)
def create_imported_transit_provider_port() -> StepList:
"""Create an Imported Transit Provider Port without provisioning it."""
return (
begin
>> create_subscription
>> store_process_subscription()
>> initialize_subscription
>> set_status(SubscriptionLifecycle.ACTIVE)
>> resync
>> done
)
|