Cześć,
Skończyłem niedawno czytać Rails Tutorial Hartl’a (3 edycja), ale mam mały problem, który nie daje mi spokoju.
Nie wiem co robię nie tak ale nie mogę poradzić sobie z konfiguracją bucketa na S3[1].
Z tego co wyczytałem w książce i dokumentacji AWS’a do tej pory to powinienem kolejno:
- Założyć konto na AWS
- Stworzyć grupę i podpiąć jej jakąś sensowną politykę, która da tej grupie dostęp Read/Write m.in. do pisania do kubełków na S3.
- Stworzyć użytkownika testowego, zapisać sobie jego access key id, secret access key, oraz podpiąć go do stworzonej w poprzednim punkcie grupy.
- Stworzyć kubełek, zapisać sobie region id i w zakładce Permissions > ACL przypiąć użytkownika w sekcji Access for other AWS accounts.
- Wprowadzić credentiale usera w konsoli na Heroku lub via CLI jako zmienne środowiskowe.
- Cieszyć się działającym uploadem w mojej aplikacji (po uprzednim skonfigurowaniu gema CarrierWave.
W praktyce jednak nie mogę przebrnąć przez punkt 4. Przy próbie podpięcia użytkownika w kółko dostaję komunikat “Invalid id”, pomimo, że próbowałem już różnych sposobów (user name, dwunastocyfrowy id, pełny arn). Skończyły mi mi się pomysły i nie wiem co dalej więc proszę o pomoc lub wskazanie właściwej drogi, może po prostu coś robię nie tak…
Przy okazji pytanie, czy znacie inny (tańszy, lepszy) sposób na hostowanie contentu wrzucanego do aplikacji przez usera, żeby np. mógł sam wrzucać zdjęcia do galerii? Chciałbym wykorzystać taki mechanizm w prostej stronce, którą piszę dla znajomego na boku po godzinach. Jedyne alternatywne rozwiązanie jakie mi przychodzi do głowy to wykupienie jakiegoś statycznego hostingu z dostępem po FTP, podpięcie jakiegoś gema do ftp w aplikacji i oprogramowanie sobie takiego uploadu na ten ftp.
[1] http://3rd-edition.railstutorial.org/book/user_microposts#sec-image_upload_in_production