Incremental AWS S3 deployment.

Description

Deploying a site e.g. to AWS S3 currently involves uploading all files, even if they haven't changed. Add incremental deployment to only upload files if they are different from what is on the server.

One approach could be to check local records of timestamps as we do with incremental mummification in GUISE-104, but the situation is a bit different: the deployment target is further from our control, and could be independently modified. We would need to check deployment target timestamps, which may not be practical and we have less of a guarantee that the timestamps wouldn't change.

So a more practical and robust approach is probably to check some sort of etag or hash (preferably some modern SHA variant).

To indicate full deployment it is undecided whether to piggy-back on the --full flag or (more likely) use a separate flag --all.

Environment

None

Assignee

Garret Wilson

Reporter

Garret Wilson

Labels

None

Fix versions

Priority

Major
Configure