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.
This could use some more testing, but it seems to work perfectly.
I added new arguments, "destination" and "name."
If destination is used, the contents of the source directory will all be copied into the "destination", and the bag will be saved there rather than bagging in place. If no "name" is supplied, the bag directory will be named whatever the name of the source directory is. If "name" is provided, it will be named that.
Most importantly, the manifest checksums are generated from the source files, not the copied files, so this provides a perfect chain of custody. We do this by modifying make_manifests to check if we are bagging to a destination. If so, it generates the checksums from the source and handles the paths accordingly so that they are correct in the manifest.