Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[bgpcfgd] Add bgpcfgd support to advertise routes #9197

Merged
merged 4 commits into from
Nov 30, 2021

Conversation

shi-su
Copy link
Contributor

@shi-su shi-su commented Nov 8, 2021

Why I did it

Add bgpcfgd support to advertise routes.

How I did it

Make bgpcfgd subscribe to the ADVERTISE_NETWORK table in STATE_DB and configure route advertisement accordingly.

How to verify it

Added unit tests in bgpcfgd and verify on KVM about route advertisement.

Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106

Description for the changelog

A picture of a cute animal (not mandatory but encouraged)

@shi-su shi-su marked this pull request as ready for review November 8, 2021 21:03
@shi-su shi-su requested a review from lguohan as a code owner November 8, 2021 21:03
@shi-su shi-su requested a review from prsunny November 8, 2021 21:04
@@ -59,6 +60,8 @@ def do_work():
BBRMgr(common_objs, "CONFIG_DB", "BGP_BBR"),
# Static Route Managers
StaticRouteMgr(common_objs, "CONFIG_DB", "STATIC_ROUTE"),
# Route Advertisement Managers
AdvertiseRouteMgr(common_objs, "STATE_DB", "ADVERTISE_NETWORK"),
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this defined in the schema? if not, could you please raise a PR?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Defined the table in the schema. Pending on swss-common submodule upgrade #9275. PR test would fail before that one merges.

OP_ADD = 'ADD'


def set_handler(self, key, data):
Copy link
Contributor

Choose a reason for hiding this comment

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

does the set handler invoked when bgp is restarted? please confirm

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I checked the configuration after bgp restart and it would be invoked after bgp restart.

self.cfg_mgr.push_list(cmd_list)


def on_bgp_asn_change(self):
Copy link
Contributor

Choose a reason for hiding this comment

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

We may also want to add the new table to cleanup script to avoid stale entries in swss restarts

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added the table in the script you suggested to clean up in swss restart.

prsunny
prsunny previously approved these changes Nov 19, 2021
@prsunny
Copy link
Contributor

prsunny commented Nov 23, 2021

/azp run

@azure-pipelines
Copy link

You have several pipelines (over 10) configured to build pull requests in this repository. Specify which pipelines you would like to run by using /azp run [pipelines] command. You can specify multiple pipelines using a comma separated list.

@shi-su
Copy link
Contributor Author

shi-su commented Nov 23, 2021

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

prsunny
prsunny previously approved these changes Nov 23, 2021
@prsunny
Copy link
Contributor

prsunny commented Nov 29, 2021

/azp run

@azure-pipelines
Copy link

You have several pipelines (over 10) configured to build pull requests in this repository. Specify which pipelines you would like to run by using /azp run [pipelines] command. You can specify multiple pipelines using a comma separated list.

@prsunny
Copy link
Contributor

prsunny commented Nov 29, 2021

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@shi-su shi-su merged commit 4b35704 into sonic-net:master Nov 30, 2021
shi-su added a commit to shi-su/sonic-buildimage that referenced this pull request Jan 6, 2022
Why I did it
Add bgpcfgd support to advertise routes.

How I did it
Make bgpcfgd subscribe to the ADVERTISE_NETWORK table in STATE_DB and configure route advertisement accordingly.

How to verify it
Added unit tests in bgpcfgd and verify on KVM about route advertisement.
dgsudharsan pushed a commit to dgsudharsan/sonic-buildimage that referenced this pull request Jan 10, 2022
Why I did it
Add bgpcfgd support to advertise routes.

How I did it
Make bgpcfgd subscribe to the ADVERTISE_NETWORK table in STATE_DB and configure route advertisement accordingly.

How to verify it
Added unit tests in bgpcfgd and verify on KVM about route advertisement.
shi-su added a commit that referenced this pull request Jan 26, 2022
Why I did it
Cherry pick changes in #9197 to 202012 branch
Add bgpcfgd support to advertise routes.

How I did it
Make bgpcfgd subscribe to the ADVERTISE_NETWORK table in STATE_DB and configure route advertisement accordingly.

How to verify it
Added unit tests in bgpcfgd and verify on KVM about route advertisement.
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.

2 participants