Migrate edge port
A modification workflow that migrates an EdgePort to a different endpoint.
initial_input_form_generator(subscription_id)
Gather input from the operator on the new router that the EdgePort should connect to.
Source code in gso/workflows/edge_port/migrate_edge_port.py
update_subscription_model(subscription, node, name, partner_name, ae_members, description=None)
Update the EdgePort subscription object in the service database with the new values.
Source code in gso/workflows/edge_port/migrate_edge_port.py
reserve_interfaces_in_netbox(subscription)
Create the LAG interfaces in NetBox and attach the LAG interfaces to the physical interfaces.
Source code in gso/workflows/edge_port/migrate_edge_port.py
create_edge_port_dry(subscription, tt_number, process_id, partner_name)
Create a new edge port in the network as a dry run.
Source code in gso/workflows/edge_port/migrate_edge_port.py
create_edge_port_real(subscription, tt_number, process_id, partner_name)
Create a new edge port in the network for real.
Source code in gso/workflows/edge_port/migrate_edge_port.py
allocate_interfaces_in_netbox(subscription)
Allocate the interfaces in NetBox.
Source code in gso/workflows/edge_port/migrate_edge_port.py
confirm_continue_move_fiber()
Wait for confirmation from an operator that the physical fiber has been moved.
Source code in gso/workflows/edge_port/migrate_edge_port.py
confirm_graphs_looks_good_in_moodi()
Wait for confirmation from an operator that the new Migration looks good so far.
Source code in gso/workflows/edge_port/migrate_edge_port.py
confirm_l3_core_service_migrations_are_complete()
Wait for confirmation from an operator that all L3 core services have been completed successfully.
Source code in gso/workflows/edge_port/migrate_edge_port.py
confirm_l2_circuit_migrations_are_complete()
Wait for confirmation from an operator that all L2 circuit migrations have been completed successfully.
Source code in gso/workflows/edge_port/migrate_edge_port.py
migrate_l3_core_services_to_new_node(subscription_id, tt_number)
Migrate all L3 core services from the old EdgePort to the new EdgePort.
This sub migrations do not modify the L3 core services. The source and destination EdgePort remain the same for each service. The migration playbook is executed once for each service to apply the configuration on the new node and as a result, the service bindings port and BGP sessions related to this edge port of each service will be moved to the new node.
Source code in gso/workflows/edge_port/migrate_edge_port.py
migrate_l2_circuits_to_new_node(subscription_id, tt_number)
Migrate Layer2 circuits from the old EdgePort to the new EdgePort.
Source code in gso/workflows/edge_port/migrate_edge_port.py
disable_old_config_dry(subscription, process_id, tt_number)
Perform a dry run of disabling the old configuration on the routers.
Source code in gso/workflows/edge_port/migrate_edge_port.py
disable_old_config_real(subscription, process_id, tt_number)
Disable old configuration on the routers.
Source code in gso/workflows/edge_port/migrate_edge_port.py
inform_operator_traffic_check()
Wait for confirmation from an operator that the results from the pre-checks look OK.
In case the results look OK, the workflow can continue. If the results don't look OK, the workflow can still be aborted at this time, without the subscription going out of sync. Moodi will also not start, and the subscription model has not been updated yet. Effectively, this prevents any changes inside the orchestrator from occurring. The one thing that must be rolled back manually, is the deactivated configuration that sits on the source device.
Source code in gso/workflows/edge_port/migrate_edge_port.py
migrate_edge_port()
Migrate an Edge Port.