This task is to add an option to the Sync Tool which ensures that it does not overwrite any existing DuraCloud content. This means that when a file on the local file system, which has previously been added to DuraCloud, changes, it is not simply uploaded again.
There are a few choices that need to be made for this new feature to be added:
1. When a file already in DuraCloud changes on the file system, is the updated file transferred to DuraCloud or not. If so, the original file will likely need to be renamed to prevent collision.
2. How is the list of updated files communicated to the user. Are they printed to the console (stdout), or written to a file? Is this consistent between interactive mode and run-to-completion mode?
3. How does this feature impact the upload tool?
A comment from the State of North Carolina about how they envision this feature:
"Our ideal upload tool would allow us to specify a local directory to update in the cloud, and the tool would then identify and upload new files (new files defined by file name and path), and alert us to any files that have changed (same file name and path but new checksum hash) and not upload the files that have changed (or upload them in a way that doesn't overwrite the files in the cloud). We would want to make sure that the process of uploading content is kept totally separate from any risk of editing existing content in storage."