summaryrefslogtreecommitdiff
path: root/doc/special_remotes/S3.mdwn
blob: abd61ac7976810c0c0d52b930e65955e2cdfc759 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
This special remote type stores file contents in a bucket in Amazon S3
or a similar service.

See [[walkthrough/using_Amazon_S3]] for usage examples.

## configuration

A number of parameters can be passed to `git annex initremote` to configure
the S3 remote.

* `encryption` - Required. Either "none" to disable encryption
  (not recommended),
  or a value that can be looked up (using gpg -k) to find a gpg encryption
  key that will be given access to the remote. Note that additional gpg
  keys can be given access to a remote by rerunning initremote with
  the new key id. See [[encryption]].

* `datacenter` - Defaults to "US". Other values include "EU",
  "us-west-1", and "ap-southeast-1".

* `storageclass` - Default is "STANDARD". If you have configured git-annex
  to preserve multiple [[copies]], consider setting this to "REDUCED_REDUNDANCY"
  to save money.

* `host` and `port` - Specify in order to use a different, S3 compatable
  service.

* `bucket` - S3 requires that buckets have a globally unique name, 
  so by default, a bucket name is chosen based on the remote name
  and UUID. This can be specified to pick a bucket name.

The standard environment variables `ANNEX_S3_ACCESS_KEY_ID` and 
`ANNEX_S3_SECRET_ACCESS_KEY` can be used to supply login credentials
for Amazon. When encryption is enabled, they are stored in encrypted form
by `git annex initremote`, so you do not need to keep the environment
variables set after the initial initalization of the remote.