* add L1VH IB support on CNI
* fix IB issues
* fix UT errors
* fix linter issues
* add win 2025 support for cni image build
* add and comments
* fix a logic bug
* disable endpoint creation and deletion if it's IB NIC
* fix a linter issue
* add UTs
* add UTs for powershell
* enhance Test_getInterfaceInfoKey test case
* remove windows 2025 build from pipeline
* fix some issues
* add an UT to test pnpID
* fix an issue
* fix an ut
* add double quotes
* unblock a brunch of issues
* remove unnecessary codes
* upgradelatest upstream cnii build
* fix a log
* add windows build on pipeline temporarily
* remove backendNIC check for findMasterInterface
* add ut to confirm IB does not create endpoint
* fix linter issue that use %q
* format network.go
* add more uts to cover powershell commands
* remove windows2025 pipeline build
* enhance logs
* fix cniResult format
* add getPnpidstate func
* fix the issue for infraNIC routes
* fix the issue for infraNIC routes
* fix gateway ip address
* add get-pnpdevice UT
* add accelnetNIC support for L1VH
* enhance logic for accelnet nic netowrk flag
* enhance network windows uts
* fix bitmask operator
* use another PR for accelnet PR
* gofumpt files
* fix comments for functional codes
* add uts
* add more uts
* fix uts
* fix functional codes comments
* Update cni/network/network.go
Co-authored-by: tamilmani1989 <tamanoha@microsoft.com>
Signed-off-by: Paul Yu <129891899+paulyufan2@users.noreply.github.com>
* fix latest comments
* fix an UT
* fix invoker_cns_test.go
* fix ut bugs
* fix ut with SkipDefaultRoutes
* add combination ut
* add combination ut
* add ncGateway address to ut
* fix an ut bug
* fix ut bug
* add unhappy test cases
* add endpoint add and deletion cases
* push mock network creation hns api test cases
* remove network creation hns call
* add uts to mock hns network and endpoint calls
* fix ut linter issues
* add infraNIC only invoker test case
* add unhappy path test case
* remove infraNIC only case
* remove unhappy test case
* re-archetect cni ib codes and test
* remove unnecessary logs
* save endpoint state
* save endpoint object for IB
* fix linter issue
* fix a brunch of linter issues
* fix linter issues
* fix linter issue
* fix ut for returned error msg
* temporary add manifest build for CNS/CNI to pipeline
* feedback fix
* fix linter issue
* add ut to get networkName and networkID
* remove Ankit's PR to build cns image
* revert Ankit's changes back
* remove win2025 build from pipeline
* log error for invalid mac address
* revert convertInterfaceInfoToCniResult impl
* fix feedback
* add crd changes to test
* add win2025 yaml to build image
* pass containerID to cns
* revert changes back for review
* revert changes back for review
* gofumpt endpoint.go
* remove comment
* add latest comments
* Update network/endpoint_windows.go
Co-authored-by: tamilmani1989 <tamanoha@microsoft.com>
Signed-off-by: Paul Yu <129891899+paulyufan2@users.noreply.github.com>
* fix a linter issue
* add error check
* add error check
* gofumpt endpoint windows test file
---------
Signed-off-by: Paul Yu <129891899+paulyufan2@users.noreply.github.com>
Co-authored-by: tamilmani1989 <tamanoha@microsoft.com>
* Moving the lock from InitializeKeyValueStore() function to restore/save functions to improve cni performance on windows.
* fix: use defer function to unlock statefile.
* fix: fixing the IPAM lock and defer func
* fix: Optimizing cni file lock by moving SetSdnRemoteArpMacAddress() on startup for CRD and MultitenantCRD mode.
* adding store lock on telemetry service start to avoid race condition on windows.
* fix: remove state file to let CNI autorecover if CNI state file not present and RefCount not 0
* fix: move to invoker_azure.go
* fix: move to invoker_azure.go
* fix: revert error to private
* fix: unit test
* fix: move into delegate add/delete
Co-authored-by: Keith Nguyen <keithnguyen@microsoft.com>
The io/ioutil package has been deprecated as of Go 1.16, see
https://golang.org/doc/go1.16#ioutil. This commit replaces the existing
io/ioutil functions with their new definitions in io and os packages.
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
* disable cleaning up hns network and state files from windows cni
* fixed uts
* fixed ut
* remove the ut which is not needed anymore
* addressed comments
* updated same pattern for cnm
* added comments
* addressed comments
* write to temp file and move to state file
* fixed memleak and other issues
* call windows replace function with MOVEFILE_WRITE_THROUGH flag
* moved few functions to platform package
* moved test files to correct dir
* addressed comments
* read interface configuration from file on azure stack
* remove name field and wrap interface array
* switch from crlf to lf
* address comments
* increase unit test coverage
* nil check source on refresh
* remove space