Skip to content

Commit 94f6b75

Browse files
authored
Merge pull request rails#52725 from sharvy/update_active_storage_documentation
Fix rails#52724 Active Storage Overview documentation to promote use of Rails.application.credentials and better bucket names
2 parents c15f1e2 + b0d8947 commit 94f6b75

File tree

1 file changed

+34
-28
lines changed

1 file changed

+34
-28
lines changed

guides/source/active_storage_overview.md

Lines changed: 34 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,12 @@ test:
8282
service: Disk
8383
root: <%= Rails.root.join("tmp/storage") %>
8484

85+
# Use bin/rails credentials:edit to set the AWS secrets (as aws:access_key_id|secret_access_key)
8586
amazon:
8687
service: S3
87-
access_key_id: ""
88-
secret_access_key: ""
89-
bucket: ""
88+
access_key_id: <%= Rails.application.credentials.dig(:aws, :access_key_id) %>
89+
secret_access_key: <%= Rails.application.credentials.dig(:aws, :secret_access_key) %>
90+
bucket: your_own_bucket-<%= Rails.env %>
9091
region: "" # e.g. 'us-east-1'
9192
```
9293
@@ -159,23 +160,25 @@ local:
159160
To connect to Amazon S3, declare an S3 service in `config/storage.yml`:
160161

161162
```yaml
163+
# Use bin/rails credentials:edit to set the AWS secrets (as aws:access_key_id|secret_access_key)
162164
amazon:
163165
service: S3
164-
access_key_id: ""
165-
secret_access_key: ""
166-
region: ""
167-
bucket: ""
166+
access_key_id: <%= Rails.application.credentials.dig(:aws, :access_key_id) %>
167+
secret_access_key: <%= Rails.application.credentials.dig(:aws, :secret_access_key) %>
168+
region: "" # e.g. 'us-east-1'
169+
bucket: your_own_bucket-<%= Rails.env %>
168170
```
169171

170172
Optionally provide client and upload options:
171173

172174
```yaml
175+
# Use bin/rails credentials:edit to set the AWS secrets (as aws:access_key_id|secret_access_key)
173176
amazon:
174177
service: S3
175-
access_key_id: ""
176-
secret_access_key: ""
177-
region: ""
178-
bucket: ""
178+
access_key_id: <%= Rails.application.credentials.dig(:aws, :access_key_id) %>
179+
secret_access_key: <%= Rails.application.credentials.dig(:aws, :secret_access_key) %>
180+
region: "" # e.g. 'us-east-1'
181+
bucket: your_own_bucket-<%= Rails.env %>
179182
http_open_timeout: 0
180183
http_read_timeout: 0
181184
retry_limit: 0
@@ -205,8 +208,8 @@ To connect to an S3-compatible object storage API such as DigitalOcean Spaces, p
205208
digitalocean:
206209
service: S3
207210
endpoint: https://nyc3.digitaloceanspaces.com
208-
access_key_id: ...
209-
secret_access_key: ...
211+
access_key_id: <%= Rails.application.credentials.dig(:digitalocean, :access_key_id) %>
212+
secret_access_key: <%= Rails.application.credentials.dig(:digitalocean, :secret_access_key) %>
210213
# ...and other options
211214
```
212215

@@ -217,11 +220,12 @@ There are many other options available. You can check them in [AWS S3 Client](ht
217220
Declare an Azure Storage service in `config/storage.yml`:
218221

219222
```yaml
223+
# Use bin/rails credentials:edit to set the Azure Storage secret (as azure_storage:storage_access_key)
220224
azure:
221225
service: AzureStorage
222-
storage_account_name: ""
223-
storage_access_key: ""
224-
container: ""
226+
storage_account_name: your_account_name
227+
storage_access_key: <%= Rails.application.credentials.dig(:azure_storage, :storage_access_key) %>
228+
container: your_container_name-<%= Rails.env %>
225229
```
226230

227231
Add the [`azure-storage-blob`](https://github.com/Azure/azure-storage-ruby) gem to your `Gemfile`:
@@ -239,12 +243,13 @@ google:
239243
service: GCS
240244
credentials: <%= Rails.root.join("path/to/keyfile.json") %>
241245
project: ""
242-
bucket: ""
246+
bucket: your_own_bucket-<%= Rails.env %>
243247
```
244248

245249
Optionally provide a Hash of credentials instead of a keyfile path:
246250

247251
```yaml
252+
# Use bin/rails credentials:edit to set the GCS secrets (as gcs:private_key_id|private_key)
248253
google:
249254
service: GCS
250255
credentials:
@@ -259,7 +264,7 @@ google:
259264
auth_provider_x509_cert_url: "https://www.googleapis.com/oauth2/v1/certs"
260265
client_x509_cert_url: ""
261266
project: ""
262-
bucket: ""
267+
bucket: your_own_bucket-<%= Rails.env %>
263268
```
264269

265270
Optionally provide a Cache-Control metadata to set on uploaded assets:
@@ -314,19 +319,20 @@ Define each of the services you'd like to mirror as described above. Reference
314319
them by name when defining a mirror service:
315320

316321
```yaml
322+
# Use bin/rails credentials:edit to set the AWS secrets (as aws:access_key_id|secret_access_key)
317323
s3_west_coast:
318324
service: S3
319-
access_key_id: ""
320-
secret_access_key: ""
321-
region: ""
322-
bucket: ""
325+
access_key_id: <%= Rails.application.credentials.dig(:aws, :access_key_id) %>
326+
secret_access_key: <%= Rails.application.credentials.dig(:aws, :secret_access_key) %>
327+
region: "" # e.g. 'us-west-1'
328+
bucket: your_own_bucket-<%= Rails.env %>
323329
324330
s3_east_coast:
325331
service: S3
326-
access_key_id: ""
327-
secret_access_key: ""
328-
region: ""
329-
bucket: ""
332+
access_key_id: <%= Rails.application.credentials.dig(:aws, :access_key_id) %>
333+
secret_access_key: <%= Rails.application.credentials.dig(:aws, :secret_access_key) %>
334+
region: "" # e.g. 'us-east-1'
335+
bucket: your_own_bucket-<%= Rails.env %>
330336
331337
production:
332338
service: Mirror
@@ -354,12 +360,12 @@ gcs: &gcs
354360
private_gcs:
355361
<<: *gcs
356362
credentials: <%= Rails.root.join("path/to/private_key.json") %>
357-
bucket: ""
363+
bucket: your_own_bucket-<%= Rails.env %>
358364
359365
public_gcs:
360366
<<: *gcs
361367
credentials: <%= Rails.root.join("path/to/public_key.json") %>
362-
bucket: ""
368+
bucket: your_own_bucket-<%= Rails.env %>
363369
public: true
364370
```
365371

0 commit comments

Comments
 (0)