# Migrar para S3 para problemas com Digital Ocean Spaces

**URL:** <https://meta.discourse.org/t/migrate-to-s3-for-digital-ocean-spaces-woes/109662>\
**Category:** Self-hosting\
**Tags:** s3\
**Created:** [Fevereiro 20, 2019, 3:54pm UTC](https://meta.discourse.org/t/migrate-to-s3-for-digital-ocean-spaces-woes/109662 "2019-02-20T15:54:27Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)\
**Post date:** [Fevereiro 20, 2019, 3:54pm UTC](https://meta.discourse.org/t/migrate-to-s3-for-digital-ocean-spaces-woes/109662/1 "2019-02-20T15:54:27Z")

</div>

Continuando a discussão de [`rake uploads:migrate_to_s3` precisa de um pouco de ajuda](https://meta.discourse.org/t/rake-uploads-migrate-to-s3-needs-some-love/109497/4):

Ainda não consigo fazer `migrate_to_s3` funcionar com o Digital Ocean Spaces.

```plaintext
root@shadrach-rbx8888:/var/www/discourse# rails c
[1] pry(main)> GlobalSetting.use_s3
=> true
[2] pry(main)> GlobalSetting.use_s3?
=> false
[3] pry(main)> 
root@shadrach-rbx8888:/var/www/discourse# rake uploads:migrate_to_s3
Migrando uploads para S3 para 'default'...
Por favor, forneça as seguintes variáveis de ambiente
  - DISCOURSE_S3_BUCKET
  - DISCOURSE_S3_REGION
  - DISCOURSE_S3_ACCESS_KEY_ID
  - DISCOURSE_S3_SECRET_ACCESS_KEY
root@shadrach-rbx8888:/var/www/discourse# echo $DISCOURSE_S3_BUCKET
lc-rbx
root@shadrach-rbx8888:/var/www/discourse# echo $DISCOURSE_S3_REGION
none
root@shadrach-rbx8888:/var/www/discourse# echo $DISCOURSE_S3_ACCESS_KEY_ID
5-some-other-lettersH
root@shadrach-rbx8888:/var/www/discourse# echo $DISCOURSE_S3_SECRET_ACCESS_KEY
E-some-other-letters-M
root@shadrach-rbx8888:/var/www/discourse# 

```

Mas é aqui que estou realmente confuso. O arquivo `uploads.rb` mais recente ativa o `Aws::S3` com apenas algumas variáveis de ambiente (e não aquelas necessárias para o Digital Ocean Spaces).

> <https://github.com/discourse/discourse/blob/main/lib/tasks/uploads.rake#L249-L252>

Mas [no blame](https://github.com/discourse/discourse/blame/60790eb006eeaf288740bbfc3cc6eaa602179c13/lib/tasks/uploads.rake#L248), na linha 248, vejo:

```
 s3 = Aws::S3::Client.new(S3Helper.s3_options(GlobalSetting))

```

Não entendo por que um commit de 2 meses atrás não está aparecendo em `tests-passed`. Estou em `04a63cfaaa445f66c2d3d5309191abe9d36c2371` e meu `uploads.rb` ainda tem as variáveis de ambiente em vez do `GlobalSetting` que vejo no blame.

Também não consigo dizer exatamente como a chamada `S3Helper.s3_options(GlobalSetting)` pode funcionar quando `s3_upload_bucket` não é uma configuração global. Deve haver alguma mágica em `s3_helper.rb` que eu não entendo e que de alguma forma encontra o bucket `s3_upload`, já que vejo que novos uploads estão indo para S3/spaces.

---

_[View the full topic](https://meta.discourse.org/t/migrate-to-s3-for-digital-ocean-spaces-woes/109662)._
