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

addons: vxlan: fix VNI filter on single VXLAN device #271

Merged
merged 1 commit into from
Sep 4, 2023

Conversation

vincentbernat
Copy link
Contributor

In af8d5db, the transformation of vnis (list) to vnisd (dictionary) left a reference to vnis which is now undefined. We just remove the line as the conversion from range to ints is done earlier in the function.

In af8d5db, the transformation of
`vnis` (list) to `vnisd` (dictionary) left a reference to `vnis` which
is now undefined. We just remove the line as the conversion from range
to ints is done earlier in the function.

Signed-off-by: Vincent Bernat <[email protected]>
@julienfortin julienfortin merged commit 10b9cf6 into CumulusNetworks:master Sep 4, 2023
@vincentbernat
Copy link
Contributor Author

Side question: is it expected the source code of ifupdown2 in Cumulus is not distributed anymore? I did check on the latest Cumulus VX and the code is already fixed there and I wanted to check if there was any other diff with GitHub. Since it's Python, one can just take the binary package. The diff seems substantial between the two codebases:

 10:28 ❱ git diff --stat
 etc/network/ifupdown2/addons.conf       |  13 +---
 etc/network/ifupdown2/ifupdown2.conf    |  12 ++--
 ifupdown2/__init__.py                   |   2 +-
 ifupdown2/addons/address.py             |  30 ++++-----
 ifupdown2/addons/addressvirtual.py      |   6 +-
 ifupdown2/addons/bond.py                |   7 +--
 ifupdown2/addons/bridge.py              | 161 ++++++++++++++++++++++-------------------------
 ifupdown2/addons/bridgevlan.py          |   3 +-
 ifupdown2/addons/dhcp.py                |  22 +++++--
 ifupdown2/addons/ethtool.py             | 128 +++++--------------------------------
 ifupdown2/addons/link.py                |   9 ++-
 ifupdown2/addons/mstpctl.py             |  35 ++++-------
 ifupdown2/addons/tunnel.py              |   2 +-
 ifupdown2/addons/usercmds.py            |   3 +-
 ifupdown2/addons/vlan.py                |  66 ++++++++++---------
 ifupdown2/addons/vrf.py                 |  76 +++++++---------------
 ifupdown2/addons/vrrpd.py               |   4 +-
 ifupdown2/addons/vxlan.py               |  37 ++++++-----
 ifupdown2/ifupdown/argv.py              |  18 +++---
 ifupdown2/ifupdown/client.py            |   8 ++-
 ifupdown2/ifupdown/graph.py             |   9 ++-
 ifupdown2/ifupdown/iface.py             |   8 +--
 ifupdown2/ifupdown/ifupdownmain.py      | 220 +++++++++++++++++++++++++++-------------------------------------
 ifupdown2/ifupdown/main.py              | 233 +++++++++++++++++++++++++++++++++-----------------------------------
 ifupdown2/ifupdown/networkinterfaces.py | 171 +++++++++++++++++++++++++++++++-------------------
 ifupdown2/ifupdown/policymanager.py     |   1 -
 ifupdown2/ifupdown/scheduler.py         |  30 +++------
 ifupdown2/ifupdown/statemanager.py      |  43 ++++++-------
 ifupdown2/ifupdown/template.py          |   3 +-
 ifupdown2/ifupdown/utils.py             |  43 +++++++------
 ifupdown2/ifupdownaddons/dhclient.py    |   2 +-
 ifupdown2/ifupdownaddons/modulebase.py  |  34 +++++-----
 ifupdown2/ifupdownaddons/mstpctlutil.py |   7 +--
 ifupdown2/ifupdownaddons/systemutils.py |   6 +-
 ifupdown2/ifupdownaddons/utilsbase.py   |   2 +-
 ifupdown2/lib/addon.py                  |   8 ++-
 ifupdown2/lib/base_objects.py           |   2 +-
 ifupdown2/lib/gvgen.py                  |   6 +-
 ifupdown2/lib/io.py                     |  10 ++-
 ifupdown2/lib/iproute2.py               |  26 +++-----
 ifupdown2/lib/log.py                    |   1 +
 ifupdown2/lib/nlcache.py                |  26 ++++----
 ifupdown2/lib/sysfs.py                  |   2 +-
 ifupdown2/nlmanager/nlmanager.py        |   4 +-
 ifupdown2/nlmanager/nlpacket.py         |  10 +--
 ifupdown2/sbin/start-networking         |   5 ++
 46 files changed, 693 insertions(+), 861 deletions(-)

However, many differences are minor and I suppose one of the code base (Nvidia one) got through a linter. I only noticed a few differences:

  • ring settings (on GitHub)
  • DHCP no wait on reload (on Nvidia)
  • network/interfaces parsing (hard to know exactly what it is, may be some refactoring)

This is just a cursory glance and there may be small changes that are bugfix that I did miss (I think I would have likely missed the one in this PR).

@vincentbernat
Copy link
Contributor Author

FI, I have put the changes in PR #272.

@julienfortin
Copy link
Contributor

is it expected the source code of ifupdown2 in Cumulus is not distributed anymore?

@vincentbernat we use an internal repository for ifupdown2 where we actively push our changes daily/weekly.
Some changes are specific to Cumulus Linux and diverge from upstream debian (i.e. default values and Cumulus specific features, etc).

So it takes quite some time to review the changes (and diff between github/internal), and making sure they don't break upstream (and CL ifupdown2). I pretty much maintain this github repo on my free time, hence the long delay for the PRs, open issues and sync between github/internal repo.

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