AWS Security ChangesHomeSearch

AWS deadline-cloud: Clarify Deadline Cloud job attachments root path and path mapping behavior

Service: deadline-cloud · 2026-09-27 · Documentation low

File: deadline-cloud/latest/developerguide/how-jobs-find-job-attachments-input-files.md

Summary

Expands the note about multiple manifests with different root paths, adding an example of assetroot directories per root path, a sample path mapping rules file, and guidance to read Session.PathMappingRulesFile instead of assuming a single assetroot directory.

Security assessment

The change is purely functional documentation about how job attachments map input file root paths to session directories and how to read the path mapping rules file. It addresses file-location correctness, not a vulnerability, credential, or access-control concern.

Evidence

To find the location of every root path in the session, read the file at `{{Session.PathMappingRulesFile}}` rather than assuming that the session has a single "assetroot" directory.

Diff

diff --git a/deadline-cloud/latest/developerguide/how-jobs-find-job-attachments-input-files.md b/deadline-cloud/latest/developerguide/how-jobs-find-job-attachments-input-files.md
index 109487c24..b8817592f 100644
--- a//deadline-cloud/latest/developerguide/how-jobs-find-job-attachments-input-files.md
+++ b//deadline-cloud/latest/developerguide/how-jobs-find-job-attachments-input-files.md
@@ -126 +126 @@ For example:
-###### Note
+If the job you submit has multiple manifests with different root paths, the session has a separate "assetroot" directory for each root path. Job attachments groups a job's input files by root path. The root path for a group of files is their longest common subpath. Files on different Windows drives never have a common subpath, so each drive forms at least one separate root path. For example, suppose that you submit a job from Windows with the input files `C:\show\project.mb`, `C:\show\plates\bg.png`, and `D:\audio\mix.wav`. Job attachments places the files in two "assetroot" directories in the session's temporary directory: 
@@ -128 +128,27 @@ For example:
-If the job you submit has multiple manifests with different root paths, there is a different "assetroot"-named directory for each of the root paths. 
+    
+    C:\show\project.mb    -> assetroot-3751a/project.mb
+    C:\show\plates\bg.png -> assetroot-3751a/plates/bg.png
+    D:\audio\mix.wav      -> assetroot-be92f/mix.wav
+
+The path mapping rules file contains a separate rule for each root path. For the preceding example, a session running on a Linux-based worker host has the following rules: 
+    
+    
+    {
+        "version": "pathmapping-1.0",
+        "path_mapping_rules": [
+            {
+                "source_path_format": "WINDOWS",
+                "source_path": "C:\\show",
+                "destination_path": "/sessions/session-5b33f/assetroot-3751a"
+            },
+            {
+                "source_path_format": "WINDOWS",
+                "source_path": "D:\\audio",
+                "destination_path": "/sessions/session-5b33f/assetroot-be92f"
+            }
+        ]
+    }
+
+To find the location of every root path in the session, read the file at `{{Session.PathMappingRulesFile}}` rather than assuming that the session has a single "assetroot" directory. For more information about the path mapping rules file format, see [Path mapping](https://github.com/OpenJobDescription/openjd-specifications/wiki/How-Jobs-Are-Run#path-mapping) on the GitHub website. 
+
+Job attachments preserves the relative directory structure of the files within each root path. However, it doesn't combine multiple root paths into a single directory tree, and it doesn't modify paths stored inside your files. If an application locates files by using paths that are relative to a project file, those relative references resolve only for files in the same root path as the project file. To keep relative references working, store a project file and the files it references under a common parent directory on the same drive. Alternatively, remap the paths in your job by using the path mapping rules.