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

Added the fixes for Windows detected during internal testing. #4293

Merged
merged 2 commits into from
Aug 29, 2024

Conversation

saurabhc123
Copy link
Contributor

Summary

This PR adds the fixes to the volume metrics fetcher in the agent flows and in the CSI Driver for Windows.

Implementation details

  • We changed the path that was used by the CSIDriver to fetch the metrics.
  • We use a different timeout for Windows when fetching the metrics. The default timeout of 1 second for Linux is not sufficient for Windows.

Testing

We ran the integration in a Windows environment and validated the working of the metrics fetch.

New tests cover the changes: No. The existing tests were used to test this.

Description for the changelog

Added the fixes for Windows detected during internal testing.

Additional Information

Licensing

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@saurabhc123 saurabhc123 requested a review from a team as a code owner August 17, 2024 00:30
@saurabhc123 saurabhc123 force-pushed the ebsTA-windows-bug-fixes branch 9 times, most recently from 9b5d76f to 546f4b0 Compare August 22, 2024 02:48
@saurabhc123 saurabhc123 force-pushed the ebsTA-windows-bug-fixes branch from 546f4b0 to e5be435 Compare August 22, 2024 23:06
@jiuchoe4
Copy link
Contributor

Changes LGTM

)

// IsBlockDevice checks if the given path is a block device on Windows.
func IsBlockDevice(fullPath string) (bool, error) {
// Ensure the fullPath ends with a backslash.

// We will parse only the taskID_VolumeID string. And example is:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit(non-blocking): typo in And

@@ -166,3 +174,168 @@ func TestServiceConnectWithDisabledMetrics(t *testing.T) {
assert.Len(t, engine.tasksToHealthCheckContainers, 1)
assert.Len(t, engine.taskToServiceConnectStats, 1)
}

// This test has been moved to be run Linux only. For Windows, the publish metrics timeout has been set to be 5 seconds
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit(non-blocking): the beginning sentence of the comment might be a bit misleading without full context for future references. Might just be better to just keep Note: For windows,....

Copy link
Contributor

@mye956 mye956 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, it seems the linux functionality hasn't change. we should also keep track/further look into the race condition we're seeing in the tests

@mye956 mye956 merged commit e5ab245 into aws:feature/ebs-windows Aug 29, 2024
40 checks passed
@jiuchoe4 jiuchoe4 mentioned this pull request Sep 19, 2024
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.

5 participants