ruby-on-rails amazon-s3 asset-pipeline cdn fog

ruby on rails - ¿Por qué `` activos de rake: precompilación` throwing '''' getaddrinfo: nombre o servicio no conocido ''''?(re: asset_sync)



ruby-on-rails amazon-s3 (1)

Estoy intentando configurar mi aplicación de rieles para subir sus activos a AWS S3 de Amazon usando la gema asset_sync , siguiendo estas instrucciones . Sé que he configurado correctamente mi S3 porque mi aplicación puede cargar imágenes en S3. Estoy bastante seguro de que tengo todas las configuraciones correctas:

FOG_DIRECTORY => mybucketname FOG_PROVIDER => AWS FOG_REGION => s3-us-west-2

Sin embargo, sigo recibiendo un error:

-bash> heroku run rake assets:precompile --remote staging Running rake assets:precompile attached to terminal... up, run.1 AssetSync: using default configuration from built-in initializer mkdir -p /app/public/assets ... mkdir -p /app/public/assets AssetSync: Syncing. rake aborted! getaddrinfo: Name or service not known # <-- error

La compilación local produce un error ligeramente diferente:

-bash> bundle exec rake assets:precompile AssetSync: using default configuration from built-in initializer mkdir -p /Users/bart/Dev/MyApp/myapp/public/assets ... mkdir -p /Users/bart/Dev/MyApp/myapp/public/assets AssetSync: Syncing. rake aborted! getaddrinfo: nodename nor servname provided, or not known # <-- error


Seguí el error hasta una línea de ''conexión'' en Fog , una de las dependencias de tiempo de ejecución de asset_sync , y resulta que mi FOG_REGION se estableció incorrectamente . En mi caso, la región debería haber sido us-west-2 , no s3-us-west-2 .

Ha pasado un tiempo desde que configuré mi cuenta S3, así que primero traté de determinar qué región estaba usando iniciando sesión en la consola AWS S3, haciendo clic en el nombre del depósito y luego haciendo clic en "Propiedades". Allí, la región aparece como Oregon . Bueno, eso no funcionó. Entonces hice clic en el buscador de objetos y carpetas de uno de mis cubos existentes hasta que llegué a un activo, busqué sus "Propiedades" y vi el "Enlace":

https: // s3-us-west-2 .amazonaws.com / mybucketname / uploads / mymodel / image / 1135 / myimage.jpg

Estaba convencido de que s3-us-west-2 era correcto hasta que noté que Fog agrega el prefijo s3- .

De todos modos, ahora sé que una vez que averigua su región por su nombre (por ejemplo, Oregon), puede buscarla en esta lista de regiones S3 (es el nombre debajo de la columna Restricción de ubicación ).

Espero que esto ayude a alguien.