Skip to content

Redeploy base config

A workflow that re-deploys base config on a router.

When a new router is deployed, it is loaded with the current version of configuration that contain the bare necessities. For various reasons, this template may change, and the resulting configuration follows from this. To update a router 'in the wild' where this change should be reflected, the workflow redeploy_base_config is used.

This workflow only takes a trouble ticket number as initial input, and deploys the base configuration, first as a dry run. After confirmation by an operator, the configuration is committed to the machine, and this completes the workflow.

redeploy_base_config()

Redeploy base config on an existing router.

  • Perform a dry run of deployment
  • Redeploy base config
Source code in gso/workflows/router/redeploy_base_config.py
@workflow(
    "Redeploy base config",
    initial_input_form=wrap_modify_initial_input_form(_initial_input_form),
    target=Target.MODIFY,
)
def redeploy_base_config() -> StepList:
    """Redeploy base config on an existing router.

    * Perform a dry run of deployment
    * Redeploy base config
    """
    return (
        begin
        >> store_process_subscription(Target.MODIFY)
        >> unsync
        >> lso_interaction(deploy_base_config_dry)
        >> lso_interaction(deploy_base_config_real)
        >> resync
        >> done
    )