Skip to content

Tagging DPU steps in the ansible minigraph scenario.#22142

Merged
wangxin merged 1 commit intosonic-net:masterfrom
nikamirrr:tagging_dpu_ansible_steps
Feb 10, 2026
Merged

Tagging DPU steps in the ansible minigraph scenario.#22142
wangxin merged 1 commit intosonic-net:masterfrom
nikamirrr:tagging_dpu_ansible_steps

Conversation

@nikamirrr
Copy link
Copy Markdown
Contributor

@nikamirrr nikamirrr commented Jan 27, 2026

Description of PR

DPU config can be deployed after the switch configuration.

Minigraph deployment command has been extended:
Deploy minigraph for both Switch and DPU:

./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv 

Deploy minigraph for Switch only:

./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --skip-tags "dpu_config" 

Deploy minigraph for DPU only:

./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --tags "dpu_config"

Summary:
Fixes the timing issues for the switch to be ready to lease the ips to DPUs and to DPUs to be ready to receive the configuration.

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • New Test case
    • Skipped for non-supported platforms
  • Test case improvement

Back port request

  • 202205
  • 202305
  • 202311
  • 202405
  • 202411
  • 202505
  • 202511

Approach

What is the motivation for this PR?

Allow the DPU config separate from the switch

How did you do it?

Tag the DPU-related steps in ansible. Use tags

# Deploy minigraph for both Switch and DPU:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv
# Deploy minigraph for Switch only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --skip-tags "dpu_config"
# Deploy minigraph for DPU only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --tags "dpu_config"

How did you verify/test it?

Deployed on the smartswitch

Any platform specific information?

Supported testbed topology if it's a new test case?

Documentation

@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run

@github-actions github-actions bot requested review from r12f, sdszhang and wangxin January 27, 2026 19:00
@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@nikamirrr nikamirrr force-pushed the tagging_dpu_ansible_steps branch from 2688785 to 6810458 Compare January 27, 2026 19:00
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@nikamirrr
Copy link
Copy Markdown
Contributor Author

/azp runw

@azure-pipelines
Copy link
Copy Markdown

Command 'runw' is not supported by Azure Pipelines.

Supported commands
  • help:
    • Get descriptions, examples and documentation about supported commands
    • Example: help "command_name"
  • list:
    • List all pipelines for this repository using a comment.
    • Example: "list"
  • run:
    • Run all pipelines or specific pipelines for this repository using a comment. Use this command by itself to trigger all related pipelines, or specify specific pipelines to run.
    • Example: "run" or "run pipeline_name, pipeline_name, pipeline_name"
  • where:
    • Report back the Azure DevOps orgs that are related to this repository and org
    • Example: "where"

See additional documentation.

@nikamirrr
Copy link
Copy Markdown
Contributor Author

/azpw run

@mssonicbld
Copy link
Copy Markdown
Collaborator

/AzurePipelines run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@nikamirrr nikamirrr force-pushed the tagging_dpu_ansible_steps branch from 6810458 to 08881c0 Compare January 27, 2026 21:41
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

DPU config can be deployed after the switch configuration.

Minigraph deployment command has been extended:
Deploy minigraph for both Switch and DPU:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv
Deploy minigraph for Switch only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --skip-tags "dpu_config"
Deploy minigraph for DPU only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --tags "dpu_config"

Signed-off-by: nmirin <nikolay.a.mirin@gmail.com>
@nikamirrr nikamirrr force-pushed the tagging_dpu_ansible_steps branch from 08881c0 to f90c95b Compare January 28, 2026 03:02
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@nikamirrr
Copy link
Copy Markdown
Contributor Author

/azpw run

@mssonicbld
Copy link
Copy Markdown
Collaborator

/AzurePipelines run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@nikamirrr
Copy link
Copy Markdown
Contributor Author

/azpw run

@mssonicbld
Copy link
Copy Markdown
Collaborator

/AzurePipelines run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@nikamirrr
Copy link
Copy Markdown
Contributor Author

/azpw run

@mssonicbld
Copy link
Copy Markdown
Collaborator

/AzurePipelines run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@wangxin
Copy link
Copy Markdown
Collaborator

wangxin commented Jan 29, 2026

I still have a question. If deploy-mg without specifying any tags, both switch and DPU will be configured. There still could be timing issue.
If use separate commands to configure switch and DPU, it breaks the assumption of single run of deploy-mg to configure the testbed devices. The infrastructure code could be impacted and need to be updated to run deploy-mg twice with different argument. This would introduce complexity to the possible test automation infrastructure code. There is a possibility of breaking something. I prefer not to break assumptions if there is a choice.

@nikamirrr
Copy link
Copy Markdown
Contributor Author

nikamirrr commented Jan 29, 2026

I still have a question. If deploy-mg without specifying any tags, both switch and DPU will be configured. There still could be timing issue. If use separate commands to configure switch and DPU, it breaks the assumption of single run of deploy-mg to configure the testbed devices. The infrastructure code could be impacted and need to be updated to run deploy-mg twice with different argument. This would introduce complexity to the possible test automation infrastructure code. There is a possibility of breaking something. I prefer not to break assumptions if there is a choice.

We are not changing the past behavior. If ran without any tag options it will run as before.

The other alternative would be to rearrange the DPU config tasks to the very end of the scenario or to modify the code that invokes the scenario, and make the DPU image installation one of the minigraph steps. All those are more disruptive to the current situation.
We chose to invoke the minigraph deployment twice, but the previous path: invoke once without any tag parameters still works as before.

If one runs sonic-to-sonic install for DPU, then using a single minigraph command will work as before.
In production environment this works. Regardless of the version, the DPU is running the good installation of SONiC which picks up the config as soon as the switch is booted in the minigraph deployment and is ready to receive the new config.
But it the dev environment we cannot expect a Switch and/or DPU to always be in the state to receive a sonic-to-sonic installation, so we use a more universal method to deploy the DPU image.
But this requires that when the DPU image is installed the switch is already updated and configured, which is not the case if we install the DPU image before the minigraph to be able to configure it in the minigraph.

@wangxin wangxin merged commit 5bdd9bc into sonic-net:master Feb 10, 2026
22 checks passed
nnelluri-cisco pushed a commit to nnelluri-cisco/sonic-mgmt that referenced this pull request Feb 12, 2026
DPU config can be deployed after the switch configuration.

Minigraph deployment command has been extended:
Deploy minigraph for both Switch and DPU:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv
Deploy minigraph for Switch only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --skip-tags "dpu_config"
Deploy minigraph for DPU only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --tags "dpu_config"

Signed-off-by: nmirin <nikolay.a.mirin@gmail.com>
Signed-off-by: nnelluri-cisco <nnelluri@cisco.com>
anilal-amd pushed a commit to anilal-amd/anilal-forked-sonic-mgmt that referenced this pull request Feb 19, 2026
DPU config can be deployed after the switch configuration.

Minigraph deployment command has been extended:
Deploy minigraph for both Switch and DPU:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv
Deploy minigraph for Switch only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --skip-tags "dpu_config"
Deploy minigraph for DPU only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --tags "dpu_config"

Signed-off-by: nmirin <nikolay.a.mirin@gmail.com>
Signed-off-by: Zhuohui Tan <zhuohui.tan@amd.com>
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
…tomatically (sonic-net#22142)

#### Why I did it
src/sonic-linux-kernel
```
* ccde25c - (HEAD -> 202405, origin/202405) [202405] Update to Linux 6.1.123 (sonic-net#460) (9 days ago) [Saikrishna Arcot]
```
#### How I did it
#### How to verify it
#### Description for the changelog
ravaliyel pushed a commit to ravaliyel/sonic-mgmt that referenced this pull request Mar 12, 2026
DPU config can be deployed after the switch configuration.

Minigraph deployment command has been extended:
Deploy minigraph for both Switch and DPU:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv
Deploy minigraph for Switch only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --skip-tags "dpu_config"
Deploy minigraph for DPU only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --tags "dpu_config"

Signed-off-by: nmirin <nikolay.a.mirin@gmail.com>
Signed-off-by: Ravali Yeluri (WIPRO LIMITED) <v-ryeluri@microsoft.com>
abhishek-nexthop pushed a commit to nexthop-ai/sonic-mgmt that referenced this pull request Mar 17, 2026
DPU config can be deployed after the switch configuration.

Minigraph deployment command has been extended:
Deploy minigraph for both Switch and DPU:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv
Deploy minigraph for Switch only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --skip-tags "dpu_config"
Deploy minigraph for DPU only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --tags "dpu_config"

Signed-off-by: nmirin <nikolay.a.mirin@gmail.com>
Signed-off-by: Abhishek <abhishek@nexthop.ai>
ravaliyel pushed a commit to ravaliyel/sonic-mgmt that referenced this pull request Mar 27, 2026
DPU config can be deployed after the switch configuration.

Minigraph deployment command has been extended:
Deploy minigraph for both Switch and DPU:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv
Deploy minigraph for Switch only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --skip-tags "dpu_config"
Deploy minigraph for DPU only:
./testbed-cli.sh deploy-mg {{SWITCH}}-{{TOPO}} lab vault -vvvvv --tags "dpu_config"

Signed-off-by: nmirin <nikolay.a.mirin@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants