Previous implementation didn't have any synchronization mechanism for
goroutines that does the work.
There are multiple approaches to make it work correctly, let's start with
the simplest - atomics.
This patch fixes classic golang for-loop variable capturing issue that
leeds to incorrect results in goroutines.
This is fixed in latest versions of golang, but this project uses go 1.15,
so it won't work as expected by an author.
* rclone use 1.54.1
* add EnsureFSMetaExist func
* fix removeObjects have err check
* add removeObjectsOneByOne, when removeObjects failed, will try to use it
* fix repeat in yaml
With this, each volume will get its own prefix within the bucket if it
is configured in the storage class. This also ensures backwards
compatibility with older volumes that have been created in earlier
versions of csi-s3.