sonic-net / sonic-mgmt

Configuration management examples for SONiC
Other
194 stars 712 forks source link

[Test Gap][upgrade_path] test_warm_upgrade_sad_path does not support SONiC neighbours #13627

Open andywongarista opened 2 months ago

andywongarista commented 2 months ago

Test Gap Description

As of today, test_warm_upgrade_sad_path testcase in the upgrade_path test package only supports EOS neighbours. This is problematic for situations where a vSONiC testbed (and SONiC neighbours) are needed.

This is evident in the code for ptftests/sad_path.py:

  def vm_connect(self):
      for neigh_vm in self.neigh_vms:
          self.vm_handles[neigh_vm] = Arista(neigh_vm, None, self.test_args)
          self.vm_handles[neigh_vm].connect()

Test Plan

test_warm_upgrade_sad_path should be updated to support vSONiC testbed.

Test environment

No response

Attach files (if any)

No response

vaibhavhd commented 2 months ago

Reached out to @andywongarista to see if Arista can help addressing the test gap here.

vaibhavhd commented 2 months ago

Please refer to:

SAD case test script on PTF: https://github.com/sonic-net/sonic-mgmt/blob/master/ansible/roles/test/files/ptftests/sad_path.py https://github.com/sonic-net/sonic-mgmt/blob/master/tests/common/helpers/sad_path.py

ETA from Arista: 08/15

saiarcot895 commented 2 months ago

FYI, you'll need to modify https://github.com/sonic-net/sonic-mgmt/blob/master/ansible/roles/test/files/ptftests/sonic.py. This needs some functions added/implemented, similar to what is done in https://github.com/sonic-net/sonic-mgmt/blob/master/ansible/roles/test/files/ptftests/arista.py. You may also want to update https://github.com/sonic-net/sonic-mgmt/blob/master/ansible/roles/test/files/ptftests/host_device.py to have some default behavior (or if something is common to both, it can be implemented here).