feat(job_attachments)!: Add OS-specific FileSystemPermissionSettings classes #41
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What was the problem/requirement? (What/Why)
In the PR from the worker-agent side: aws-deadline/deadline-cloud-worker-agent#26, there was a concern raised about the lack of consideration for Windows compatibility when handling file ownership/permissions for job attachment-owned files. To address this, we need to introduce OS-specific FileSystemPermissionSettings classes to accommodate Windows support.
What was the solution? (How)
FileSystemPermissionSettings
class into two distinct types - one for Posix, and one for Windows to better accommodate OS-specific permission handling. So, added two new classes:PosixFileSystemPermissionSettings
: it is actually identical to the previous FileSystemPermissionSettings class, with the name being the only change to explicitly indicate the OS, Posix.WindowsFileSystemPermissionSettings
: A placeholder class for Windows. Will be implemented in a follow-up PR.FileSystemPermissionSettings
is now the Union type of those two classes.isinstance()
checks.What is the impact of this change?
Better accommodation for OS-specific (file) permission handling
How was this change tested?
hatch run lint && hatch run test
hatch run integ:test
hatch run test_docker
Was this change documented?
No.
Is this a breaking change?
Yes!