Skip to content

feat: Add windows support and cli changes - #2625

Open
Laksh (lakshk98) wants to merge 31 commits into
microsoft:mainfrom
lakshk98:laksh/rebase-main
Open

feat: Add windows support and cli changes #2625
Laksh (lakshk98) wants to merge 31 commits into
microsoft:mainfrom
lakshk98:laksh/rebase-main

Conversation

@lakshk98

Copy link
Copy Markdown

This pr rebases dev/v0.0.33 onto main resolving conflicts across Dockerfiles, workflow files, Helm values, E2E tests, and auto-generated protobuf files.

Merge conflict resolutions

For most conflicts, upstream changes were taken as-is. Notable exceptions:

• .github/workflows/e2e-test-event-writer.yml — kept our version, which includes Windows-specific build steps (LLVM, MSBuild, eBPF store, Docker daemon) absent from upstream's skeleton.
• deploy/.../values.yaml — introduced enablePodLevel_win: true to decouple Windows pod-level metrics from the upstream Linux default ( enablePodLevel: false ), following the existing enabledPlugin_linux / enabledPlugin_win pattern. Also kept enabledPlugin_win with ebpfwindows and enableAnnotations: true .
• pkg/utils/metadata_*.pb.go — regenerated from the auto-merged .proto (which combined our Cilium eBPF drop reasons with upstream's HNS/NDIS drop reasons and sampling fields).
• test/e2e/retina_e2e_test.go — kept Windows UnLoadAndPinWinBPFJob step; dropped stale ValidateHubble reference (renamed upstream); took upstream's InstallAndTestHubbleMetrics and ValidateCapture .
• controller/Dockerfile / cli/Dockerfile — took upstream's bpf-gen stage refactor and Azure Linux 3.0 base image upgrade.

Post-merge fixes

The final commit removed usage of the hubble parser options addresses build failures introduced by the merge — upstream changes that conflicted with our usage of hubble parser options required removing that dependency and fixes lint errors surfaced by the linter

Related Issue

If this pull request is related to any issue, please mention it here. Additionally, make sure that the issue is assigned to you before submitting this pull request.

Checklist

  • I have read the contributing documentation.
  • I signed and signed-off the commits (git commit -S -s ...). See this documentation on signing commits.
  • I have correctly attributed the author(s) of the code.
  • I have tested the changes locally.
  • I have followed the project's style guidelines.
  • I have updated the documentation, if necessary.
  • I have added tests, if applicable.

Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes made.

Additional Notes

Add any additional notes or context about the pull request here.


Please refer to the CONTRIBUTING.md file for more information on how to contribute to this project.

Mathew Merrick (matmerr) and others added 30 commits August 7, 2026 06:04
# Description

Having this action be named as image is confusing since it does Image +
E2E

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [ ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
…icrosoft#1633)

# Description
This PR adds a new Retina Plugin to read Metrics Map events from Windows
eBPF

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [x] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [x] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [x] I have correctly attributed the author(s) of the code.
- [x] I have tested the changes locally.
- [x] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [x] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

Generate images and manifests for windows dev branch

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [ ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

Pulling in latest retinaepfapi package from nuget.org.

## Checklist

- [x] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [x] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [x] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [x] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed
NA

## Additional Notes
NA

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

Update dev/v0.0.33 branch to push images alongside main

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [ ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
microsoft#1684)

# Description
Added registry check for CiliumOnWindows in Hns and EbpfWindows plugins
to support CoExistence in Mixed Mode clusters

Please provide a brief description of the changes made in this pull
request.
Added a common function to check for the Registry value.

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [x] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [x] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [x] I have correctly attributed the author(s) of the code.
- [x] I have tested the changes locally.
I have manually deployed the image on AKS cluster with --set
enabledPlugin_win="[ebpfwindows\,hnsstats\]" `
and verified through logs either ebpfwindows or hnsttats are running
based on CiliumOnWindows Registry value
- [x] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description
Added e2e tests for Windows ebpf scenario.
Please provide a brief description of the changes made in this pull
request.
1. Creates a daemon set to install ebpf on windows nodes
2. Installs a test ebpf program which generates the events
3. The generated events are verified by the test jobs
## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [x] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [x] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [x] I have correctly attributed the author(s) of the code.
- [x] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed
successful run with this change
https://github.com/kumarvin123/retina/actions/runs/15951308276

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
…essing due to latest RetinaEbpfApi changes (microsoft#1768)

# Description
- Updates RetinaEbpfApi version
- Updates processing of Metrics Map due to API changes
- Adds processing for lost events API
- Updates tests to utilize added windows_metrics map

## Related Issue

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [X] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.

---------

Signed-off-by: Matthew Ige <matthewige1@gmail.com>
Co-authored-by: Vinod K L Swamy <vinodko@microsoft.com>
…1782)

# Description
e2e-test-event-writer.yml was not triggering on dev branches

## Related Issue
n/a

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [X] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed
n/a

## Additional Notes
n/a
---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
Cherry picking following fix from main branch: fix(localctx+win): Fix
the helm insatll command for localCtx
(microsoft#1807)

# Description

- Disable operator installation for `localCtx` (not needed)
- Windows configmap is missing `enableAnnotations` config

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.

Signed-off-by: Anubhab Majumdar <anmajumdar@microsoft.com>
Co-authored-by: Anubhab Majumdar <anmajumdar@microsoft.com>
# Description

enableAnnotations got defined twice in windows configmap due to [this
pr](microsoft#1810).
Removed extra occurrence of enableAnnotations.

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [X] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description
Run E2e Tests pipeline is failing during cluster creation with the
following error:
```bash
#################### CreateNPMCluster ###################################################################
2025/08/14 18:58:11 when the cluster is ready, use the below command to access and debug
2025/08/14 18:58:11 az aks get-credentials --resource-group runner-e2e-netobs-1755197881 --name runner-e2e-netobs-1755197881 --subscription ***
2025/08/14 18:58:11 creating cluster "runner-e2e-netobs-1755197881" in resource group "runner-e2e-netobs-1755197881"...
2025/08/14 18:58:40 failed to create cluster: GET https://management.azure.com/subscriptions/***/providers/Microsoft.ContainerService/locations/eastus2/operations/fd882d18-319b-4200-aa9e-a2934886e35b
--------------------------------------------------------------------------------
RESPONSE 200: 200 OK
ERROR CODE: RequestDisallowedByPolicy
--------------------------------------------------------------------------------
{
  "name": "fd882d18-319b-4200-aa9e-a2934886e35b",
  "status": "Failed",
  "startTime": "2025-08-14T18:58:30.3284728Z",
  "endTime": "2025-08-14T18:58:38.5566866Z",
  "error": {
    "code": "RequestDisallowedByPolicy",
    "message": "Create or update public IP failed: Subscription: ***; resource group: MC_runner-e2e-netobs-1755197881_runner-e2e-netobs-1755197881_eastus2; public IP name: c1debc4c-7910-4441-b0ce-30b64f37b43c. Resource 'c1debc4c-7910-4441-b0ce-30b64f37b43c' was disallowed by policy. Reasons: 'The public ip needs to be tagged with either a service or virtual tag.'. See error details for policy resource IDs.",
    "details": [
      {
        "code": "RequestDisallowedByPolicy",
        "message": "Resource 'c1debc4c-7910-4441-b0ce-30b64f37b43c' was disallowed by policy. Reasons: 'The public ip needs to be tagged with either a service or virtual tag.'. See error details for policy resource IDs.",
        "target": "c1debc4c-7910-4441-b0ce-30b64f37b43c"
      }
    ]
  }
}
--------------------------------------------------------------------------------

    runner.go:38:
        	Error Trace:	/home/runner/work/retina/retina/test/e2e/framework/types/runner.go:38
        	            				/home/runner/work/retina/retina/test/e2e/infra/azure_temp_infra_setup.go:47
        	            				/home/runner/work/retina/retina/test/e2e/retina_e2e_test.go:38
        	Error:      	Received unexpected error:
        	            	did not expect error from step CreateNPMCluster but got error: received notification, failed to create cluster: GET https://management.azure.com/subscriptions/***/providers/Microsoft.ContainerService/locations/eastus2/operations/fd882d18-319b-4200-aa9e-a2934886e35b
        	            	--------------------------------------------------------------------------------
        	            	RESPONSE 200: 200 OK
        	            	ERROR CODE: RequestDisallowedByPolicy
        	            	--------------------------------------------------------------------------------
        	            	{
        	            	  "name": "fd882d18-319b-4200-aa9e-a2934886e35b",
        	            	  "status": "Failed",
        	            	  "startTime": "2025-08-14T18:58:30.3284728Z",
        	            	  "endTime": "2025-08-14T18:58:38.5566866Z",
        	            	  "error": {
        	            	    "code": "RequestDisallowedByPolicy",
        	            	    "message": "Create or update public IP failed: Subscription: ***; resource group: MC_runner-e2e-netobs-1755197881_runner-e2e-netobs-1755197881_eastus2; public IP name: c1debc4c-7910-4441-b0ce-30b64f37b43c. Resource 'c1debc4c-7910-4441-b0ce-30b64f37b43c' was disallowed by policy. Reasons: 'The public ip needs to be tagged with either a service or virtual tag.'. See error details for policy resource IDs.",
        	            	    "details": [
        	            	      {
        	            	        "code": "RequestDisallowedByPolicy",
        	            	        "message": "Resource 'c1debc4c-7910-4441-b0ce-30b64f37b43c' was disallowed by policy. Reasons: 'The public ip needs to be tagged with either a service or virtual tag.'. See error details for policy resource IDs.",
        	            	        "target": "c1debc4c-7910-4441-b0ce-30b64f37b43c"
        	            	      }
        	            	    ]
        	            	  }
        	            	}
        	            	--------------------------------------------------------------------------------
```
Cherry-picked changes from this [draft
pr](https://github.com/microsoft/retina/pull/1796/files) which adds a
public IP address with the required tags to the load balancer. This
should fix the above issue.

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.

Co-authored-by: Keerthana Routhu <krouthu@microsoft.com>
# Description

The SFI related changes introduced in the pr microsoft#1819 causes failure in e2e
runs. This pr reverts those changes.

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [X] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
…make build-binaries microsoft#1720 (microsoft#1842)

# Description

Merging PR from main- refactor: add dockerfile for windows build and
make build-binaries microsoft#1720

We want to separate the windows build into 2 steps

Build the binaries needed for the final image
Build the final image including the binaries built in step 1
For step 1, add a build-binaries task to the Makefile that builds the
binaries needed for the final image.
For step 2, add a Dockerfile for the windows build that builds the final
image including the binaries built in step 1

## Related Issue

Make window's build branch compatible with release pipeline

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description
This pull request adds support for parsing and handling "Pktmon Drop"
events in the Windows eBPF datapath plugin. It introduces new structures
and logic to decode these events, integrates them into the event
handling and parsing pipeline, and adds tests to ensure correct
processing.

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [X] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
---------

# Description

Updated Docker file to pull latest windows base image to resolve
security vulnerabilities.
## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [X] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
…soft#1911)

# Description

Please provide a brief description of the changes made in this pull
request.

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [ ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

Retina pods crash when a nil ip is passed to the enricher. Returning
error in handleTraceEvent so that nil ip is not sent to enricher.

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

Updated Docker file to pull latest windows base image to resolve
security vulnerabilities.

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [X] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [X] I have correctly attributed the author(s) of the code.
- [X] I have tested the changes locally.
- [X] I have followed the project's style guidelines.
- [X] I have updated the documentation, if necessary.
- [X] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

This action is failing regularly on `dev/v0.0.33-windows`

https://github.com/microsoft/retina/actions/runs/19348996959/job/55361017859

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [ ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

Please provide a brief description of the changes made in this pull
request.

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [ ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.

---------

Signed-off-by: Mathew Merrick <matmerr@users.noreply.github.com>
# Description

New windows base images were published on 1/13. Updated Docker file to
pull latest windows base image to resolve security vulnerabilities.

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [x] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [x] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [x] I have correctly attributed the author(s) of the code.
- [x] I have tested the changes locally.
- [x] I have followed the project's style guidelines.
- [x] I have updated the documentation, if necessary.
- [x] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

This change makes the Windows eBPF plugin fail open when
retinaebpfapi.dll is not installed or does not expose the expected
entrypoints. Instead of deferring the failure until the first native
call, startup now validates the DLL up front, logs a warning, and skips
plugin initialization cleanly. It also adds a unit test covering the
missing-DLL path.

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ x] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [x ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [x ] I have correctly attributed the author(s) of the code.
- [x ] I have tested the changes locally.
- [x ] I have followed the project's style guidelines.
- [x ] I have updated the documentation, if necessary.
- [ x] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description
Remove retinaebpfapi.dll from retina image.

Bumped the version of following:
ebpf 0.21.0 -> 1.1.0
xdp  1.1.0 -> 1.3.0
Microsoft.Wcn.Observability.eBPF.Retina (retinaebpfapi.dll)
0.1.0-prerelease.11 -> 1.3.0
servercore base images

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

Made the following fixes to the install-ebpf-xdp.ps1 script which is
used to setup node for e2e tests.
- Add xdp cert to cert store to resolve installation errors.
- Download and install retinaebpfapi on the node since it is no longer
packaged with retina image
- Install vc++ runtime needed for retinaebpfapi.dll
- Copy ebpfapi.dll to the dir where retinaebpfapi.dll is (this can be
updated when retinaebpfapi can find the dll from path)

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [X] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
# Description

Consuming latest available retinaebpfapi version and windows base
images.

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [X] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.
)

The krew-release-bot step in goreleaser.yaml triggers on every tag
pushed from this branch, including pre-release tags like
`v0.0.33-windows-rc.2`, opening spurious PRs against
[krew-index](https://github.com/kubernetes-sigs/krew-index) (e.g.
#5787).

Main has microsoft#2107 which gates the step on final release tags, but this dev
branch forked before that landed. Since this branch only produces
pre-release/windows-dev tags that should never publish to krew, removing
the step entirely is the simplest fix.

The new tag `v0.0.33-windows-rc.2` already points to a commit with this
change applied, so the in-flight release is unaffected.

---------

Signed-off-by: Mathew Merrick <matmerr@microsoft.com>
# Description

Problem

The OB pipeline for tag v0.0.33-windows-rc.2 fails with two errors:

1. kubectl_shell: docker build fails because target shell-target not
found in cli/Dockerfile
 2. agent_win: output/windows_amd64/*.exe not found

Root cause: branch dev/v0.0.33-windows was created from commit 82d621c
(May 7, 2025) and is missing upstream changes that restructured the
Windows build pipeline.

Cherry-picked following commits to resolve the issue:
[59c1655](microsoft@59c1655)
(1946) and
[fd482c0](microsoft@fd482c0)
(microsoft#1997)

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [ ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.

---------

Signed-off-by: Kamil <kamil.prz@gmail.com>
Signed-off-by: Laksh Kotian <lakshkotian98@gmail.com>
Co-authored-by: carlotaarvela <67275927+carlotaarvela@users.noreply.github.com>
Co-authored-by: Kamil <kamil.prz@gmail.com>
Co-authored-by: kamilprz <36544756+kamilprz@users.noreply.github.com>
Co-authored-by: Simone Rodigari <32323373+SRodi@users.noreply.github.com>
microsoft#2538)

# Description

Problem

The `retina-agent` image built from `dev/v0.0.33-windows` is flagged by
container image vulnerability scanning known Go CVEs (`stdlib` plus
modules such as `containerd`, `grpc`, `golang.org/x/net`,
`mapstructure/v2`, `runc` and `aws-sdk-go-v2`)

Since branch `dev/v0.0.33-windows` was created from commit `82d621c`
(May 2025, ~500 commits behind), so Go toolchain/dependencies are
frozen. `main` is already patched, so we are fixing staleness.

Aligned the branch's Go toolchain and dependencies with the patched
versions `main` already uses:

- Go builder `mcr.microsoft.com/oss/go/microsoft/golang` `1.24.x ->
1.26.5` across the controller/operator/cli/test Dockerfiles (Linux
`azurelinux3.0`, Windows `windowsservercore-ltsc2022`; operator-windows
moves `cbl-mariner2.0 -> azurelinux3.0` since there's no 1.26 Mariner
tag). Building with 1.26.5 clears the `stdlib` advisories (the scanner
reads the Go version baked into the binary).
- `go` directive `1.24.3 -> 1.26.0`.
- `mapstructure/v2 -> 2.5.0`, `containerd -> 1.7.33`, `runc -> 1.2.8` +
`selinux -> 1.13.1`, `grpc -> 1.79.3`, `golang.org/x/net -> 0.57.0`,
`aws-sdk-go-v2/.../eventstream -> 1.7.14`, `docker/docker -> 28.5.2`.

**note**
left out cilium, inspektor-gadget, and docker as their patched versions
dropped/moved the exact packages we import (or the fix lives in a
totally different module), so bumping them breaks the build and needs
the code refactors main  already did (everything else was a clean
version bump)

## Related Issue

If this pull request is related to any issue, please mention it here.
Additionally, make sure that the issue is assigned to you before
submitting this pull request.

## Checklist

- [ ] I have read the [contributing
documentation](https://retina.sh/docs/Contributing/overview).
- [ ] I signed and signed-off the commits (`git commit -S -s ...`). See
[this
documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
on signing commits.
- [ ] I have correctly attributed the author(s) of the code.
- [ ] I have tested the changes locally.
- [ ] I have followed the project's style guidelines.
- [ ] I have updated the documentation, if necessary.
- [ ] I have added tests, if applicable.

## Screenshots (if applicable) or Testing Completed

Please add any relevant screenshots or GIFs to showcase the changes
made.

## Additional Notes

Add any additional notes or context about the pull request here.

---

Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more
information on how to contribute to this project.

---------

Signed-off-by: Christelle Chatelain <cchatelain@microsoft.com>
Signed-off-by: chrcha1 <97578958+chrcha1@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Discard superseded upstream cherry-picks and intermediate Windows branch changes so the expanded history produces the same final tree as laksh/squash-and-rebase.
@microsoft-github-policy-service

Copy link
Copy Markdown

Laksh (@lakshk98) please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.

@microsoft-github-policy-service agree [company="{your company}"]

Options:

  • (default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.
@microsoft-github-policy-service agree
  • (when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.
@microsoft-github-policy-service agree company="Microsoft"
Contributor License Agreement

Contribution License Agreement

This Contribution License Agreement (“Agreement”) is agreed to by the party signing below (“You”),
and conveys certain license rights to Microsoft Corporation and its affiliates (“Microsoft”) for Your
contributions to Microsoft open source projects. This Agreement is effective as of the latest signature
date below.

  1. Definitions.
    “Code” means the computer software code, whether in human-readable or machine-executable form,
    that is delivered by You to Microsoft under this Agreement.
    “Project” means any of the projects owned or managed by Microsoft and offered under a license
    approved by the Open Source Initiative (www.opensource.org).
    “Submit” is the act of uploading, submitting, transmitting, or distributing code or other content to any
    Project, including but not limited to communication on electronic mailing lists, source code control
    systems, and issue tracking systems that are managed by, or on behalf of, the Project for the purpose of
    discussing and improving that Project, but excluding communication that is conspicuously marked or
    otherwise designated in writing by You as “Not a Submission.”
    “Submission” means the Code and any other copyrightable material Submitted by You, including any
    associated comments and documentation.
  2. Your Submission. You must agree to the terms of this Agreement before making a Submission to any
    Project. This Agreement covers any and all Submissions that You, now or in the future (except as
    described in Section 4 below), Submit to any Project.
  3. Originality of Work. You represent that each of Your Submissions is entirely Your original work.
    Should You wish to Submit materials that are not Your original work, You may Submit them separately
    to the Project if You (a) retain all copyright and license information that was in the materials as You
    received them, (b) in the description accompanying Your Submission, include the phrase “Submission
    containing materials of a third party:” followed by the names of the third party and any licenses or other
    restrictions of which You are aware, and (c) follow any other instructions in the Project’s written
    guidelines concerning Submissions.
  4. Your Employer. References to “employer” in this Agreement include Your employer or anyone else
    for whom You are acting in making Your Submission, e.g. as a contractor, vendor, or agent. If Your
    Submission is made in the course of Your work for an employer or Your employer has intellectual
    property rights in Your Submission by contract or applicable law, You must secure permission from Your
    employer to make the Submission before signing this Agreement. In that case, the term “You” in this
    Agreement will refer to You and the employer collectively. If You change employers in the future and
    desire to Submit additional Submissions for the new employer, then You agree to sign a new Agreement
    and secure permission from the new employer before Submitting those Submissions.
  5. Licenses.
  • Copyright License. You grant Microsoft, and those who receive the Submission directly or
    indirectly from Microsoft, a perpetual, worldwide, non-exclusive, royalty-free, irrevocable license in the
    Submission to reproduce, prepare derivative works of, publicly display, publicly perform, and distribute
    the Submission and such derivative works, and to sublicense any or all of the foregoing rights to third
    parties.
  • Patent License. You grant Microsoft, and those who receive the Submission directly or
    indirectly from Microsoft, a perpetual, worldwide, non-exclusive, royalty-free, irrevocable license under
    Your patent claims that are necessarily infringed by the Submission or the combination of the
    Submission with the Project to which it was Submitted to make, have made, use, offer to sell, sell and
    import or otherwise dispose of the Submission alone or with the Project.
  • Other Rights Reserved. Each party reserves all rights not expressly granted in this Agreement.
    No additional licenses or rights whatsoever (including, without limitation, any implied licenses) are
    granted by implication, exhaustion, estoppel or otherwise.
  1. Representations and Warranties. You represent that You are legally entitled to grant the above
    licenses. You represent that each of Your Submissions is entirely Your original work (except as You may
    have disclosed under Section 3). You represent that You have secured permission from Your employer to
    make the Submission in cases where Your Submission is made in the course of Your work for Your
    employer or Your employer has intellectual property rights in Your Submission by contract or applicable
    law. If You are signing this Agreement on behalf of Your employer, You represent and warrant that You
    have the necessary authority to bind the listed employer to the obligations contained in this Agreement.
    You are not expected to provide support for Your Submission, unless You choose to do so. UNLESS
    REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING, AND EXCEPT FOR THE WARRANTIES
    EXPRESSLY STATED IN SECTIONS 3, 4, AND 6, THE SUBMISSION PROVIDED UNDER THIS AGREEMENT IS
    PROVIDED WITHOUT WARRANTY OF ANY KIND, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY OF
    NONINFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
  2. Notice to Microsoft. You agree to notify Microsoft in writing of any facts or circumstances of which
    You later become aware that would make Your representations in this Agreement inaccurate in any
    respect.
  3. Information about Submissions. You agree that contributions to Projects and information about
    contributions may be maintained indefinitely and disclosed publicly, including Your name and other
    information that You submit with Your Submission.
  4. Governing Law/Jurisdiction. This Agreement is governed by the laws of the State of Washington, and
    the parties consent to exclusive jurisdiction and venue in the federal courts sitting in King County,
    Washington, unless no federal subject matter jurisdiction exists, in which case the parties consent to
    exclusive jurisdiction and venue in the Superior Court of King County, Washington. The parties waive all
    defenses of lack of personal jurisdiction and forum non-conveniens.
  5. Entire Agreement/Assignment. This Agreement is the entire agreement between the parties, and
    supersedes any and all prior agreements, understandings or communications, written or oral, between
    the parties relating to the subject matter hereof. This Agreement may be assigned by Microsoft.

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.

7 participants