kubernetes/pkg/kubelet/apis/config/validation
Maksym Pavlenko be4b7176dc
Fix Abs path validation on Windows (#124084)
* Windows: Consider slash-prefixed paths as absolute

filepath.IsAbs does not consider "/" or "\" as absolute paths, even
though files can be addressed as such. [1][2]

Currently, there are some unit tests that are failing on Windows due to
this reason.

[1] https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats#traditional-dos-paths
[2] https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#fully-qualified-vs-relative-paths

* Add test to verify IsAbs for windows

Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>

* Fix abs path validation on windows

Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>

* Skipp path clean check for podLogDir on windows

Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>

* Implement IsPathClean to validate path

Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>

* Add warn comment for IsAbs

Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>

---------

Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
Co-authored-by: Claudiu Belu <cbelu@cloudbasesolutions.com>
2024-04-10 10:13:59 -07:00
..
validation_others_test.go unittests: Fixes unit tests for Windows 2022-10-25 23:46:56 +03:00
validation_others.go generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
validation_reserved_memory_test.go Refactor Kubelet config validation tests 2021-11-18 22:38:01 +09:00
validation_reserved_memory.go Refactor Kubelet config validations 2021-11-18 22:31:31 +09:00
validation_test.go add no swap as the default option for swap 2024-03-05 16:10:42 -05:00
validation_windows_test.go unittests: Fixes unit tests for Windows 2022-10-25 23:46:56 +03:00
validation_windows.go generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
validation.go Fix Abs path validation on Windows (#124084) 2024-04-10 10:13:59 -07:00