Currently the setup process is very manual on the PNCC end and user end. Users interested in S3 access would email our Data Team for access. After verifying that the originating email is associated with the project, we would then create and generate login credentials (see below for further details) for the project in the form of a text file. The resulting text file can then be used directly with rclone, or the relevant parameters extracted for use with another S3 client.
There are many available S3 clients and the most pertinent information to users are the server name, a username and a password. Because many users are already familiar with rsync, a good client to recommend is Rclone (https://rclone.org). Rclone supports many different file protocols (not just S3) so it is convenient to provide it connection information in the form of a single config file. For example, the following text file 51799.conf:
type = s3
provider = Other
env_auth = false
access_key_id = 51799
secret_access_key = 1rRmndsfgsdfOAxYSolup+/2K+w=
endpoint = https://pncc-data.ohsu.edu
The above essentially tells rclone that the shortcut name `pncc-51799` refers to an `s3` server at `https://pncc-data.ohsu.edu` that can be accessed with the username `51799` and password `1rRmndsfgsdfOAxYSolup+/2K+w=`
Rclone itself has many different subcommands and flags that can change with major version updates, so it is useful to peruse the docs and familiarize oneself with the basic functionality offered. The `copy` command in Rclone provides similar functionality as rsync, and might be used with the above config file like:
rclone copy --conf 51799.conf -P pncc-51799:51799 path/to/destination/.
The above command will copy the entire `51799` directory, skipping files that are already present at the destination. It can be run repeatedly, like rsync, to keep the user’s copy up-to-date with reasonable efficiency. The -P flag provides useful progress readout.
As a final reminder, rclone itself has many other useful commands it supports, and rclone is not the only S3 compatible client. On the Mac, Transmit (https://www.panic.com/transmit/) is a nice GUI file transfer client that speaks S3. There are also ways to mount an S3 share like a normal drive: https://mac.eltima.com/mount-cloud-drive.html. All the information needed to use any of these clients can be gleaned from the Rclone config file.