Properties
Upload Collection
The upload collection whose uploads the
bundle groups.
string[]
The capture keys from upload.bundle of the file rule that created the bundle.Capture keys do not affect membership, only captured values do. See Same capture values.Example:
["mission", "run"]string[]
The captured values that identify the bundle.Together with the device and upload collection, these values are the bundle’s
identity: no two bundles share all three. See Matching conditions.Example:
["mission_123", "run_03"]Single file rule
Bundles are specified in a file rule’s upload.bundle field. Below is an example of a file rule that bundles files in the same{recording} folder:
run_42 folder are bundled together:
data
recordings
run_42
camera.mcap
metadata.yaml
run_43
camera.mcap
metadata.yaml
run_43, land in a different bundle.
Multiple file rules
Sometimes you want to bundle files sourced from different file rules. In such cases, bundling is still possible. Consider the following two rules:/data/calib/run_18/front.yaml and /data/images/run_18/front.png
are bundled because they have the same capture values of run_18 and front.
data
calib
run_18
front.yaml
back.yaml
run_19
front.yaml
back.yaml
images
run_18
front.png
back.png
run_19
front.png
back.png
run_18/back.yaml) or a later run (run_19/front.yaml) is placed into a different bundle.
Common patterns
Below are common patterns for specifying which files to bundle together.- Folder
- Filename
- Nested
Use when each group is already a directory. Capture the folder name and match the files inside it.Every file in
drive_07/ shares a bundle. drive_08/ is a different bundle:data
bags
drive_07
camera.mcap
metadata.yaml
drive_08
camera.mcap
metadata.yaml
Matching conditions
Specifying captures to bundle files is a powerful way to group related files together. Below is the full list of conditions that determine if two uploads are placed into the same bundle.Same device
Bundles never span devices. Identical capture values from two devices are always placed into different bundles.Same upload collection
Bundles never span upload collections. Identical capture values from the same device but specifying a different upload collection are always placed into different bundles.Same capture values
Bundles are matched by their capture values; the order of capture values does matter. Notably, capture keys are ignored.Examples
To illustrate capture matching conditions, consider the following file rules:Same keys, values, and order
Same keys, values, and order
Explanation: Both uploads captured
["01", "02"] in that order.Keys differ, values and order match
Keys differ, values and order match
Explanation: Capture keys are ignored. Both uploads captured
["01", "02"] in that order.Order differs
Order differs
Explanation: Both uploads captured
01 and 02, but in opposite order.A value differs
A value differs
Explanation: The first capture value is
03 vs 01.Fewer values
Fewer values
Explanation: One upload captured two values and the other captured one.

