Skip to content

Fix conn_graph_facts issues of anchor and filename options#2249

Merged
wangxin merged 2 commits intosonic-net:masterfrom
wangxin:conn_graph_fix_pr
Sep 22, 2020
Merged

Fix conn_graph_facts issues of anchor and filename options#2249
wangxin merged 2 commits intosonic-net:masterfrom
wangxin:conn_graph_fix_pr

Conversation

@wangxin
Copy link
Collaborator

@wangxin wangxin commented Sep 21, 2020

Description of PR

Summary:
Fixes # (issue)

Fix the conn_graph_facts issues introduced in recent changes.

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • Test case(new/improvement)

Approach

What is the motivation for this PR?

The recent changes for conn_graph_facts introduced two issues:

  • anchor option issue
    When use anchor to get the whole connection graph facts for configuring root
    fanout switch, the host and hosts options are not given. So the hostnames
    variable will have value [None] which will not be evaluated to False. Then the
    target variable will take the value of hostnames, i.e. [None]. Eventually the empty
    graph file will be used.

  • filename option issue
    When the filename argument is specified, need to open the specified file under
    path LAB_GRAPHFILE_PATH.

How did you do it?

  • Fix the issue of parsing wrong connection graph file when the anchor option is used.
  • Fix the issue of unable to find connection graph file when the filename option is used.
  • Set host, hosts and anchor mutually exclusive.
  • Update the documentation.

How did you verify/test it?

Prepared a temporary ansible playbook to call the conn_graph_facts module with different option combinations, including negative combinations.

Any platform specific information?

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

Documentation

* `anchor` option issue
When use `anchor` to get the whole connection graph facts for configuring root
fanout switch, the `host` and `hosts` options are not given. So the `hostnames`
variable will have value [None] which will not be evaluated to False. Then the
`target` variable will take the value of `hostnames`, i.e. [None]. Eventually the empty
graph file will be used.

* `filename` option issue
When the `filename` argument is specified, need to open the specified file under
path LAB_GRAPHFILE_PATH.

Changes:
* Fix the issue of parsing wrong connection graph file when the `anchor` option
  is used.
* Fix the issue of unable to find connection graph file when the `filename`
  option is used.
* Set host, hosts and anchor mutually exclusive.
* Update the documentation.

Signed-off-by: Xin Wang <[email protected]>
@wangxin wangxin requested review from a team and yxieca September 21, 2020 05:26
Copy link
Collaborator

@lolyu lolyu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@wangxin
Copy link
Collaborator Author

wangxin commented Sep 22, 2020

retest this please

@wangxin wangxin merged commit 9adf5ad into sonic-net:master Sep 22, 2020
@wangxin wangxin deleted the conn_graph_fix_pr branch September 24, 2020 02:36
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
…submodule head (sonic-net#11705)

Kernel:
* 86c4b66 2022-07-28 | [Mellanox] Add new kernel patches from HW-MGMT package V.7.0020.3005 (sonic-net#287) (HEAD -> 202205) [Kebo Liu]
* 3a8416a 2022-07-05 | [patch] mlxsw: i2c: Prevent transaction execution for special chip (sonic-net#279) [Stepan Blyshchak]

swss:
* 3f69944 2022-08-10 | Set internal class state to reflect the actual state (sonic-net#2410) (HEAD -> 202205, tag: foo) [Prince Sunny]
* 87e98eb 2022-08-09 | [portsorch] Expose supported FEC modes to STABE_DB and check whether FEC mode is supported before setting it (sonic-net#2400) [Stephen Sun]
* e71ab99 2022-07-29 | portsorch: initial support for link-training (sonic-net#2359) [Dante (Kuo-Jung) Su]
* ed5e5be 2022-07-08 | Port configuration incremental update support (sonic-net#2305) [Junchao-Mellanox]

utilities:
* 0df3ba8 2022-08-12 | Revert "Improve the way to check port type of RJ45 port (sonic-net#2249)" (HEAD -> 202205) [Ying Xie]
* 9b21903 2022-08-12 | Fix test failure in dump table test in 202205 (sonic-net#2307) (HEAD -> 202205, github/202205) [Stephen Sun]
* 750d1db 2022-08-11 | Convert IPv6 addresses to lowercase in apply-patch (sonic-net#2299) (HEAD -> 202205) [dbarashinvd]
* 555947e 2022-08-09 | [config][muxcable] add support to enable/disable ycable telemetry (sonic-net#2297) [vdahiya12]
* 978f416 2022-08-09 | Fix GCU bug when backend service modifying config (sonic-net#2295) [jingwenxie]
* 8fed381 2022-08-02 | [intfutil] Check whether the FEC mode is supported on the platform before configuring it to CONFIG_DB (sonic-net#2223) (github/202205) [Stephen Sun]
* a1a09e4 2022-07-29 | Improve the way to check port type of RJ45 port (sonic-net#2249) [Stephen Sun]
* 9bdbfb8 2022-05-19 | sonic-utils: initial support for link-training (sonic-net#2071) [Dante (Kuo-Jung) Su]
* c088ec4 2022-08-10 | Support to enable fips for the command sonic_installer (sonic-net#2154) (sonic-net#2303) [xumia]

platform-daemon:
* 767cfb6 2022-08-09 | [ycabled] add capability to enable/disable telemetry (sonic-net#279) (HEAD -> 202205) [vdahiya12]

linkmgrd:
* cf1ba2b 2022-08-12 | wait for handler to be completed (sonic-net#114) (HEAD -> 202205, github/202205) [Jing Zhang]
* e99026c 2022-08-11 | [lgtm]: add uuid-dev to lgtm prepare (sonic-net#112) (HEAD -> 202205) [Jing Zhang]
* bd1b7f0 2022-08-11 | Adjust `DbInterfaceRaceConditionCheck` to Wait Longer for Handlers to be executed (sonic-net#111) (HEAD -> 202205, github/202205) [Jing Zhang]
* e9dc6b2 2022-08-11 | Backoff mux probing for server down scenario (sonic-net#106) [Jing Zhang]
* 0d61171 2022-08-09 | Fix race condition caused by strand `wrap` method (sonic-net#104) [Jing Zhang]
* e9ede7d 2022-07-02 | Enforce switch after config mux to active (sonic-net#95) [Longxiang Lyu]
* 15dbc30 2022-06-30 | Add unittest to verify mux toggle active (sonic-net#94) [Longxiang Lyu]

Signed-off-by: Ying Xie <[email protected]>
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
utilities:
* fbf82b9 2022-08-08 | Fix the issue that sonic_platform is not installed on vs image (sonic-net#2300) (HEAD -> 202205, github/202205) [Stephen Sun]
* 19a3540 2022-08-13 | Revert "Revert "Improve the way to check port type of RJ45 port (sonic-net#2249)"" [Ying Xie]

Signed-off-by: Ying Xie <[email protected]>

Signed-off-by: Ying Xie <[email protected]>
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.

3 participants