Skip to content

Conversation

@ofiliz
Copy link
Contributor

@ofiliz ofiliz commented Apr 20, 2016

This change implements a reusable standards-compliant netlink package with an interface that can be easily programmed by various clients including libnetwork plugin. It has built-in logging and some unit tests. It also adds more netlink functionality like interface up/down, mac address changes.

The new package is object-oriented, provides both higher layer (e.g. CreateLink) and lower layer (netlink.message.send()) APIs, has typed netlink attributes for better reusability and readability, has a separate socket objects that gets reused across multiple requests for better performance, has built-in logging and unit tests.

@ofiliz ofiliz self-assigned this Apr 20, 2016
@sharmasushant
Copy link
Contributor

I do not follow why are we removing the netlink package and rewriting the same thing? If you want to extract some common code in multiple methods, please do it. You could have also provided code review comments on my change. But I do not follow why are we deleting the whole package and rewriting it.

@ofiliz ofiliz merged commit 0a14b7f into master Apr 26, 2016
tamilmani1989 referenced this pull request in tamilmani1989/azure-container-networking Aug 22, 2017
huntergregory added a commit that referenced this pull request Oct 20, 2022
huntergregory added a commit that referenced this pull request Oct 21, 2022
huntergregory added a commit that referenced this pull request Oct 25, 2022
vakalapa pushed a commit that referenced this pull request Oct 31, 2022
* wip with StrictlyHasSetPolicies approach

* better approaching of getting all set policies

* wip for rigorous win dp UTs

* marshal setpolicies in hns mock and dont short circuit in UTs

* policy stuff and update test cases

* marshal ACLs in hns mock

* more UTs and minor refinements

* option to apply dp or not

* address cmp.Equal and t.Helper comments

* dpEvent returns error and better defined concurrency

* remove unnecessary logic in concurrent test code

* approach #3 emulating cyclonus

* namespace method for podmetadata

* refactor Action structure and TestCase wait group behavior

* hnsactions and renaming a file

* refactor to Serial and ThreadedTestCase structs, and move files to dp pkg

* hns latency hard coded to be the same for all threaded test cases

* fix build error after rebasing

* export fake hns network id

* address comments on multierr and terminology

* add comment about pod metadata in controller

* pod update and delete actions

* move ApplyDPAction to top

* namespace actions and rename some fields of UpdatePod

* adding code comments

* reconcile action

* fix bug in key-val ipsets

* implement all previous test cases

* fix incorrect error wrapping in dataplane.go

* multi-job tests are working. updated terminology from routine to job

* MultiErrManager instead of dependency for multierr

* return to the channel approach for multierr, now using FailNow instead of asserting on channel length

* fix some lints

* fix more lints
rjdenney pushed a commit to rjdenney/azure-container-networking that referenced this pull request Jan 19, 2023
* wip with StrictlyHasSetPolicies approach

* better approaching of getting all set policies

* wip for rigorous win dp UTs

* marshal setpolicies in hns mock and dont short circuit in UTs

* policy stuff and update test cases

* marshal ACLs in hns mock

* more UTs and minor refinements

* option to apply dp or not

* address cmp.Equal and t.Helper comments

* dpEvent returns error and better defined concurrency

* remove unnecessary logic in concurrent test code

* approach Azure#3 emulating cyclonus

* namespace method for podmetadata

* refactor Action structure and TestCase wait group behavior

* hnsactions and renaming a file

* refactor to Serial and ThreadedTestCase structs, and move files to dp pkg

* hns latency hard coded to be the same for all threaded test cases

* fix build error after rebasing

* export fake hns network id

* address comments on multierr and terminology

* add comment about pod metadata in controller

* pod update and delete actions

* move ApplyDPAction to top

* namespace actions and rename some fields of UpdatePod

* adding code comments

* reconcile action

* fix bug in key-val ipsets

* implement all previous test cases

* fix incorrect error wrapping in dataplane.go

* multi-job tests are working. updated terminology from routine to job

* MultiErrManager instead of dependency for multierr

* return to the channel approach for multierr, now using FailNow instead of asserting on channel length

* fix some lints

* fix more lints
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