# Create IP trunk This the workflow that brings the subscription from `INACTIVE` to `PROVISIONING`. The deployment of a new IPtrunk consist in the following steps: - Fill the form with the necessary fields: - SID - Type - Speed - Nodes - LAG interfaces with description - LAG members with description - WFO will query IPAM to retrieve the IPv4/IPv6 Networks necessary for the trunk. The container to use is specified in `oss-params.json` - The configuration necessary to deploy the LAG is generated and applied to the destination nodes using the Ansible playbook `iptrunks.yaml` This is done first in a dry mode (without committing) and then in a real mode committing the configuration. The commit message has the `subscription_id` and the `process_id`. Included in this, is the configuration necessary to enable LLDP on the physical interfaces. - Once the LAG interface is deployed, another Ansible playbook is called to verify that IP traffic can actually flow over the trunk ( `iptrunk_checks.yaml`) - Once the check is passed, the ISIS configuration will take place using the same `iptrunks.yaml`. Also in this case first there is a dry run and then a commit. - After this step the ISIS adjacency gets checked using again `iptrunks_checks.yaml` The trunk is deployed with an initial ISIS metric of 90.000 to prevent traffic to pass.