* inital dump state and ipam interface update
* add reconcile command to CNI
* add integration test
* pass endpoint id on add
* address some feedback
* fix test path and linting
* address feedback and logging
* remove return and rename to PodEndpointID
* Modify CNI for windows baremetal scenario in Azure
* Fix the CNI result for baremetal case
* Addressed PR comments from Tamilmani and Ramiro
* Remove azure-telemetry.exe from cni-baremetal package
* Fix formatting in logging
* Addressed Ramiro's PR review comments
* Formatting fix in printf
Co-authored-by: VK <abc@gmail.com>
* NewRequestController and StartRequestController
* Making Start Manager in go routine
* Lookup HOSTNAME env var
* Adding cnsipaminterface.go
* Created requestController interface and implemented updating CRD
* fix windows 1903 test apimodel.json (#585)
* Avoiding redundant calls into cns by only watching for status updates in reconcile loop, ignoring spec updates in reconcil loop. Also adding ability for updating CRD spec through k8sRequestController methods
* fixing comments
* Cleaned up code and added more comments
* Made client interface for testing purposes and changed structure of files to be less folder-y
* Addressed comments from Paul Miller and Wei
* Beginning unit tests
* Finished unit tests
* Fixing pipeline issues
* found issue, fixed HOSTNAME environment variable dependency
* review changes requested
* more review changes
* Addressed changes from yesterday's review
* Changing makefile line to run correct package
* Addressed Matt Long's suggestions
Co-authored-by: Mathew Merrick <matmerr@users.noreply.github.com>
* About to take debugging comments out
* Removed debugging statements and tested again
* Removed more debugging statements and unused method
* Made changes suggested by Tamilmani, tested again.
* Made spacing changes suggested by Tamilmani
* Triggering new tests to run
* Added AITelemetry support for CNI
* added new files
* added other configs in config file
* fixed ut
* updated disableall similar to cns
* added container name to report
* addressed review comments
* addressed review comments
* added check for azure environment
* added log
* close log handle in unit test
* addressed review comments
* addressed review comments
* fixed a condition
* keep the netagent channel for logs
* fixed error
* addressed review comments
Expose 2 APIs to publish and unpublish network containers from CNS.
a. PublishNetworkContainer
b. UnpublishNetworkContainer
DNC calls CNS to publish and unpublish the network containers.
This PR adds support for host NC bidirectional communication with windows HnsV2. This is supported in multitenant scenario only. AllowHostToNCCommunication and AllowNCToHostCommunication flags are used to enable Host to NC and NC to host communication respectively.
* added application insights telemetry package to send metrics and logs to appinsights
* moved a function common to both packages
acquired a lock before writing to file
* added read write lock as per chandan comment. Addressed jaeryn comments
* fixed telemetry unit test
* defined interface and added appinsights package as vendor to acn
* added vendor package.go(appinsights)
* dependencies of appinsights
* added AI dependencies
* updated unit tests
* addressed review comments
Loopback adapter creation operation comprises of two operations - createInterface and setWeakHostOnInterface. These operations take place inside the lock. If there are simultaneous requests, it interleaves these calls causing every loopback adapter creation to absorb the delay due to interleaving. createInterface can take time in seconds (typically 2 to 7 seconds based on the tests) while setWeakHostOnInterface finishes very quickly ( less than a second ). This change calls setWeakHostOnInterface within the same lock if createInterface succeeds. The tests show this improves the loopback adapter creation times for simultaneous requests.
* change telemetry to message queue and add npm
* remove [Azure-NPM] prefix
* remove npmreport url
* fair scheduling
* holds up to 1k reports for each type
* fix cap on reports
* 1. Start telemetry service as separate process for all components cns/networkmonitor
2. Added telemetry config through which we can configure reportTohost interval
3. Added unit tests for changes
* added new files for telemetry testing
* added tests for invalid cases
* updated with dummy subid